On Thu 20-10-16 20:32:43, Leon Yu wrote: > On Thu, Oct 20, 2016 at 1:17 AM, Michal Hocko <mho...@kernel.org> wrote: > > So here is my RFC as an alternative. Thoughts? Please note that we > > currently have only very few users of use_mm() API in the kernel > > so a risk of a regression is not really high. usb/gadget are using it > > only temporarily. The remaining is vhost which operates on a remote mm > > and I have no idea whether somebody might abuse /proc/vhost/mem or > > anything - let's add Michael to the CC list. I am pretty sure nobody > > abuse oom_reaper proc directory as this one is pretty new and such a > > usage would be pretty much undefined as the reaper unmaps the address > > space. > > With this patch I cannot tell the difference between a) the thread is > exiting and b) it's a kernel thread, > besides, getting "no such process" while the kthread does exist is a > bit confusing.
Do we really need to distinguish those two cases? In other words under which conditions something would fail when seeing a pid directory and ESRCH when opening a file? > IMO, reading /proc/<kthread_pid>/auxv and getting empty output are > quite straightforward, > it doesn't seem to be that "abusive". Then we need to teach all those implementations to check for kthread explicitly and return an empty output rather than relying on mm == NULL because that, as explained, might belong to some process. -- Michal Hocko SUSE Labs