From: Nikita Danilov <nikita@clusterfs.com>

When ->writepage() returns WRITEPAGE_ACTIVATE, the page is still locked. 
Explicitly unlock the page in mpage_writepages().

Signed-off-by: Nikita Danilov <nikita@clusterfs.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 fs/mpage.c |    2 ++
 1 files changed, 2 insertions(+)

diff -puN fs/mpage.c~mpage_writepages-page-locking-fix fs/mpage.c
--- 25/fs/mpage.c~mpage_writepages-page-locking-fix	Wed Apr 27 16:53:15 2005
+++ 25-akpm/fs/mpage.c	Wed Apr 27 16:53:15 2005
@@ -727,6 +727,8 @@ retry:
 						&last_block_in_bio, &ret, wbc,
 						writepage_fn);
 			}
+			if (unlikely(ret == WRITEPAGE_ACTIVATE))
+				unlock_page(page);
 			if (ret || (--(wbc->nr_to_write) <= 0))
 				done = 1;
 			if (wbc->nonblocking && bdi_write_congested(bdi)) {
_