2017-09-13 10:02:56

by Chandan Rajendra

[permalink] [raw]
Subject: Bio: Determining encrypted vs plain content

Hi,

I am trying to get encryption to work on block size < page size scenario
(e.g. 4k block size on ppc64's 64k page size).

One of the last scenarios that I am working on is to decrypt a page whose
blocks are not contiguously stored on the underlying disk.

The code assumes that bio's pages are supposed to be decrypted if
bio-b_private has a non-zero value (See the definition of
ext4_bio_encrypted()).

Instead of that, why can't the code extract the first page from the first bio
vector of the bio and then use ext4_encrypted_inode(page->mapping->host) to
determine if bio's pages are supposed to contain encrypted data? Was there a
specific reason to not use ext4_encrypted_inode()?

--
chandan