Messages in this thread | | | Subject | Re: scheduler went mad? | Date | Thu, 12 Apr 2001 16:12:55 +0100 (BST) | From | Alan Cox <> |
| |
> I've seen the same scenario about 2-3 times a week. kswapd and one or > more processes all CPU bound, totalling to 100%. I've had 'esdplay' hung > on several occasions, and 2-3 times it's been xscreensaver (3.29) hung. > The 'hung' processes are consistently immune to kill -9, even as root, which > indicates to me that they're hung inside a kernel call or something.
Do you have > 800Mb of RAM ?
> In page_alloc.c, __alloc_pages() has a 'goto try_again;' which will > cause it to loop around and try to get more memory. I'm wondering if
Even outside of that certain drivers also loop on alloc failures as does TCP.
> would explain the high context-switch rate. I'm not clear on how kswapd > can end up getting stuck and failing to free up something - unless it ends > up calling __alloc_pages itself indirectly and the PF_MEMALLOC bit isn't > enough to get it the memory it needs, causing a deadlock/loop between > kswapd and __alloc_pages/wakeup_kswapd().
bounce buffers for one
- 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/
| |