Comment 57 for bug 509180

Revision history for this message
Tyler Hicks (tyhicks) wrote :

On Wed Mar 16, 2011 at 12:19:04AM -0000, Roland Dreier <email address hidden> wrote:
> Does this latest patch address all the cases of signals interrupting
> ecryptfs operations? I don't know enough about ecryptfs to know whether
> this metadata problem is the only place the issue hits.

The latest patch allows userspace to handle any interrupted eCryptfs
operations. When we're trying to read from the lower filesystem,
vfs_read() sometimes returns with -EINTR, so we'll just propagate that
to userspace and let the app deal with it.

>
> I've started seeing problems where I get
>
> ecryptfs_decrypt_page: Error attempting to read lower page; rc = [-4]
> ecryptfs_write_begin: Error decrypting page at index [15315]; rc = [-4]
>
> in the kernel log, and then later tasks hang in sync_page called from
> truncate_inode_pages from ecryptfs_evict_inode.

That's another bug that I just stumbled across myself and will have
fixed in the 2.6.39-rc1 time frame. We're not unlocking the page in the
ecryptfs_write_begin() error path.