On Sun, Jan 07, 2018 at 02:36:28PM +0000, Alan Cox wrote: > What I struggle to see is why I'd want to nominate specific processes for > this except in very special cases (like your packet generator). Even then > it would make me nervous as the packet generator if that trusted is > effectively CAP_SYS_RAWIO or close to it and can steal any ssh keys or > similar on that guest.
Sure but we can also say that a process with CAP_SYS_RAWIO can manipulate the hardware using iopl() and reprogram memory controllers, PCI bridges and various stuff to have direct access wherever it wants. That's why I thought that grouping the risks reduces the attack surface in the end. > I still prefer cgroups because once you include the branch predictions it > suddenly becomes very interesting to be able to say 'this pile of stuff > trusts itself' and avoid user/user protection costs while keeping > user/kernel. To be honnest, I don't know what it would imply in terms of management (for the admin). Also, I'm really focused on the extra work to add to syscalls, which should remain very minimalistic. Checking a flag on the current task sounds reasonable. I don't know how far we might have to go with cgroups. I remember a very long time ago you once todl me "we have fast syscalls", I'd like this statement to remain true for those who continue to rely on this property ;-) Willy

