Re: [linux-pm] Re: [PATCH] Remove process freezer from suspend to RAM pathway

Miklos Szeredi
2007-07-05T20:47:17Z

> > Yes, fuse could handle being frozen there. However that would only
> > solve part of the problem: an operation waiting for a reply could be
> > holding a VFS mutex and some other task may be blocked on that mutex.
> >
> > How would you solve freezing those tasks?
>
> OK, you made me reach for literatur on theoretical computer science.
>
> IMHO the range of actions a fuse server is inherently limited.
> You must never ever block on a lock one of your clients is holding. In
> this case the limitation is not influenced by the freezer.

Obviously. But I wasn't about the server trying to acquire a lock
held by a client. I was talking about a client trying to acquire a
lock held by _another_ client.

If this coincides with the server (or some other task which the server
is depending on) being frozen before the clients, the freezer has a
problem.

> The freezer introduces a further limitation in that the server can freeze
> before the client, which must not be. You can prevent that by freezing
> the servers last.
>
> In principle you might have dependencies between servers and you won't
> catch that, true. You won't catch servers blocking on IPC, but you are
> balancing on the edge of deadlock with fuse anyway.

Huh?

Miklos