diff options
author | Mel Gorman <mgorman@suse.de> | 2011-10-31 20:07:48 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-10-31 20:30:46 -0400 |
commit | 966dbde2c208e07bab7a45a7855e1e693eabe661 (patch) | |
tree | 4d1687ad52be80141d90a5bc3c5c6de64d9bad24 /fs | |
parent | 94054fa3fca1fd78db02cb3d68d5627120f0a1d4 (diff) |
ext4: warn if direct reclaim tries to writeback pages
Direct reclaim should never writeback pages. Warn if an attempt is made.
Signed-off-by: Mel Gorman <mgorman@suse.de>
Cc: Dave Chinner <david@fromorbit.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Johannes Weiner <jweiner@redhat.com>
Cc: Wu Fengguang <fengguang.wu@intel.com>
Cc: Jan Kara <jack@suse.cz>
Cc: Minchan Kim <minchan.kim@gmail.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Mel Gorman <mgorman@suse.de>
Cc: Alex Elder <aelder@sgi.com>
Cc: Theodore Ts'o <tytso@mit.edu>
Cc: Chris Mason <chris.mason@oracle.com>
Cc: Dave Hansen <dave@linux.vnet.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/ext4/inode.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index 986e2388f031..0defe0bfe019 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c | |||
@@ -1811,8 +1811,12 @@ static int ext4_writepage(struct page *page, | |||
1811 | * We don't want to do block allocation, so redirty | 1811 | * We don't want to do block allocation, so redirty |
1812 | * the page and return. We may reach here when we do | 1812 | * the page and return. We may reach here when we do |
1813 | * a journal commit via journal_submit_inode_data_buffers. | 1813 | * a journal commit via journal_submit_inode_data_buffers. |
1814 | * We can also reach here via shrink_page_list | 1814 | * We can also reach here via shrink_page_list but it |
1815 | * should never be for direct reclaim so warn if that | ||
1816 | * happens | ||
1815 | */ | 1817 | */ |
1818 | WARN_ON_ONCE((current->flags & (PF_MEMALLOC|PF_KSWAPD)) == | ||
1819 | PF_MEMALLOC); | ||
1816 | goto redirty_page; | 1820 | goto redirty_page; |
1817 | } | 1821 | } |
1818 | if (commit_write) | 1822 | if (commit_write) |