Trashing hell
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux-source-2.6.15 (Ubuntu) |
Invalid
|
Medium
|
Ben Collins |
Bug Description
Yesterday I clicked a torrent link in Epiphany which for some reason made one of
the desktop applications eat a lot of memory. So the machine suddenly froze and
started trashing. I waited about 10 minutes, then gave up, pressed the power
button and left. When I got back this morning the machine had left swap hell,
noticed the power button press and turned itself off.
This made me think that perhaps it would be a good idea to somehow fix the
kernel so that it kills a leaking application _before_ having spent more than 10
minutes with the desktop in a totally frozen state. IMHO freezing everything for
more than a few seconds does not make any sense on a desktop machine. It might
be enough to set the ulimit settings to something sensible.
I'm experiencing this on a fully upgraded Breezy Badger, the kernel seems to be
2.6.12-10-686.
No way for the kernel to tell if this is what you want or not. It will start
killing applications if the system runs out of memory. However, if you have
plenty of memory, what should it do? Start killing processes that are "too
busy"? I've put machines into this state on purpose. I wouldn't want the kernel
to start killing things. There's no danger in it, so why start randomly booting
processes?
This is a non-bug. Kernel didn't do anything wrong. If you want to control this
sort of things, start looking at process limits (the kernel respects them, but
you have to set them up per user or per process).