login
Login
/
Register
Search
Search this site:
Forums
News
Blogs
Features
Site
Home
»
Mailing list archives
»
linux-kernel
»
2010
»
August
»
31
Re: [patch 1/3] x86, intr-remap: set redirection hint in the IRTE
view
thread
Previous message: [
thread
] [
date
] [
author
]
Next message: [
thread
] [
date
] [author]
[view in full thread]
From: Weidong Han
Subject:
Re: [patch 1/3] x86, intr-remap: set redirection hint in the IRTE
Date: Monday, August 30, 2010 - 8:29 pm
Siddha, Suresh B wrote:
quoted text
> On Sun, 2010-08-29 at 18:47 -0700, Han, Weidong wrote: > >> Siddha, Suresh B wrote: >> >>> Currently the redirection hint in the interrupt-remapping table entry >>> is set to 0, which means the remapped interrupt is directed to the >>> processors listed in the destination. So in logical flat mode >>> in the presence of intr-remapping, this results in a single >>> interrupt multi-casted to multiple cpu's as specified by the destination >>> bit mask. But what we really want is to send that interrupt to one of the cpus >>> based on the lowest priority delivery mode. >>> >>> Set the redirection hint in the IRTE to '1' to indicate that we want >>> the remapped interrupt to be directed to only one of the processors >>> listed in the destination. >>> >>> This fixes the issue of same interrupt getting delivered to multiple cpu's >>> in the logical flat mode in the presence of interrupt-remapping. While >>> there is no functional issue observed with this behavior, this will >>> impact performance of such configurations (<=8 cpu's using logical flat >>> mode in the presence of interrupt-remapping) >>> >>> Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com> >>> Cc: Weidong Han <weidong.han@intel.com> >>> Cc: <stable@kernel.org> # [v2.6.32+] >>> --- >>> >>> diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c >>> index f1efeba..90f8a75 100644 >>> --- a/arch/x86/kernel/apic/io_apic.c >>> +++ b/arch/x86/kernel/apic/io_apic.c >>> @@ -1392,6 +1392,7 @@ int setup_ioapic_entry(int apic_id, int irq, >>> irte.dlvry_mode = apic->irq_delivery_mode; >>> irte.vector = vector; >>> irte.dest_id = IRTE_DEST(destination); >>> + irte.redir_hint = 1; >>> >>> /* Set source-id of interrupt request */ >>> set_ioapic_sid(&irte, apic_id); >>> @@ -3343,6 +3344,7 @@ static int msi_compose_msg(struct pci_dev *pdev, unsigned int irq, >>> irte.dlvry_mode = apic->irq_delivery_mode; >>> irte.vector = cfg->vector; >>> irte.dest_id = IRTE_DEST(dest); >>> + irte.redir_hint = 1; >>> >>> /* Set source-id of interrupt request */ >>> if (pdev) >>> >>> >>> >>> >> hi Suresh, >> >> I think it needs to set redir_hint only for lowest priority delivery >> mode. Why set it for all delivery modes? >> > > Weidong, For all the IRQ types (irrespective of lowest priority/fixed > mode etc) x86 linux kernel doesn't use irq multi-cast model (which is > what irte.redir_hint == 0 means). So as it is not particularly tied with > lowest priority mode (irte.redir_hint is equally applicable for fixed > mode though we don't use it currently), it makes sense to set it > unconditionally for the current usages. > > >
Thanks for your explanation. It's ok. Regards, Weidong --
unsubscribe notice
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to
majordomo@vger.kernel.org
More majordomo info at
http://vger.kernel.org/majordomo-info.html
Please read the FAQ at
http://www.tux.org/lkml/
Previous message: [
thread
] [
date
] [
author
]
Next message: [
thread
] [
date
] [author]
Messages in current thread:
[patch 1/3] x86, intr-remap: set redirection hint in the IRTE
, Suresh Siddha
, (Fri Aug 27, 11:09 am)
Re: [patch 1/3] x86, intr-remap: set redirection hint in t ...
, Weidong Han
, (Sun Aug 29, 6:35 pm)
Re: [patch 1/3] x86, intr-remap: set redirection hint in t ...
, Weidong Han
, (Sun Aug 29, 6:47 pm)
Re: [patch 1/3] x86, intr-remap: set redirection hint in t ...
, Suresh Siddha
, (Mon Aug 30, 10:17 am)
Re: [patch 1/3] x86, intr-remap: set redirection hint in t ...
, Weidong Han
, (Mon Aug 30, 8:29 pm)
[tip:x86/x2apic] x86, intr-remap: Set redirection hint in ...
, tip-bot for Suresh S ...
, (Wed Sep 15, 5:52 pm)
Navigation
Create content
Mailing list archives
Recent posts
Popular discussions
linux-kernel
:
swhiteho
[PATCH 42/51] [GFS2] Move inode deletion out of blocking_cb
FUJITA Tomonori
Re: [Scst-devel] Integration of SCST in the mainstream Linux kernel
Matthew
Re: Linux 2.6.25
Alex Riesen
Re: [PATCH 4/7] lib: Introduce strnstr()
Alexey Dobriyan
Re: [2.6.22.2 review 09/84] Fix rfkill IRQ flags.
git
:
Mike Miller
git message
David Bremner
Commit f5bbc322 to git broke pre-commit hooks which read stdin
Stefan Richter
Re: [kernel.org users] [RFD] On deprecating "git-foo" for builtins
Jeff King
Re: [PATCH] t7004: test that "git-tag -u" implies "-s"
Christian MICHON
Re: VCS comparison table
linux-netdev
:
Arnaldo Carvalho de Melo
Re: [PATCH 06/37] dccp: Limit feature negotiation to connection setup phase
David Miller
Re: 2.6.27.18: bnx2/tg3: BUG: "scheduling while atomic" trying to ifenslave a seco...
Badalian Vyacheslav
Re: tc filter flow hash question
Parav Pandit
ip6 route output() and ip_route_output_key() by drivers
Jarek Poplawski
Re: tc filter flow hash question
git-commits-head
:
Linux Kernel Mailing List
i915: Don't whine when pci_enable_msi() fails.
Linux Kernel Mailing List
usb: musb: fix hanging when rmmod gadget driver
Linux Kernel Mailing List
[ARM] 4671/1: ep93xx: remove obsolete gpio_line_* operations
Linux Kernel Mailing List
Staging: wlan-ng: Move wlan_mkprintstr() and wlan_hexchar() macros into prism2sta.c
Linux Kernel Mailing List
NFSv4: Move error handling out of the delegation generic code
openbsd-misc
:
Vikas N Kumar
Re: Singularity OS
Marco Peereboom
Re: OpenBSD culture?
ropers
Re: Real men don't attack straw men
"RALOVICH, Kristóf"
Re: thinkpad windows refund
Kevin
Re: uvm_mapent_alloc: out of static map entries on 4.3 i386
Colocation donated by:
Syndicate