Thread (24 messages) 24 messages, 5 authors, 2012-03-23

Re: [libsas PATCH v12 04/11] sysfs: handle 'parent deleted before child added'

From: James Bottomley <James.Bottomley@HansenPartnership.com>
Date: 2012-03-22 14:47:11
Also in: linux-scsi

On Wed, 2012-03-21 at 23:32 -0700, Dan Williams wrote:
In scsi at least two cases of the parent device being deleted before the
child is added have been observed.

1/ scsi is performing async scans and the device is removed prior to the
   async can thread running.
This doesn't sound right.  We do an explicit get on the sdkp (and the
sdkp holds the sdp) before we schedule an async scan.  That's only
removed after the async scan has completed, so it should be impossible
for the parent to vanish.
2/ libsas discovery event running after the parent port has been torn
   down.
This sounds possible, but should be fixable by referencing and checking
in libsas rather than having to alter sysfs, shouldn't it?

In general, I think any case where the parent is freed before the child
of that parent created is our refcounting cockup rather than a generic
problem in sysfs.

James

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help