On Mon, 24 Sep 2007 16:52:15 +0530 Balbir Singh <balbir@linux.vnet.ibm.com> wrote:--- mm/vmscan.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) Index: linux-2.6/mm/vmscan.c =================================================================== --- linux-2.6.orig/mm/vmscan.c +++ linux-2.6/mm/vmscan.c @@ -1527,8 +1527,10 @@ loop_again: * OK, kswapd is getting into trouble. Take a nap, then take * another pass across the zones. */ - if (total_scanned && priority < DEF_PRIORITY - 2) + if (total_scanned && priority < DEF_PRIORITY - 2) { + synchronize_rcu(); congestion_wait(WRITE, HZ/10); + } /* * We do this so kswapd doesn't build up large priorities for gfp_mask doesn't carry the needed information. It depends on whether the current context holds a rcu_read_lock(). so something like: rcu_read_lock() foo = kmalloc(sizeof(foo)) new_slab() __alloc_pages() try_to_free_pages() synchronise_rcu() <-- deadlock rcu_read_unlock() -
| Washington Odhiambo | Weird Problem with NAT - more details |
| Greg Kroah-Hartman | [PATCH 001/196] Chinese: Add the known_regression URI to the HOWTO |
| Tarkan Erimer | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| Andrew Morton | -mm merge plans for 2.6.23 |
git: | |
| Jarek Poplawski | [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| Gerrit Renker | [PATCH 0/37] dccp: Feature negotiation - last call for comments |
| David Miller | Re: [GIT]: Networking |
| Denys Fedoryshchenko | thousands of classes, e1000 TX unit hang |
