Messages in this thread | | | Date | Mon, 23 Apr 2018 09:13:11 +0200 | From | Pavel Machek <> | Subject | Re: DOS by unprivileged user |
| |
On Sun 2018-04-22 18:27:38, Michal Hocko wrote: > On Sun 22-04-18 10:43:00, vcaputo@pengaru.com wrote: > > On Sun, Apr 22, 2018 at 12:16:54PM +0200, Pavel Machek wrote: > > > On Thu 2018-04-19 21:13:35, Ferry Toth wrote: > > > > It appears any ordinary user can easily create a DOS on linux. > > > > > > > > One sure way to reproduce this is to open gitk on the linux kernel repo > > > > (SIC) on a machine with 8GB RAM 16 GB swap on a HDD with btrfs and quad core > > > > + hyperthreading. But I will be easy enough to get the same effect with more > > > > RAM, other fs etc. > > > > > > You may want to disable swap. > > > > > > > I run without swap on my laptops, and still observe long periods of > > thrashing on the road towards OOM. What seems to occur is the active > > file-backed mappings of executables/libraries become a sort of swap > > area, repeatedly being discarded and faulted back in as the context > > switches occur. > > > > If there's any good way to prevent this, I'd like to know. > > I am afraid there is none yet. Johannes had some ground work for > page cache trashing detection https://marc.info/?i=20170727153010.23347-1-hannes%40cmpxchg.org > but there was no version of the patchseries for quite some time and > there was no integration into the oom detection which would be > non-trivial as well. > > I realize this sucks. But the reality is that this is far from trivial > to resolve without introducing pre-mature OOM killer invocations.
Another problem is that what "unusable machine" in X/web browser situation may be normal load for build server...
I guess one way would be "hey, this is my X server; if it is waiting for disk for more than 10 seconds, you probably want to OOM kill someone. Ouch and same goes for my window manager".
Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html [unhandled content-type:application/pgp-signature] | |