Re: [PATCH-v2 00/14] iscsi-target: iSCSI target v4.1.0-rc1 series initial merge

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 2011-03-25 at 20:49 +0100, Bart Van Assche wrote:
> On Fri, Mar 25, 2011 at 8:34 PM, James Bottomley
> <James.Bottomley@xxxxxxx> wrote:
> > On Fri, 2011-03-25 at 19:44 +0100, Bart Van Assche wrote:
> >> On Fri, Mar 25, 2011 at 4:06 PM, James Bottomley
> >> <James.Bottomley@xxxxxxx> wrote:
> >> > Explain first what lock inversion problems you see ... those usually
> >> > only happen if you have the in the kernel upcall thread waiting for
> >> > completion.
> >>
> >> In this context asynchronous upcalls have their problems too: the
> >> in-kernel and the user space visible state may become inconsistent.
> >> What will happen if processing of such notifications is delayed and
> >> concurrently attempts are made from user space to act on these objects
> >> ? I'm afraid that could result in horrible race conditions.
> >
> > What race conditions?  The current exemplar is udev which uses the
> > uevent mechanism.  The usual way of coping with use before init is to
> > key visibility off completion ... at least that's the way we do it in
> > sysfs.
> 
> A storage target subsystem is more demanding than e.g. udev. As an
> example, for the session reassignment logic in SCST it is necessary to
> remove and create user space visible objects synchronously and under
> lock. Both are necessary - the locking and the synchronous
> manipulation of user space objects. I'm not sure it is possible to
> convert such an approach to something based on asynchronous userspace
> upcalls.

Really, no ... this is an example of an a-priori design fault.  What it
implies is that the user and kernel share locks for state access, which
always leads to deadlocks.  A correctly separated event driven model
shouldn't need state locks across event subsystems.

Just because SCST couldn't get it right, doesn't mean that no-one else
can.

James


--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux