Re: [dm-devel] [PATCH] deadlock with suspend and quotas

From: Mikulas Patocka
Date: Wed Nov 30 2011 - 12:03:45 EST


> The sync only needs to block on a particular fs if there is data to flush.
>
> A sync that originated in a way that can only be independent of any
> application that is changing the fs may skip that fs if it is frozen.
>
> It's the user's responsibility only to freeze filesystems for very brief
> periods of time if they are still being changed.

The problem is that the process that is freezing filesystem (lvm) is
totally independent on the process that is writing data to the filesystem
and syncing it.

For example, you have a transactional database running in userspace and
that database is writing and syncing and you take a snapshot at the same
time. --- so you cannot make these two processes cooperate in any way. You
can't tell to the database server "please don't write now, I am suspending
to make a snapshot". The database server still writes and still assumes
that sync() commits to permanent storage, regardless on what is going on
in lvm.

Mikulas

> ?
>
> Alasdair
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/