Re: [patch 1/2] raid6_end_write_request() spinlock fix

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

 



On Tuesday April 25, qiyong@xxxxxxxxx wrote:
> On Tue, Apr 25, 2006 at 03:13:49PM +1000, Neil Brown wrote:
> > On Tuesday April 25, qiyong@xxxxxxxxx wrote:
> > > Hello,
> > > 
> > > Reduce the raid6_end_write_request() spinlock window.
> > 
> > Andrew: please don't include these in -mm.  This one and the
> > corresponding raid5 are wrong, and I'm not sure yet the unplug_device
> > changes.
> 
> I am sure with the unplug_device. Just look follow the path...
> 

What path?  There are probably several.  If I follow the path, will I
see the same things as you see?  Who knows, because you haven't
bothered to tell us what you see.

> 
> Yes. Let's fix the error(). In any case, the current code is broken. (see raid5/6_end_read_request)

What will I see in raidX_end_read_request.  Surely it isn't that hard
to write a few more sentences?


> Comments? Thanks.

conf->working_disks isn't atomic_t and so decrementing without a
spinlock isn't safe.  So lets just leave it all inside a spinlock.

Also I have a vague memory that clearing In_sync before Faulty is
important, but I'm not certain of that.

Remember: the code is there for a reason.  It might not be a good
reason, and the code could well be wrong.  But it would be worth your
effort trying to find out what the reason is before blithely changing
it (as I discovered recently with a change I suggested to
invalidate_mapping_pages).

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

[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux