From: Roland Dreier <roland@topspin.com>
To: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Andrew Morton <akpm@osdl.org>,
linux-kernel@vger.kernel.org,
Tom L Nguyen <tom.l.nguyen@intel.com>
Subject: Re: [PATCH] rename CONFIG_PCI_USE_VECTOR to CONFIG_PCI_MSI
Date: Mon, 26 Jul 2004 18:03:13 -0700 [thread overview]
Message-ID: <528yd65kj2.fsf@topspin.com> (raw)
In-Reply-To: <200407261734.46494.bjorn.helgaas@hp.com> (Bjorn Helgaas's message of "Mon, 26 Jul 2004 17:34:46 -0600")
Roland> 1) Merge Long's latest MSI/MSI-X patches (updated patches
Roland> in http://gmane.linux.kernel/218830). Without the new
Roland> semantics of pci_disable_msi()/pci_disable_msix(), it's
Roland> very difficult to use MSI/MSI-X in a device driver.
Bjorn> That sounds fine to me. There's nobody really using MSI
Bjorn> yet, so it can't break too much.
Yup... as far as I can tell there are no in-kernel users, and nobody
noticed that the MSI-X code didn't enable MSI-X properly until my
patch from last month. My mthca driver:
https://openib.org/svn/gen2/branches/roland-merge/src/linux-kernel/infiniband/hw/mthca
seems to be one of the first attempts to use MSI/MSI-X. I have some
uncommitted changes to match Long's patch -- without the patch the
semantics of free_irq() releasing an MSI-X vector make my driver code
very awkward.
Roland> 2) Split the config options so we have an i386-specific
Roland> CONFIG_PCI_USE_VECTOR and a generic CONFIG_PCI_MSI (with
Roland> CONFIG_PCI_MSI depending on something like !I386 ||
Roland> CONFIG_PCI_USE_VECTOR) This would be an updated version of
Roland> your patch.
Bjorn> Yup. Nothing in MSI has changed since April, so I thought
Bjorn> my patch would be a reasonable no-risk first step.
I agree... I'd just really, really like to see Long's patch merged
first, since I've been waiting for it for a long time and my driver is
broken without it :)
Roland> 3) Make the code in drivers/pci/msi.c less Intel-specific
Roland> -- instead of hard-coding Intel-specific addresses for
Roland> vectors have the computation call into arch code. This
Roland> would be a fair amount of work and depends documentation
Roland> for non-Intel platforms that implement MSI/MSI-X -- should
Roland> be easier as PCI Express comes out.
Bjorn> This is the bit I really want to get to. In particular, I
Bjorn> want to support multiple interrupt vector spaces on ia64,
Bjorn> because we're running out of vectors. I can't do that as
Bjorn> long as MSI mucks around with the arch-specific vector
Bjorn> allocation. (There's plenty of ia64 code that needs to be
Bjorn> cleaned up, too; it's not just MSI.)
Bjorn> I think there needs to be some arch interface to
Bjorn> allocate/deallocate Linux IRQ numbers (not interrupt
Bjorn> vectors). Then MSI can allocate as many as it needs, and
Bjorn> use yet another arch interface to translate the Linux IRQ
Bjorn> numbers to the appropriate address/data info to program the
Bjorn> device.
Sounds good, although I don't know much about the low-level details of
interrupt vectors on either i386 or ia64. Some way of exposing which
interrupts are "closest" to which CPUs would be a good thing too.
One thing that I would be a little concerned about is making the
numbers in /proc/interrupts too divorced from the underlying platform
interrupt code -- it seems that ACPI debugging is hard enough as it
is.
- Roland
next prev parent reply other threads:[~2004-07-27 1:03 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-07-26 22:15 [PATCH] rename CONFIG_PCI_USE_VECTOR to CONFIG_PCI_MSI Bjorn Helgaas
2004-07-26 22:39 ` Roland Dreier
2004-07-26 22:45 ` Roland Dreier
2004-07-26 23:34 ` Bjorn Helgaas
2004-07-27 1:03 ` Roland Dreier [this message]
2004-07-27 5:48 ` Zwane Mwaikambo
[not found] ` <20040726164324.683ff471.akpm@osdl.org>
[not found] ` <524qnu5j8l.fsf@topspin.com>
[not found] ` <20040726183917.65927925.akpm@osdl.org>
[not found] ` <20040727023927.GB24599@kroah.com>
2004-07-28 17:08 ` [PATCH][1/2] Stop using dev->bus->ops directly in msi.c Roland Dreier
2004-07-28 17:11 ` [PATCH][2/2] MSI/MSI-X API updates Roland Dreier
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=528yd65kj2.fsf@topspin.com \
--to=roland@topspin.com \
--cc=akpm@osdl.org \
--cc=bjorn.helgaas@hp.com \
--cc=linux-kernel@vger.kernel.org \
--cc=tom.l.nguyen@intel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.