From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Linus Torvalds <torvalds@osdl.org>
Cc: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>,
Linux Kernel list <linux-kernel@vger.kernel.org>,
linux-ia64@vger.kernel.org
Subject: Re: [RFC&PATCH 1/2] PCI Error Recovery (readX_check)
Date: Wed, 25 Aug 2004 17:01:08 +1000 [thread overview]
Message-ID: <1093417267.2170.47.camel@gaston> (raw)
In-Reply-To: <Pine.LNX.4.58.0408232231070.17766@ppc970.osdl.org>
On Tue, 2004-08-24 at 15:41, Linus Torvalds wrote:
> Just make "clear_pci_errors()" take a spinlock on the bridge, and
> "read_pci_errors()" unlock it. We need to make sure that if multiple
> devices on the same bridge try to be careful, they can do so without
> seeing each others errors.
>
> readX_check() itself would do no locking at all, since it is already
> called with the assumption that the bridge has been locked.
>
> I'd also suggest that you make "clear_pci_errors()" return a cookie for
> read_pci_errors() to use.
Well, I'm not sure about all this... part of the problem is that drivers
commonly need to also do IOs from interrupts. And another driver may
"pollute" us too, depending on how the HW & bridge are designed. So we
really also want to disable interrupts, we may need a "flags" around (could
be burried into the cookie stuff though as an arch specific thing)
Most drivers already have such a low level lock though, so we may end
up replacing it with a bridge-based lock... but depending on the architecture,
that would end up sync'ing lots of drivers on the same lock, which may not
be good especially if we have no checking to do...
I don't know what is the best thing to do here... The arch is the one to
know what is the granularity of the error management (per slot ? per segment
or per domain ?) and so to know what kind of lock is needed...
Ben.
next prev parent reply other threads:[~2004-08-25 7:03 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-08-24 5:24 [RFC&PATCH 1/2] PCI Error Recovery (readX_check) Hidetoshi Seto
2004-08-24 5:41 ` Linus Torvalds
2004-08-24 8:06 ` Hidetoshi Seto
2004-08-25 7:01 ` Benjamin Herrenschmidt [this message]
2004-08-25 7:20 ` Linus Torvalds
2004-08-25 15:52 ` Grant Grundler
2004-08-25 17:25 ` Linus Torvalds
2004-08-25 23:23 ` Benjamin Herrenschmidt
2004-08-25 23:35 ` Linus Torvalds
2004-08-25 15:42 ` Grant Grundler
-- strict thread matches above, loose matches on Subject: below --
2004-08-28 1:23 Hidetoshi Seto
2004-09-17 12:00 ` Hidetoshi Seto
2004-09-17 12:06 ` Hidetoshi Seto
2004-09-18 4:36 ` Grant Grundler
2004-09-21 8:32 ` Hidetoshi Seto
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=1093417267.2170.47.camel@gaston \
--to=benh@kernel.crashing.org \
--cc=linux-ia64@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=seto.hidetoshi@jp.fujitsu.com \
--cc=torvalds@osdl.org \
/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