[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.LRH.2.02.1511071021100.18330@file01.intranet.prod.int.rdu2.redhat.com>
Date: Sat, 7 Nov 2015 10:29:05 -0500 (EST)
From: Mikulas Patocka <mpatocka@...hat.com>
To: Sami Tolvanen <samitolvanen@...gle.com>
cc: device-mapper development <dm-devel@...hat.com>,
Will Drewry <wad@...omium.org>,
Kees Cook <keescook@...omium.org>,
Mike Snitzer <snitzer@...hat.com>,
Mandeep Baines <msb@...omium.org>,
linux-kernel@...r.kernel.org, Mark Salyzyn <salyzyn@...gle.com>
Subject: Re: [dm-devel] [PATCH 0/4] dm verity: add support for error
correction
On Fri, 6 Nov 2015, Sami Tolvanen wrote:
> On Fri, Nov 06, 2015 at 10:05:24PM +0100, Zdenek Kabelac wrote:
> > So how do you want to correctly 'restore' missing full sectors
> > with just 0.8% data overhead ??
>
> We use interleaving. Each byte in a 4k block is part of a different
> Reed-Solomon block, which means an entire lost 4k data block looks like a
> single error. When we also spread the bytes that form a single Reed-Solomon
> block across the partition, we end up being able to correct several
> megabytes of consecutive corrupted blocks with very small space overhead.
>
> Sami
But the patch doesn't do any correction in case of I/O error - it just
returns the bio with I/O error.
BTW. the function verity_fec_alloc_buffers does vzalloc and GFP_KERNEL
kmalloc inside I/O handling code - that shouldn't be done - you should
preallocate the data structures when the device is loaded.
Mikulas
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists