move slab pages to the lru, for 2.5.27
Hi,
This patch fixes the SMP problems for Steve. It was a thinko I put in to check things... In SMP it was just plain broken. Patch is against 2.4.26 with Craig's patches but works on 2.5.27 and 2.4.x too. My bk tree with slablru based on linux-2.4-rmap at casa.dyndns.org:3334 has also been updated.
Thanks,
Ed Tomlinson
# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher. # This patch includes the following deltas:
# ChangeSet 1.430 -> 1.431 # mm/slab.c 1.23 -> 1.24
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 02/07/24 [email protected] 1.431
# Prevent false out of memory reporting in SMP
# --------------------------------------------
#
mm/slab.c +0 -2
@@ -1309,8 +1309,6 @@#else locked = !in_interrupt () &&spin_trylock (&pagemap_lru_lock);#endif -if (!locked && !in_interrupt ()) - goto opps1; }/* Get slab management. */
Quoted 1 line · Ed Tomlinson
This patch fixes the SMP problems for Steve.
Good sleuthing! Glad to hear this seems to solve the bizarre SMP out-of-memory problems. However, you should know that there *might* still be demons lurking about.
I still have problems with 2.5.27-rmap-slablru with CONFIG_SMP booting on a UP laptop, when 2.5.27-rmap (the big rmap patch) works fine in SMP mode. I have spinlock debugging turned on and get oopses with modprobe trying to load the rtc module. It fails this test in include/asm/spinlock.h:
#ifdef CONFIG_DEBUG_SPINLOCK
if (lock->magic != SPINLOCK_MAGIC)
BUG();Modprobe also traps itself in infinite loops trying to load unix.o for net-pf-1. Eeeks. I'll test on other UP boxes in SMP mode and see if I can trigger anything.
For now, I've applied Ed's patch and tested that it doesn't cause any problems for UP behavior, so I added it to the patch queue against 2.5.27 and is included in the rmap patches for 2.5.28, which you can download:
http://loke.as.arizona.edu/~ckulesa/kernel/rmap-vm/2.5.28/
The only new change for 2.5.28 is fixing software suspend to work with the full rmap patch. I tested swsusp with 2.5.28-rmap-slablru, and it's very cool. :)
Although I suspect SMP folks will have their hands busy with *other* things in 2.5.28, (!!) more SMP feedback regarding slab-on-LRU would be most helpful!
Thanks,
Craig Kulesa
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to [email protected]. For more info on Linux MM,
see: http://www.linux-mm.org/