Hi!
> 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.
Okay, so you claim that sys_sync can stall, waiting for administator?
In such case we can simply do one sys_sync() before we start freezing
userspace... or just more the only sys_sync() there. That way, admin
has chance to unlock his system.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html