Um, no smp --> no free race anyway. But try the following instead, to
start narrowing down the possibilities:
--- ./vmscan.c 2002-09-02 21:15:17.000000000 +0200
+++ mm/vmscan.c 2002-09-02 21:33:24.000000000 +0200
@@ -82,7 +82,7 @@
*/
if (PageSwapCache(page)) {
entry.val = page->index;
- swap_duplicate(entry);
+ BUG_ON(!swap_duplicate(entry));
set_swap_pte:
set_pte(page_table, swp_entry_to_pte(entry));
drop_pte:
@@ -109,8 +109,10 @@
* Basically, this just makes it possible for us to do
* some real work in the future in "refill_inactive()".
*/
- if (page->mapping)
+ if (page->mapping) {
+ BUG_ON( page_count(page) == 1);
goto drop_pte;
+ }
if (!PageDirty(page))
goto drop_pte;
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/