block_write_full_page(): report ENOSPC
authorAndrew Morton <akpm@osdl.org>
Tue, 8 May 2007 07:23:27 +0000 (00:23 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Tue, 8 May 2007 18:14:57 +0000 (11:14 -0700)
block_write_full_page() forgot to propagate ENPSOC into the address_space.

Cc: Guillaume Chazarain <guichaz@yahoo.fr>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/buffer.c

index 7db24b9e54490b82f8201cda70d25afb6424d38a..3b226f7d96969d166aabbae758fa073c81d478ec 100644 (file)
@@ -1727,6 +1727,7 @@ recover:
        } while ((bh = bh->b_this_page) != head);
        SetPageError(page);
        BUG_ON(PageWriteback(page));
+       mapping_set_error(page->mapping, err);
        set_page_writeback(page);
        do {
                struct buffer_head *next = bh->b_this_page;