RE: [Linuxarm] Re: [PATCH for-next 00/32] spin lock usage optimization for SCSI drivers

From: Song Bao Hua (Barry Song)
Date: Mon Feb 08 2021 - 20:49:18 EST




> -----Original Message-----
> From: Finn Thain [mailto:fthain@xxxxxxxxxxxxxxxxxxx]
> Sent: Monday, February 8, 2021 8:57 PM
> To: tanxiaofei <tanxiaofei@xxxxxxxxxx>
> Cc: jejb@xxxxxxxxxxxxx; martin.petersen@xxxxxxxxxx;
> linux-scsi@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> linuxarm@xxxxxxxxxxxxx
> Subject: [Linuxarm] Re: [PATCH for-next 00/32] spin lock usage optimization
> for SCSI drivers
>
> On Sun, 7 Feb 2021, Xiaofei Tan wrote:
>
> > Replace spin_lock_irqsave with spin_lock in hard IRQ of SCSI drivers.
> > There are no function changes, but may speed up if interrupt happen too
> > often.
>
> This change doesn't necessarily work on platforms that support nested
> interrupts.
>
> Were you able to measure any benefit from this change on some other
> platform?

I think the code disabling irq in hardIRQ is simply wrong.
Since this commit
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e58aa3d2d0cc
genirq: Run irq handlers with interrupts disabled

interrupt handlers are definitely running in a irq-disabled context
unless irq handlers enable them explicitly in the handler to permit
other interrupts.

>
> Please see also,
> https://lore.kernel.org/linux-scsi/89c5cb05cb844939ae684db0077f675f@xxxxxx
> m/
> _______________________________________________
> Linuxarm mailing list -- linuxarm@xxxxxxxxxxxxx
> To unsubscribe

Thanks
Barry