Applied: [PATCH 0/2][Oneiric][Precise][Quantal][SRU] Fix regression caused by commit 821f749
Leann Ogasawara
leann.ogasawara at canonical.com
Mon Sep 17 14:49:46 UTC 2012
Ack'd and applied to master-next for Quantal, Precise, and Oneiric.
Note, I made a small tweak to the commit message for patch 2/2 to add
the missing "Signed-off-by:" prefix for Colin.
Thanks,
Leann
On 09/15/2012 12:09 PM, Colin King wrote:
> From: Colin Ian King <colin.king at canonical.com>
>
> BugLink: https://launchpad.net/bugs/1047261
>
> SRU for Oneiric and Precise, and please apply to Quantal too.
>
> == SRU Justification ==
>
> == Impact ==
>
> A regression was caused by commit:
>
> 821f749 eCryptfs: Revert to a writethrough cache model
>
> That patch reverted some code (specifically, 32001d6f) that was
> necessary to properly handle open() -> mmap() -> close() -> dirty pages
> -> munmap(), because the lower file could be closed before the dirty
> pages are written out.
>
> This revert unfortunately causes errors:
>
> ecryptfs_encrypt_page: Error attempting to write lower page
>
> == Fix ==
>
> Apply commits 7149f2558d5b5b988726662fe58b1c388337805b and
> 64e6651dcc10e9d2cc6230208a8e6c2cfd19ae18.
>
> == Test Case ==
>
> Can be tested on various file systems using the ecryptfs tests (from
> lp:ecryptfs).
>
> sudo mkdir /tmp/image /lower /upper
> sudo ./tests/run_tests.sh -K -c safe -b 1000000 -D /tmp/image \
> -l /lower -u /upper -f ext2,ext3,ext4,xfs,btrfs -t mmap-close.sh
>
> Without the fix, this fails, with the fix it passes.
>
>
> Tyler Hicks (2):
> eCryptfs: Write out all dirty pages just before releasing the lower
> file
> eCryptfs: Call lower ->flush() from ecryptfs_flush()
>
> fs/ecryptfs/file.c | 10 ++++++++--
> fs/ecryptfs/main.c | 1 +
> 2 files changed, 9 insertions(+), 2 deletions(-)
>
More information about the kernel-team
mailing list