As pointed out by Christop Lameter it should not be possible for a page to change its active/inactive state without taking the lru_lock. Reinstate this safety net.
Signed-off-by: Andy Whitcroft <[EMAIL PROTECTED]> Acked-by: Mel Gorman <[EMAIL PROTECTED]> --- diff --git a/mm/vmscan.c b/mm/vmscan.c index bda63a0..d7a0860 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -691,10 +691,13 @@ static unsigned long isolate_lru_pages(unsigned long nr_to_scan, nr_taken++; break; - default: - /* page is being freed, or is a missmatch */ + case -EBUSY: + /* else it is being freed elsewhere */ list_move(&page->lru, src); continue; + + default: + BUG(); } if (!order) - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/