Re: dm-verity design question
Milan Broz <[email protected]>
| Newsgroups | dev.linux.lists.cryptsetup |
|---|---|
| Message-ID | <[email protected]> |
Hi Jasper, if it is question about kernel code, the best is to ask on [email protected] list (you can cc cryptsetup list too). Not all device-mapper kernel developers are here (dm-devel is official list for kernel device-mapper subsystem; this one mainly for userspace cryptsetup tools). Milan On 12/04/2022 11:38, Jasper Surmont wrote: > Hey, > > After going through the dm-verity source code for a while I think I > kind of figured out the general design; on a read: > 1. Multiple possible problems get checked like alignment, out of range > etc. Also variables get set based on the request > 2. The request is prefetched to the cache > 3. The actual integrity check is done when the bio ends (bi_end_io > points to verity_end_io which submits the work to verify digest etc > > If this is correct, I have 2 questions: > 1. What is the main benefit of prefetching here? We know the remapped > request is going to be executed very soon, so I don't really see why > we prefetch. > 2. In verity_end_io(...), we only submit the work to verify the digest > if FEC is enabled. Why? Can't we check integrity without using FEC? > > I hope my questions are clear. > > Thanks a lot! > > Sincerely, Jasper Surmont >