lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20130220224954.GE23856@xo-6d-61-c0.localdomain>
Date:	Wed, 20 Feb 2013 23:49:54 +0100
From:	Pavel Machek <pavel@....cz>
To:	"Eric W. Biederman" <ebiederm@...ssion.com>
Cc:	Alan Stern <stern@...land.harvard.edu>, Li Fei <fei.li@...el.com>,
	rjw@...k.pl, len.brown@...el.com, mingo@...hat.com,
	peterz@...radead.org, akpm@...ux-foundation.org,
	viro@...iv.linux.org.uk, gorcunov@...nvz.org, rientjes@...gle.com,
	linux-kernel@...r.kernel.org, linux-pm@...r.kernel.org,
	chuansheng.liu@...el.com, biao.wang@...el.com
Subject: Re: [PATCH] freezer: configure user space process frozen along with
 kernel threads

On Wed 2013-02-20 13:36:19, Eric W. Biederman wrote:
> Alan Stern <stern@...land.harvard.edu> writes:
> 
> > On Wed, 20 Feb 2013, Eric W. Biederman wrote:
> >
> >> >> Why can't the fuse filesystem freeze when there are requests pending?
> >> >
> >> > It _can_ freeze (that is, the fuse daemon can).  The problem is that
> >> > tasks _using_ the fuse filsystem can't if the daemon doesn't respond. 
> >> 
> >> Which is what I meant when I said that the fuse filesystem couldn't
> >> freeze.
> >
> > Oh, okay.  But it's no different from any other filesystem in that
> > respect.  Processes generally can't be frozen while they are waiting
> > for filesystem I/O to complete.  In many cases they can't receive 
> > signals either (they are in an uninterruptible wait state).
> 
> Ick.  So the process freezer and all network filesystems has problems?
> Especially nfs?

NFS was modified to react to kill -9 even with server dead.. and we used
same stuff.

How does it interact with mmap() I'm not actually sure. Miklos' arguments
say that can not work...

> > Processes can be frozen only by making explicit checks, and they 
> > mustn't be frozen while they are holding locks that would prevent other 
> > processes from reaching one of those checks.
> >
> >> At most I would suggest that processes be frozen in reverse priority
> >> order.  Which unless there is a priority inversion should solve this
> >> problem without an additional proc file.
> >
> > Do fuse daemons (and the processes they rely upon) run with elevated 
> > priority?
> 
> I don't know if the daemons are of an elevated scheduling priority today
> but if they aren't it is as easy to require an elevated scheduling
> priority as it is to require a magic freezer priority.  Furthermore if
> they don't run at an elevated priority there is the possibility of
> priority inversion.

I'm pretty sure we have priority inversion problems all over... but noone
really cares (as linux is not realtime and priorities are mostly not used).
But freezer turns bad scheduling into deadlocks...
									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ