[patch] mm: vmscan fix mapping use after free

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Nick Piggin
Date: Monday, June 14, 2010 - 10:43 pm

On Tue, Jun 15, 2010 at 03:12:42PM +1000, Nick Piggin wrote:
--

Need lock_page_nosync here because we have no reference to the mapping when
taking the page lock.

Signed-off-by: Nick Piggin <npiggin@suse.de>

---
 mm/vmscan.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux-2.6/mm/vmscan.c
===================================================================
--- linux-2.6.orig/mm/vmscan.c
+++ linux-2.6/mm/vmscan.c
@@ -296,7 +296,7 @@ static int may_write_to_queue(struct bac
 static void handle_write_error(struct address_space *mapping,
 				struct page *page, int error)
 {
-	lock_page(page);
+	lock_page_nosync(page);
 	if (page_mapping(page) == mapping)
 		mapping_set_error(mapping, error);
 	unlock_page(page);
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH 05/12] vmscan: kill prev_priority completely, Mel Gorman, (Mon Jun 14, 4:17 am)
[PATCH 11/12] vmscan: Write out dirty pages in batch, Mel Gorman, (Mon Jun 14, 4:17 am)
Re: [PATCH 0/12] Avoid overflowing of stack during page re ..., Christoph Hellwig, (Mon Jun 14, 8:10 am)
Re: [PATCH 05/12] vmscan: kill prev_priority completely, Rik van Riel, (Mon Jun 14, 11:04 am)
Re: [PATCH 06/12] vmscan: simplify shrink_inactive_list(), Rik van Riel, (Mon Jun 14, 11:06 am)
Re: [PATCH 11/12] vmscan: Write out dirty pages in batch, Andrew Morton, (Mon Jun 14, 4:21 pm)
Re: [PATCH 0/12] Avoid overflowing of stack during page re ..., KAMEZAWA Hiroyuki, (Mon Jun 14, 5:08 pm)
Re: [PATCH 11/12] vmscan: Write out dirty pages in batch, Andrew Morton, (Mon Jun 14, 6:39 pm)
Re: [PATCH 11/12] vmscan: Write out dirty pages in batch, Andrew Morton, (Mon Jun 14, 6:45 pm)
Re: [PATCH 11/12] vmscan: Write out dirty pages in batch, Andrew Morton, (Mon Jun 14, 9:15 pm)
Re: [PATCH 11/12] vmscan: Write out dirty pages in batch, Andrew Morton, (Mon Jun 14, 9:37 pm)
[patch] mm: vmscan fix mapping use after free, Nick Piggin, (Mon Jun 14, 10:43 pm)
Re: [PATCH 11/12] vmscan: Write out dirty pages in batch, Dave Chinner, (Mon Jun 14, 11:36 pm)
Re: [PATCH 08/12] vmscan: Setup pagevec as late as possibl ..., Christoph Hellwig, (Tue Jun 15, 3:47 am)
Re: [PATCH 11/12] vmscan: Write out dirty pages in batch, Christoph Hellwig, (Tue Jun 15, 3:53 am)
Re: [PATCH 11/12] vmscan: Write out dirty pages in batch, Christoph Hellwig, (Tue Jun 15, 3:57 am)
Re: [PATCH 11/12] vmscan: Write out dirty pages in batch, Christoph Hellwig, (Tue Jun 15, 4:01 am)
Re: [PATCH 11/12] vmscan: Write out dirty pages in batch, Christoph Hellwig, (Tue Jun 15, 4:08 am)
Re: [PATCH 11/12] vmscan: Write out dirty pages in batch, Christoph Hellwig, (Tue Jun 15, 4:10 am)
Re: [patch] mm: vmscan fix mapping use after free, Mel Gorman, (Tue Jun 15, 6:23 am)
Re: [PATCH 05/12] vmscan: kill prev_priority completely, Andrew Morton, (Wed Jun 16, 4:37 pm)
Re: [PATCH 05/12] vmscan: kill prev_priority completely, Rik van Riel, (Wed Jun 16, 4:45 pm)
Re: [PATCH 05/12] vmscan: kill prev_priority completely, Andrew Morton, (Wed Jun 16, 5:18 pm)
Re: [PATCH 05/12] vmscan: kill prev_priority completely, Rik van Riel, (Wed Jun 16, 5:34 pm)
Re: [PATCH 05/12] vmscan: kill prev_priority completely, KOSAKI Motohiro, (Fri Jun 25, 1:29 am)