--- fs/libfs.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) Index: linux-2.6/fs/libfs.c =================================================================== --- linux-2.6.orig/fs/libfs.c 2007-08-28 14:37:58.000000000 -0700 +++ linux-2.6/fs/libfs.c 2007-08-28 14:38:30.000000000 -0700 @@ -341,10 +341,10 @@ int simple_prepare_write(struct file *fi unsigned from, unsigned to) { if (!PageUptodate(page)) { - if (to - from != page_cache_size(file->f_mapping)) + if (to - from != compound_size(page)) zero_user_segments(page, 0, from, - to, page_cache_size(file->f_mapping)); + to, compound_size(page)); } return 0; }