On 2018/4/19 2:09, Eric Biggers via Linux-f2fs-devel wrote: > Currently f2fs's ->readpage() and ->readpages() assume that either the > data undergoes no postprocessing, or decryption only. But with > fs-verity, there will be an additional authenticity verification step, > and it may be needed either by itself, or combined with decryption. > > To support this, store a 'struct bio_post_read_ctx' in ->bi_private > which contains a work struct, a bitmask of postprocessing steps that are > enabled, and an indicator of the current step. The bio completion > routine, if there was no I/O error, enqueues the first postprocessing > step. When that completes, it continues to the next step. Pages that > fail any postprocessing step have PageError set. Once all steps have > completed, pages without PageError set are set Uptodate, and all pages > are unlocked. > > Also replace f2fs_encrypted_file() with a new function > f2fs_post_read_required() in places like direct I/O and garbage > collection that really should be testing whether the file needs special > I/O processing, not whether it is encrypted specifically. > > This may also be useful for other future f2fs features such as > compression. > > Signed-off-by: Eric Biggers <ebiggers@xxxxxxxxxx> Reviewed-by: Chao Yu <yuchao0@xxxxxxxxxx> Thanks, -- To unsubscribe from this list: send the line "unsubscribe linux-fscrypt" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html