Re: [PATCH 1/2] raid5: Use raw_spinlock for stripe management.

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

 



Hello Julia,

On Thu, 27 Apr 2017 10:43:17 -0500
Julia Cartwright <julia@xxxxxx> wrote:

> On Thu, Apr 27, 2017 at 06:34:07PM +0300, Alexander Gerasiov wrote:
> > Hello Julia,
> > 
> > On Tue, 25 Apr 2017 16:09:29 -0500
> > Julia Cartwright <julia@xxxxxx> wrote:
> >   
> > > Looking at this some more, I imagine the callpath which is
> > > problematic is:
> > > 
> > >    <writeback kworker>
> > >    ...
> > >    add_stripe_bio()
> > >      stripe_add_to_batch_list()
> > >        lock_two_stripes()
> > >          local_irq_disable()
> > >          spin_lock(&sh{1,2}->stripe_lock) --> ___might_sleep() -->
> > > BOOM
> > > 
> > > That is, it's the local_irq_disable() in lock_two_stripes() which
> > > is the problem.  That's my gut feel, anyway. Can you give this
> > > patch a try and see if works?  You'll probably still want the
> > > second patch in your series.  
> > 
> > Ouch, you are absolutely right, it was not atomic context this
> > time, so changing spinlocks from mutex to real ones is not
> > necessary. My fault.
> > 
> > Do you want me to resubmit the patch, or do it yourself?  
> 
> If you can confirm that the proposed patch fixes the problem you are
> seeing, I'll send a proper patch.
Yes, I confirm the fix.


-- 
Best regards,
 Alexander Gerasiov

 Contacts:
 e-mail: gq@xxxxxxxxx  Homepage: http://gerasiov.net  Skype: gerasiov
 PGP fingerprint: 04B5 9D90 DF7C C2AB CD49  BAEA CA87 E9E8 2AAC 33F1

-- 
Best regards,
 Alexander Gerasiov

 Contacts:
 e-mail: gq@xxxxxxxxx  Homepage: http://gerasiov.net  Skype: gerasiov
 PGP fingerprint: 04B5 9D90 DF7C C2AB CD49  BAEA CA87 E9E8 2AAC 33F1
--
To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [RT Stable]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux