Re: [PATCH] freezer: configure user space process frozen along with kernel threads

Eric W. Biederman
2013-02-20T20:28:41Z

Alan Stern <stern@rowland.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.

> These tasks are stuck in uninterruptible wait states deep in the
> filesystem layer, probably holding important locks. They can't be
> frozen until the outstanding requests complete.

Why is it that processes that can be preempted can't be frozen?

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.

Adding a userspace interface that doesn't come close to doing the right
thing automatically and that is brittle and will likely fail in ways
even stranger and harder to track ways than fuse is failing today seems
like totally the wrong direction to go. Not adding any permission
checks to the proc files just compounds the problem.

Eric