[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
[dm-devel] Re: [PATCH 2.6.19 5/5] fs: freeze_bdev with semaphore not mutex
- From: Alasdair G Kergon <agk redhat com>
- To: Pavel Machek <pavel ucw cz>
- Cc: Andrew Morton <akpm osdl org>, Eric Sandeen <sandeen redhat com>, Nigel Cunningham <nigel suspend2 net>, David Chinner <dgc sgi com>, linux-kernel vger kernel org, "Rafael J. Wysocki" <rjw sisk pl>, dm-devel redhat com, Srinivasa DS <srinivasa in ibm com>, Alasdair G Kergon <agk redhat com>
- Subject: [dm-devel] Re: [PATCH 2.6.19 5/5] fs: freeze_bdev with semaphore not mutex
- Date: Thu, 9 Nov 2006 23:24:38 +0000
On Fri, Nov 10, 2006 at 12:11:46AM +0100, Pavel Machek wrote:
> ? Not sure if I quite understand, but if dm breaks sync... something
> is teribly wrong with dm. And we do simple sys_sync()... so I do not
> think we have a problem.
If you want to handle arbitrary kernel state, you might have a device-mapper
device somewhere lower down the stack of devices that is queueing any I/O
that reaches it. So anything waiting for I/O completion will wait until
the dm process that suspended that device has finished whatever it is doing
- and that might be a quick thing carried out by a userspace lvm tool, or
a long thing carried out by an administrator using dmsetup.
I'm guessing you need a way of detecting such state lower down the stack
then optionally either aborting the operation telling the user it can't be
done at present; waiting for however long it takes (perhaps for ever if
the admin disappeared); or more probably skipping those devices on a
'best endeavours' basis.
I'm suggesting sysfs or something built on bd_claim might offer a mechanism
for traversing the stack.
Alasdair
--
agk redhat com
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]