Commit c8b254cc authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] fix ext3 in data=writeback mode

When I converted ext3 to use to use direct-to-BIO writeback for
data=writeback mode I forgot that we need to hold a transaction open on
behalf of MAP_SHARED pages.  The fileystem is BUGging in get_block()
because there is no transaction open.

So let's forget that idea for now and send data=writeback mode back to
ext3_writepage.
parent f5076217
...@@ -1473,7 +1473,7 @@ struct address_space_operations ext3_aops = { ...@@ -1473,7 +1473,7 @@ struct address_space_operations ext3_aops = {
}; };
/* For writeback mode, we can use mpage_writepages() */ /* For writeback mode, we can use mpage_writepages() */
#if 0 /* Doesn't work for shared mappings */
static int static int
ext3_writepages(struct address_space *mapping, struct writeback_control *wbc) ext3_writepages(struct address_space *mapping, struct writeback_control *wbc)
{ {
...@@ -1486,12 +1486,12 @@ ext3_writepages(struct address_space *mapping, struct writeback_control *wbc) ...@@ -1486,12 +1486,12 @@ ext3_writepages(struct address_space *mapping, struct writeback_control *wbc)
ret = err; ret = err;
return ret; return ret;
} }
#endif
struct address_space_operations ext3_writeback_aops = { struct address_space_operations ext3_writeback_aops = {
.readpage = ext3_readpage, /* BKL not held. Don't need */ .readpage = ext3_readpage, /* BKL not held. Don't need */
.readpages = ext3_readpages, /* BKL not held. Don't need */ .readpages = ext3_readpages, /* BKL not held. Don't need */
.writepage = ext3_writepage, /* BKL not held. We take it */ .writepage = ext3_writepage, /* BKL not held. We take it */
.writepages = ext3_writepages, /* BKL not held. Don't need */
.sync_page = block_sync_page, .sync_page = block_sync_page,
.prepare_write = ext3_prepare_write, /* BKL not held. We take it */ .prepare_write = ext3_prepare_write, /* BKL not held. We take it */
.commit_write = ext3_commit_write, /* BKL not held. We take it */ .commit_write = ext3_commit_write, /* BKL not held. We take it */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment