From: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
To: akpm@osdl.org, greg@kroah.com, len.brown@intel.com,
tony.luck@intel.com, linux-kernel@vger.kernel.org,
acpi-devel@lists.sourceforge.net, linux-ia64@vger.kernel.org
Subject: [PATCH] PCI IRQ resource deallocation support [0/3]
Date: Tue, 21 Sep 2004 17:52:22 +0900 [thread overview]
Message-ID: <414FEBC6.4030901@jp.fujitsu.com> (raw)
Hi,
Architecture dependent IRQ resources such as interrupt vector for PCI
devices are allocated at pci_enable_device() time on i386, x86-64 and
ia64 platform. Today, however, these IRQ resources are never
deallocated even if they are no longer used. The following set of
patches adds supports to deallocate IRQ resources at
pci_disable_device() time.
The motivation of the set of patches is as follows:
- IRQ resources such as interrupt vectors should be freed if they
are no longer used because the amount of these resources are
limited. By deallocating IRQ resources, we can recycle them.
- I think some hardwares will support hot-pluggable I/O units with
I/O xAPICs in the near future. So I/O xAPIC hot-plug support by
OS will be needed soon. IRQ resouces deallocation will be one of
the most important stuff for I/O xAPIC hot-plug.
To realize IRQ resource deallocation, the following set of patches
defines new interfaces:
- void pcibios_disable_device (struct pci_dev *dev)
This is a opposite portion of pcibios_enable_device(). It's a
hook to call architecture specific code for deallocating PCI
resources.
- void acpi_unregister_gsi (int irq)
This is a opposite portion of acpi_register_gsi(). This has a
responsibility for deallocating IRQ resources associated with
the specified linux IRQ number.
For details of these interfaces, please see the description in each
patch.
The set of patches containes the following patches:
- add_pcibios_disable_device_hook.patch
This patch defines new a interface pcibios_disable_device(). It
has already been posted to LKML before. Please see:
http://marc.theaimsgroup.com/?l=linux-kernel&m=109533945101033&w=2
- IRQ_deallocation_acpi.patch
This is a acpi portion of IRQ resource deallocation. It defines
a new interface acpi_unregister_gsi().
- IRQ_deallocation_ia64.patch
This is a ia64 portion of IRQ resource deallocation. It
implements pcibios_disable_device() and acpi_unregister_gsi()
for ia64.
For now, the following set of patches has ia64 implementation only.
i386 and x86_64 implementations are TBD.
Thanks,
Kenji Kaneshige
reply other threads:[~2004-09-21 8:50 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=414FEBC6.4030901@jp.fujitsu.com \
--to=kaneshige.kenji@jp.fujitsu.com \
--cc=acpi-devel@lists.sourceforge.net \
--cc=akpm@osdl.org \
--cc=greg@kroah.com \
--cc=len.brown@intel.com \
--cc=linux-ia64@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=tony.luck@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox