From: Finn Thain <fthain@telegraphics.com.au>
To: "Song Bao Hua (Barry Song)" <song.bao.hua@hisilicon.com>
Cc: tanxiaofei <tanxiaofei@huawei.com>,
"jejb@linux.ibm.com" <jejb@linux.ibm.com>,
"martin.petersen@oracle.com" <martin.petersen@oracle.com>,
"linux-scsi@vger.kernel.org" <linux-scsi@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linuxarm@openeuler.org" <linuxarm@openeuler.org>,
linux-m68k@vger.kernel.org
Subject: RE: [Linuxarm] Re: [PATCH for-next 00/32] spin lock usage optimization for SCSI drivers
Date: Tue, 9 Feb 2021 16:06:06 +1100 (AEDT) [thread overview]
Message-ID: <f0a3339d-b1db-6571-fa2f-6765e150eb9d@telegraphics.com.au> (raw)
In-Reply-To: <e949a474a9284ac6951813bfc8b34945@hisilicon.com>
On Tue, 9 Feb 2021, Song Bao Hua (Barry Song) wrote:
> > -----Original Message-----
> > From: Finn Thain [mailto:fthain@telegraphics.com.au]
> > Sent: Monday, February 8, 2021 8:57 PM
> > To: tanxiaofei <tanxiaofei@huawei.com>
> > Cc: jejb@linux.ibm.com; martin.petersen@oracle.com;
> > linux-scsi@vger.kernel.org; linux-kernel@vger.kernel.org;
> > linuxarm@openeuler.org
> > 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.
>
Repeating the same claim does not somehow make it true. If you put your
claim to the test, you'll see that that interrupts are not disabled on
m68k when interrupt handlers execute.
The Interrupt Priority Level (IPL) can prevent any given irq handler from
being re-entered, but an irq with a higher priority level may be handled
during execution of a lower priority irq handler.
sonic_interrupt() uses an irq lock within an interrupt handler to avoid
issues relating to this. This kind of locking may be needed in the drivers
you are trying to patch. Or it might not. Apparently, no-one has looked.
next parent reply other threads:[~2021-02-09 5:07 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1612697823-8073-1-git-send-email-tanxiaofei@huawei.com>
[not found] ` <31cd807d-3d0-ed64-60d-fde32cb3833c@telegraphics.com.au>
[not found] ` <e949a474a9284ac6951813bfc8b34945@hisilicon.com>
2021-02-09 5:06 ` Finn Thain [this message]
2021-02-09 5:33 ` [Linuxarm] Re: [PATCH for-next 00/32] spin lock usage optimization for SCSI drivers Song Bao Hua (Barry Song)
2021-02-10 0:28 ` Finn Thain
2021-02-10 0:37 ` Song Bao Hua (Barry Song)
2021-02-10 4:14 ` Finn Thain
2021-02-09 5:46 ` Song Bao Hua (Barry Song)
2021-02-10 4:16 ` Finn Thain
2021-02-10 5:14 ` Song Bao Hua (Barry Song)
2021-02-10 21:06 ` Finn Thain
2021-02-10 21:28 ` Song Bao Hua (Barry Song)
2021-02-10 22:34 ` Finn Thain
2021-02-10 23:49 ` Song Bao Hua (Barry Song)
2021-02-11 1:11 ` Finn Thain
2021-02-11 3:02 ` Song Bao Hua (Barry Song)
2021-02-11 23:58 ` Finn Thain
2021-02-12 0:21 ` Song Bao Hua (Barry Song)
2021-02-18 7:12 ` Xiaofei Tan
2021-02-20 5:18 ` Finn Thain
2021-02-22 2:04 ` Song Bao Hua (Barry Song)
2021-02-23 5:25 ` Finn Thain
2021-02-23 5:47 ` Song Bao Hua (Barry Song)
2021-02-24 5:20 ` Finn Thain
2021-02-24 10:50 ` Song Bao Hua (Barry Song)
2021-02-25 7:07 ` Finn Thain
[not found] ` <a555f4b2-4df9-7bf4-e76c-3556d5ccb4ff@huawei.com>
2021-02-09 5:11 ` Finn Thain
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=f0a3339d-b1db-6571-fa2f-6765e150eb9d@telegraphics.com.au \
--to=fthain@telegraphics.com.au \
--cc=jejb@linux.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-m68k@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=linuxarm@openeuler.org \
--cc=martin.petersen@oracle.com \
--cc=song.bao.hua@hisilicon.com \
--cc=tanxiaofei@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox