From 84ba0f45c2e306df8bcf1c1b0b86cb01852b6efb Mon Sep 17 00:00:00 2001 From: Miklos Szeredi Date: Sun, 18 Jul 2004 11:32:59 +0000 Subject: [PATCH] fix --- ChangeLog | 4 ++++ kernel/file.c | 14 +++++++++----- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index dc31a70..12a1a25 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2004-07-18 Miklos Szeredi + + * Only use redirty_page_for_writepage() for kernels >= 2.6.6 + 2004-07-16 Miklos Szeredi * Separate directory entry and inode attribute validity timer diff --git a/kernel/file.c b/kernel/file.c index 2a6fb4b..a82c326 100644 --- a/kernel/file.c +++ b/kernel/file.c @@ -610,7 +610,11 @@ static int fuse_writepage(struct page *page, struct writeback_control *wbc) if (wbc->nonblocking) { err = write_page_nonblock(inode, page); if (err == -EWOULDBLOCK) { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,6) redirty_page_for_writepage(wbc, page); +#else + __set_page_dirty_nobuffers(page); +#endif err = 0; } } else @@ -753,12 +757,12 @@ static struct file_operations fuse_file_operations = { }; static struct address_space_operations fuse_file_aops = { - .readpage = fuse_readpage, - .writepage = fuse_writepage, - .prepare_write = fuse_prepare_write, - .commit_write = fuse_commit_write, + .readpage = fuse_readpage, + .writepage = fuse_writepage, + .prepare_write = fuse_prepare_write, + .commit_write = fuse_commit_write, #ifdef KERNEL_2_6 - .set_page_dirty = __set_page_dirty_nobuffers, + .set_page_dirty = __set_page_dirty_nobuffers, #endif }; -- 2.30.2