]>
 
 
pilppa.com Git - linux-2.6-omap-h63xx.git/log 
 
 
 
 
 
 
Ingo Molnar  [Thu, 16 Oct 2008 15:05:27 +0000  (17:05 +0200)] 
 
intr_remapping: fix typo 
 
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Ingo Molnar  [Thu, 16 Oct 2008 15:04:22 +0000  (17:04 +0200)] 
 
io_apic: make irq_mis_count available on 64-bit too 
 
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Thomas Gleixner  [Thu, 16 Oct 2008 13:33:18 +0000  (15:33 +0200)] 
 
genirq: fix name space collisions of nr_irqs in arch/* 
 
local shadows of global variables are _bad_ 
 
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Thomas Gleixner  [Thu, 16 Oct 2008 13:33:18 +0000  (15:33 +0200)] 
 
genirq: fix name space collision of nr_irqs in autoprobe.c 
 
probe_irq_off() is disfunctional as the local nr_irqs is referenced 
instead of the global one for the for_each_irq_desc() iterator. 
 
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Thomas Gleixner  [Thu, 16 Oct 2008 12:19:04 +0000  (14:19 +0200)] 
 
genirq: use iterators for irq_desc loops 
 
Use for_each_irq_desc[_reverse] for all the iteration loops. 
 
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Thomas Gleixner  [Thu, 16 Oct 2008 12:50:27 +0000  (14:50 +0200)] 
 
proc: fixup irq iterator 
 
There is no need for irq_desc here. Even for sparse_irq we can 
handle this clever in for_each_irq_nr(). 
 
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Thomas Gleixner  [Thu, 16 Oct 2008 12:16:11 +0000  (14:16 +0200)] 
 
genirq: add reverse iterator for irq_desc 
 
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Thomas Gleixner  [Thu, 16 Oct 2008 10:18:50 +0000  (12:18 +0200)] 
 
x86: move ack_bad_irq() to irq.c 
 
Share more duplicated code. 
 
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Thomas Gleixner  [Thu, 16 Oct 2008 09:32:24 +0000  (11:32 +0200)] 
 
x86: unify show_interrupts() and proc helpers 
 
show_interrupts() and proc helpers are basically the same for 
32 and 64 bit. Move them to a shared source file. 
 
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Thomas Gleixner  [Thu, 16 Oct 2008 09:15:28 +0000  (11:15 +0200)] 
 
x86: cleanup show_interrupts 
 
The sparseirq patches introduced some more ugliness in show_interrupts(). 
Clean it up all together and make the code easier to read by splitting out 
the "tail" function  which prints the special interrupts. 
 
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Thomas Gleixner  [Thu, 16 Oct 2008 07:55:00 +0000  (09:55 +0200)] 
 
genirq: cleanup the sparseirq modifications 
 
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Ingo Molnar  [Wed, 15 Oct 2008 17:29:15 +0000  (19:29 +0200)] 
 
genirq: remove artifacts from sparseirq removal 
 
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Thomas Gleixner  [Wed, 15 Oct 2008 13:27:23 +0000  (15:27 +0200)] 
 
genirq: revert dynarray 
 
Revert the dynarray changes. They need more thought and polishing. 
 
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Thomas Gleixner  [Wed, 15 Oct 2008 12:34:09 +0000  (14:34 +0200)] 
 
genirq: remove irq_to_desc_alloc 
 
Remove the leftover of sparseirqs. 
 
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Thomas Gleixner  [Wed, 15 Oct 2008 12:16:55 +0000  (14:16 +0200)] 
 
genirq: remove sparse irq code 
 
This code is not ready, but we need to rip it out instead of rebasing 
as we would lose the APIC/IO_APIC unification otherwise. 
 
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Thomas Gleixner  [Wed, 15 Oct 2008 12:31:29 +0000  (14:31 +0200)] 
 
genirq: use inline function for irq_to_desc 
 
For the non sparse irq case an inline function is perfectly fine. 
 
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Thomas Gleixner  [Wed, 15 Oct 2008 13:39:27 +0000  (15:39 +0200)] 
 
genirq: consolidate nr_irqs and for_each_irq_desc() 
 
Move all of those to linux/irq.h where they belong. 
 
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Thomas Gleixner  [Wed, 15 Oct 2008 11:16:00 +0000  (13:16 +0200)] 
 
x86: remove sparse irq from Kconfig 
 
This code is not ready yet. 
 
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Thomas Gleixner  [Wed, 15 Oct 2008 11:07:35 +0000  (13:07 +0200)] 
 
genirq: define nr_irqs for architectures with GENERIC_HARDIRQS=n 
 
Revert the sparse irq changes in m68k/s390/sparc and just define 
nr_irqs as NR_IRQS for those architectures. 
 
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Cyrill Gorcunov  [Fri, 10 Oct 2008 15:00:17 +0000  (19:00 +0400)] 
 
x86: apic - unify APIC_DIVISOR 
 
Use APIC_DIVISOR being set to 16 for both 32/64bit 
mode. To escape APIC timer underflow during calibration 
set it to the maximum possible value. 
 
Also typo error (CONFG instead of proper CONFIG) fixed. 
The error was caught by Venkatesh Pallipadi, thanks a lot Venkatesh! 
 
See details on http://lkml.org/lkml/2008/10/9/425 
 
Reported-by: Venkatesh Pallipad <venkatesh.pallipadi@intel.com>  
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Acked-by: "Maciej W. Rozycki" <macro@linux-mips.org>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Sat, 4 Oct 2008 22:52:15 +0000  (15:52 -0700)] 
 
x86: sparse_irq: fix typo in debug print out 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Russ Anderson  [Fri, 3 Oct 2008 16:59:50 +0000  (11:59 -0500)] 
 
x86: Add sysfs entries for UV v4 
 
Create /sys/firmware/sgi_uv sysfs entries for partition_id and coherence_id. 
 
Signed-off-by: Russ Anderson <rja@sgi.com>  
Signed-off-by: H. Peter Anvin <hpa@zytor.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Russ Anderson  [Fri, 3 Oct 2008 16:59:33 +0000  (11:59 -0500)] 
 
x86: Add UV partition call v4 
 
Add a bios call to return partitioning related info. 
 
Signed-off-by: Russ Anderson <rja@sgi.com>  
Signed-off-by: H. Peter Anvin <hpa@zytor.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Russ Anderson  [Fri, 3 Oct 2008 16:59:15 +0000  (11:59 -0500)] 
 
x86: Add UV bios call infrastructure v4 
 
Add the EFI callback function and associated wrapper code. 
Initialize SAL system table entry info at boot time. 
 
Signed-off-by: Russ Anderson <rja@sgi.com>  
Signed-off-by: Paul Jackson <pj@sgi.com>  
Acked-by: Huang Ying <ying.huang@intel.com>  
Signed-off-by: H. Peter Anvin <hpa@zytor.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Russ Anderson  [Fri, 3 Oct 2008 16:58:54 +0000  (11:58 -0500)] 
 
x86: Add UV EFI table entry v4 
 
Look for a UV entry in the EFI tables. 
 
Signed-off-by: Russ Anderson <rja@sgi.com>  
Signed-off-by: Paul Jackson <pj@sgi.com>  
Acked-by: Huang Ying <ying.huang@intel.com>  
Signed-off-by: H. Peter Anvin <hpa@zytor.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Ingo Molnar  [Fri, 3 Oct 2008 09:38:37 +0000  (11:38 +0200)] 
 
x86, UV: add uv_setup_irq() and uv_teardown_irq() functions, v3, fix 
 
fix: 
 
 arch/x86/kernel/uv_irq.c: In function 'uv_ack_apic': 
 arch/x86/kernel/uv_irq.c:26: error: implicit declaration of function 'ack_APIC_irq' 
 
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Dean Nelson  [Thu, 2 Oct 2008 17:18:21 +0000  (12:18 -0500)] 
 
x86, UV: add uv_setup_irq() and uv_teardown_irq() functions, v3 
 
Provide a means for UV interrupt MMRs to be setup with the message to be sent 
when an MSI is raised. 
 
Signed-off-by: Dean Nelson <dcn@sgi.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Venki Pallipadi  [Wed, 24 Sep 2008 17:03:17 +0000  (10:03 -0700)] 
 
hpet: clean up warning 
 
Fix the below compile warnings due to recent HPET MSI changes 
 
arch/x86/kernel/hpet.c:48: warning: 'hpet_devs' defined but not used 
arch/x86/kernel/hpet.c:50: warning: 'per_cpu__cpu_hpet_dev' defined but not used 
 
Reported-by: Andrew Morton <akpm@linux-foundation.org>  
Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Thu, 25 Sep 2008 18:53:11 +0000  (11:53 -0700)] 
 
x86: print out irq nr for msi/ht, v3 
 
v2: fix hpet compiling error 
v3: Bjorn want to use dev_printk instead 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Cc: Bjorn Helgaas <bjorn.helgaas@hp.com>  
Cc: Jesse Barnes <jbarnes@virtuousgeek.org>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Tue, 23 Sep 2008 19:00:02 +0000  (23:00 +0400)] 
 
x86: io-apic - interrupt remapping fix 
 
Clean up obscure for() cycle with straight while() form 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Cc: "Maciej W. Rozycki" <macro@linux-mips.org>  
Acked-by: Suresh Siddha <suresh.b.siddha@intel.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Thu, 25 Sep 2008 02:04:36 +0000  (19:04 -0700)] 
 
x86: irq no should not use hex in /proc/interrupts 
 
Arjan van de Ven noticed that we changed IRQ numbers from decimal 
to hex in /proc/interrupts - that can break user-space utilities 
like irqbalanced. 
 
Reported-by: Arjan van de Ven <arjan@linux.intel.com>  
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Thu, 25 Sep 2008 02:04:35 +0000  (19:04 -0700)] 
 
x86: fix typo in irq_desc array 
 
when SPARSE_IRQ is not used, should still use irq_desc->lock 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Jack Steiner  [Tue, 23 Sep 2008 13:42:05 +0000  (08:42 -0500)] 
 
x86, uv: fix ordering of calls to uv_system_init & uv_cpu_init 
 
Fix problem caused by reordering of the calls to uv_cpu_init() & 
uv_system_init. Originally, uv_cpu_init() was called AFTER uv_system_init. 
This order was recently broken as a side-effect of other patches. 
 
With this patch, initialization of cpu 0 is now done by the system_init 
call. 
 
Signed-off-by: Jack Steiner <steiner@sgi.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Thu, 18 Sep 2008 19:37:57 +0000  (23:37 +0400)] 
 
x86: io-apic - interrupt remapping fix 
 
Interrupt remapping could lead to NULL dereference in case of 
kzalloc failed and memory leak in other way. So fix the 
both cases. 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Cc: "Maciej W. Rozycki" <macro@linux-mips.org>  
Cc: Suresh Siddha <suresh.b.siddha@intel.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Andrew Morton  [Thu, 18 Sep 2008 23:10:48 +0000  (16:10 -0700)] 
 
fix warning: "x86: sparse_irq needs spin_lock in allocations"
caused by
commit 
a532e19680ada3b8579b81e67e76d3ebd19c340f 
Author: Yinghai Lu <yhlu.kernel@gmail.com>
Date:   Wed Aug 20 20:46:25 2008 -0700
    x86: sparse_irq needs spin_lock in allocations
Signed-off-by: Andrew Morton <akpm@linux-foundation.org> 
Signed-off-by: Ingo Molnar <mingo@elte.hu> 
 
Yinghai Lu  [Fri, 19 Sep 2008 07:12:26 +0000  (00:12  -0700)] 
 
sparseirq: remove some debug print out 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Cc: Yinghai Lu <yhlu.kernel@gmail.com>  
Cc: Andrew Morton <akpm@linux-foundation.org>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Mon, 15 Sep 2008 08:53:50 +0000  (01:53  -0700)] 
 
irq: fix irqpoll && sparseirq 
 
Steven Noonan reported a boot hang when using irqpoll and 
CONFIG_HAVE_SPARSE_IRQ=y. 
 
The irqpoll loop needs to be updated to not iterate from 1 to nr_irqs 
but to iterate via for_each_irq_desc(). (in the former case desc can 
be NULL which crashes the box) 
 
Reported-by: Steven Noonan <steven@uplinklabs.net>  
Tested-by: Steven Noonan <steven@uplinklabs.net>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Sat, 13 Sep 2008 09:11:16 +0000  (13:11 +0400)] 
 
x86: io-apic - do not use KERN_DEBUG marker too much, fix 
 
Yinghai Lu reported: 
 
| >  0 add_pin_to_irq: irq 15 --> apic 0 pin 15 
| > IOAPIC[0]: Set routing entry (8-15 -> 0x3f -> IRQ 15 Mode:0 Active:0) 
| >  8-16 8-17 8-18 8-19 8-20 8-21 8-22 8-23 (apicid-pin) not connected 
| >  9-0 9-1 9-2 9-3 9-4 9-5 9-6 9-7 9-8 9-9 9-10 9-11 9-12 9-13 9-14 9-15 
| > 9-16 9-17 9-18 9-19 9-20 9-21 9-22 9-23 (apicid-pin) not connected 
| > 
| 
| only first one not connected at first, and ... 
 
here is a quick fix for this. 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Fri, 12 Sep 2008 19:58:24 +0000  (23:58 +0400)] 
 
x86: apic - fix unused vars warning in calibrate_APIC_clock 
 
If we don't have CONFIG_X86_PM_TIMER=y compiler warns about 
unused variables. Move PM timer based calibration into a 
separate function and make the code cleaner and the compiler 
happy as well. 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Sun, 14 Sep 2008 07:55:38 +0000  (11:55 +0400)] 
 
x86: apic - skip writting ESR register if we dont have on 
 
On 82489DX we don't have ESR register so we should not 
write it. 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Sun, 14 Sep 2008 07:55:37 +0000  (11:55 +0400)] 
 
x86: apic - lapic_setup_esr does not handle esr_disable - fix it 
 
lapic_setup_esr doesn't handle esr_disable inquire. 
The error brought in during unification process. 
Fix it. 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Sun, 14 Sep 2008 09:33:11 +0000  (02:33  -0700)] 
 
dyn_array: use %pF instead of print_fn_descriptor_symbol 
 
... and tidy up the printouts. Suggested by Andrew Morton. 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Thu, 11 Sep 2008 04:56:46 +0000  (21:56 -0700)] 
 
x86: print out apic id in hex format 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Wed, 10 Sep 2008 18:19:50 +0000  (22:19 +0400)] 
 
x86: io-apic - get rid of __DO_ACTION macro 
 
Replace __DO_ACTION macro with io_apic_modify_irq function. 
This allow us to 'grep' definitions being hided by 
__DO_ACTION macro: 
 
	__unmask_IO_APIC_irq 
	__mask_IO_APIC_irq 
	__mask_and_edge_IO_APIC_irq 
	__unmask_and_level_IO_APIC_irq 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Acked-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Steven Noonan  [Mon, 8 Sep 2008 23:19:09 +0000  (16:19 -0700)] 
 
x86: fix HPET compiler error when not using CONFIG_PCI_MSI 
 
Added dummy function for hpet_setup_msi_irq(). 
 
Signed-off-by: Steven Noonan <steven@uplinklabs.net>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Venki Pallipadi  [Mon, 8 Sep 2008 17:18:40 +0000  (10:18 -0700)] 
 
x86: using HPET in MSI mode and setting up per CPU HPET timers, fix
On Sat, Sep 06, 2008 at 06:03:53AM -0700, Ingo Molnar wrote:
>
> it crashes two testsystems, the fault on a NULL pointer in hpet init,
> with:
>
> initcall print_all_ICs+0x0/0x520 returned 0 after 26 msecs
> calling  hpet_late_init+0x0/0x1c0
> BUG: unable to handle kernel NULL pointer dereference at 
000000000000008c 
> IP: [<
ffffffff80d228be >] hpet_late_init+0xfe/0x1c0
> PGD 0
> Oops: 0000 [1] SMP
> CPU 0
> Modules linked in:
> Pid: 1, comm: swapper Not tainted 2.6.27-rc5 #29725
> RIP: 0010:[<
ffffffff80d228be >]  [<
ffffffff80d228be >] hpet_late_init+0xfe/0x1c0
> RSP: 0018:
ffff88003fa07dd0   EFLAGS: 
00010246 
> RAX: 
0000000000000000  RBX: 
0000000000000003  RCX: 
0000000000000000 
> RDX: 
ffffc20000000160  RSI: 
0000000000000000  RDI: 
0000000000000003 
> RBP: 
ffff88003fa07e90  R08: 
0000000000000000  R09: 
ffff88003fa07dd0 
> R10: 
0000000000000001  R11: 
0000000000000000  R12: 
ffff88003fa07dd0 
> R13: 
0000000000000002  R14: 
ffffc20000000000  R15: 
000000006f57e511 
> FS:  
0000000000000000 (0000) GS:
ffffffff80cf6a80 (0000) knlGS:
0000000000000000 
> CS:  0010 DS: 0018 ES: 0018 CR0: 
000000008005003b 
> CR2: 
000000000000008c  CR3: 
0000000000201000  CR4: 
00000000000006e0 
> DR0: 
0000000000000000  DR1: 
0000000000000000  DR2: 
0000000000000000 
> DR3: 
0000000000000000  DR6: 
00000000ffff0ff0  DR7: 
0000000000000400 
> Process swapper (pid: 1, threadinfo 
ffff88003fa06000 , task 
ffff88003fa08000 )
> Stack:  
00000000fed00000  ffffc20000000000  0000000100000003  0000000800000002 
>  
0000000000000000  0000000000000000  0000000000000000  0000000000000000 
>  
0000000000000000  0000000000000000  0000000000000000  0000000000000000 
> Call Trace:
>  [<
ffffffff80d227c0 >] ? hpet_late_init+0x0/0x1c0
>  [<
ffffffff80209045 >] do_one_initcall+0x45/0x190
>  [<
ffffffff80296f39 >] ? register_irq_proc+0x19/0xe0
>  [<
ffffffff80d0d140 >] ? early_idt_handler+0x0/0x73
>  [<
ffffffff80d0dabc >] kernel_init+0x14c/0x1b0
>  [<
ffffffff80942ac1 >] ? trace_hardirqs_on_thunk+0x3a/0x3f
>  [<
ffffffff8020dbd9 >] child_rip+0xa/0x11
>  [<
ffffffff8020ceee >] ? restore_args+0x0/0x30
>  [<
ffffffff80d0d970 >] ? kernel_init+0x0/0x1b0
>  [<
ffffffff8020dbcf >] ? child_rip+0x0/0x11
> Code: 20 48 83 c1 01 48 39 f1 75 e3 44 89 e8 4c 8b 05 29 29 22 00 31 f6 48 8d 78 01 66 66 90 89 f0 48 8d 04 80 48 c1 e0 05 4a 8d 0c 00 <f6> 81 8c 00 00 00 08 74 26 8b 81 80 00 00 00 8b 91 88 00 00 00
> RIP  [<
ffffffff80d228be >] hpet_late_init+0xfe/0x1c0
>  RSP <
ffff88003fa07dd0 >
> CR2: 
000000000000008c 
> Kernel panic - not syncing: Fatal exception
There was one code path, with CONFIG_PCI_MSI disabled, where we were accessing
hpet_devs without initialization. That resulted in the above crash. The change
below adds a check for hpet_devs.
Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com> 
Signed-off-by: Shaohua Li <shaohua.li@intel.com> 
Signed-off-by: Ingo Molnar <mingo@elte.hu> 
 
Cyrill Gorcunov  [Mon, 8 Sep 2008 15:38:06 +0000  (19:38 +0400)] 
 
x86: io-apic - do not use KERN_DEBUG marker too much 
 
Do not use KERN_DEBUG several times on the same line being printed. 
Introduced by mine previous patch, sorry. 
 
Reported-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Mon, 8 Sep 2008 00:58:57 +0000  (17:58 -0700)] 
 
x86: lapic address print out like io apic addr 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Sat, 6 Sep 2008 17:26:50 +0000  (10:26 -0700)] 
 
dyn_array: remove one panic 
 
Andrew said, we don't need duplicated panic. 
because __alloc_bootmem already have that. 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Sat, 6 Sep 2008 10:15:33 +0000  (14:15 +0400)] 
 
x86: io-apic - code style cleaning for setup_IO_APIC_irqs 
 
By changing printout form we are able to shrink (and clean up) code a bit. 
 
Former printout example: 
 
	init IO_APIC IRQs 
	 IO-APIC (apicid-pin) 1-1, 1-2, 1-3 not connected. 
	 IO-APIC (apicid-pin) 2-1, 2-2, 2-3 not connected. 
 
New printout example: 
 
	init IO_APIC IRQs 
	 1-1 1-2 1-3 (apicid-pin) not connected 
	 2-1 2-2 2-3 (apicid-pin) not connected 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
venkatesh.pallipadi@intel.com  [Sat, 6 Sep 2008 01:02:18 +0000  (18:02 -0700)] 
 
x86: HPET_MSI Initialise per-cpu HPET timers 
 
Initialize a per CPU HPET MSI timer when possible. We retain the HPET 
timer 0 (IRQ 0) and timer 1 (IRQ 8) as is when legacy mode is being used. We 
setup the remaining HPET timers as per CPU MSI based timers. This per CPU 
timer will eliminate the need for timer broadcasting with IRQ 0 when there 
is non-functional LAPIC timer across CPU deep C-states. 
 
If there are more CPUs than number of available timers, CPUs that do not 
find any timer to use will continue using LAPIC and IRQ 0 broadcast. 
 
Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>  
Signed-off-by: Shaohua Li <shaohua.li@intel.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Ingo Molnar  [Sat, 6 Sep 2008 12:19:17 +0000  (14:19 +0200)] 
 
x86: HPET_MSI Basic HPET_MSI setup code, cleanups 
 
small style cleanups. 
 
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
venkatesh.pallipadi@intel.com  [Sat, 6 Sep 2008 01:02:17 +0000  (18:02 -0700)] 
 
x86: HPET_MSI Basic HPET_MSI setup code 
 
Basic HPET MSI setup code. Routines to perform basic MSI read write 
in HPET memory map and setting up irq_chip for HPET MSI. 
 
Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>  
Signed-off-by: Shaohua Li <shaohua.li@intel.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
venkatesh.pallipadi@intel.com  [Sat, 6 Sep 2008 01:02:16 +0000  (18:02 -0700)] 
 
x86: HPET_MSI Refactor code in preparation for HPET_MSI 
 
Preparatory patch before the actual HPET MSI changes. Sets up hpet_set_mode 
and hpet_next_event for the MSI related changes. Just the code 
refactoring and should be zero functional change. 
 
Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>  
Signed-off-by: Shaohua Li <shaohua.li@intel.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
venkatesh.pallipadi@intel.com  [Sat, 6 Sep 2008 01:02:15 +0000  (18:02 -0700)] 
 
x86: HPET_MSI change IRQ affinity in process context when it is disabled 
 
Change the IRQ affinity in the process context when the IRQ is disabled. 
 
Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>  
Signed-off-by: Shaohua Li <shaohua.li@intel.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Fri, 5 Sep 2008 17:03:37 +0000  (10:03 -0700)] 
 
irq: error missed ifndef CONFIG_HAVE_SPARSE_IRQ, v2 
 
need to change irq to int too 
 
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Dean Nelson  [Fri, 5 Sep 2008 14:10:40 +0000  (09:10 -0500)] 
 
irq: set_irq_chip() has redundant call to irq_to_desc() 
 
Extraneous call to irq_to_desc(). 
 
Signed-off-by: Dean Nelson <dcn@sgi.com>  
Cc: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Dean Nelson  [Fri, 5 Sep 2008 14:07:20 +0000  (09:07 -0500)] 
 
irq: error missed ifndef CONFIG_HAVE_SPARSE_IRQ 
 
An error return from create_irq_nr() is 0, but an error return from 
create_irq() is -1. 
 
Signed-off-by: Dean Nelson <dcn@sgi.com>  
Cc: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Thu, 4 Sep 2008 18:37:50 +0000  (22:37 +0400)] 
 
x86: io-apic - declare irq_cfg_lock for SPARSE_IRQ only 
 
We use irq_cfg_lock lock in SPARSE_IRQ only context so 
move it under #ifdef and compiler will be happy. 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Thu, 4 Sep 2008 18:37:49 +0000  (22:37 +0400)] 
 
x86: io-apic - use ARRAY_SIZE macro 
 
Make the code width a bit shorter with ARRAY_SIZE macro. 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Thu, 4 Sep 2008 18:57:13 +0000  (20:57 +0200)] 
 
dyn_array: fix typo 
 
Andrew found the typo could break some platforms. 
 
also fix a checkpatch warning. 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Thu, 4 Sep 2008 18:57:11 +0000  (20:57 +0200)] 
 
x86: print out if acpi want physical flat of all 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
H. Peter Anvin  [Thu, 4 Sep 2008 16:56:10 +0000  (09:56 -0700)] 
 
dyn_array: don't break compiling for !CONFIG_SMP 
 
Impact: build failure on uniprocessor 
 
When compiling for !CONFIG_SMP, per_cpu_alloc_dyn_array() would fail 
to compile, since it uses per_cpu_offset, which is not defined for 
uniprocessor builds. 
 
Hence, do not compile per_cpu_alloc_dyn_array() for !CONFIG_SMP. 
Attempting to call this function in a uniprocessor configuration would 
be simply wrong in the first place. 
 
Signed-off-by: H. Peter Anvin <hpa@zytor.com>  
Suresh Siddha  [Wed, 3 Sep 2008 23:58:35 +0000  (16:58 -0700)] 
 
dmar: fix dmar_parse_dev() devices_cnt error condition check 
 
It is possible that, 
instead of PCI endpoint/sub-hierarchy structures, only IO-APIC/HPET 
devices may be reported under device scope structures. Fix the devices_cnt 
error check, which cares about only PCI structures and removes the 
dma-remapping unit structure (dmaru) when the devices_cnt is zero 
and include_all flag is not set. 
 
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>  
Acked-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Suresh Siddha  [Wed, 3 Sep 2008 23:58:34 +0000  (16:58 -0700)] 
 
dmar: use list_for_each_entry_safe() in dmar_dev_scope_init() 
 
In dmar_dev_scope_init(), functions called under for_each_drhd_unit()/ 
for_each_rmrr_units() can delete the list entry under some error conditions. 
 
So we should use list_for_each_entry_safe() for safe traversal. 
 
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>  
Acked-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Wed, 3 Sep 2008 23:58:33 +0000  (16:58 -0700)] 
 
dmar: initialize the return value in dmar_parse_dev() 
 
initialize the return value in dmar_parse_dev() 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Wed, 3 Sep 2008 23:58:32 +0000  (16:58 -0700)] 
 
dmar: fix using early fixmap mapping for DMAR table parsing 
 
Very early detection of the DMAR tables will setup fixmap mapping. For 
parsing these tables later (while enabling dma and/or interrupt remapping), 
early fixmap mapping shouldn't be used. Fix it by calling table detection 
routines again, which will call generic apci_get_table() for setting up 
the correct mapping. 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Wed, 3 Sep 2008 23:58:31 +0000  (16:58 -0700)] 
 
x2apic: fix reserved APIC register accesses in print_local_APIC() 
 
APIC_ARBPRI is a reserved register for XAPIC and beyond. 
APIC_RRR is a reserved register except for 82489DX, APIC for Pentium processors. 
APIC_EOI is a write only register. 
APIC_DFR is reserved in x2apic mode. 
 
Access to these registers in x2apic will result in #GP fault. Fix these 
apic register accesses. 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>  
Cc: Maciej W. Rozycki <macro@linux-mips.org>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Ingo Molnar  [Thu, 28 Aug 2008 06:56:33 +0000  (08:56 +0200)] 
 
sparseirq: export nr_irqs on m68k/sparc/s390 
 
Stephen Rothwell reported such build failures on m68k/sparc/s390: 
 
> ERROR: "nr_irqs" [drivers/net/hamradio/baycom_ser_fdx.ko] undefined! 
> ERROR: "nr_irqs" [drivers/net/3c59x.ko] undefined! 
 
export nr_irqs on these architectures too. 
 
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Mon, 25 Aug 2008 17:27:26 +0000  (21:27 +0400)] 
 
x86: apic - unify smp_spurious/error_interrupt declaration 
 
According to entry_64.S we do pass pt_regs pointer 
into interrupt handlers but don't use them. So we 
safely may merge the declarations. 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Mon, 25 Aug 2008 19:41:19 +0000  (12:41 -0700)] 
 
sparseirq: move kstat_irqs from kstat to irq_desc - fix 
 
fix non-sparseirq architectures. 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Mon, 25 Aug 2008 05:41:26 +0000  (22:41 -0700)] 
 
x86: let 64 bit to use 32 bit calibrate_apic_clock 
 
Use the 32-bit APIC calibration code - it's more mature. 
 
Signed-of-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Sun, 24 Aug 2008 09:01:56 +0000  (02:01  -0700)] 
 
x86: rename apic_32.c and apic_64.c to apic.c 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Sun, 24 Aug 2008 09:01:55 +0000  (02:01  -0700)] 
 
x86: apic copy apic_64.c to apic_32.c 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Sun, 24 Aug 2008 09:01:54 +0000  (02:01  -0700)] 
 
x86: apic copy calibrate_APIC_clock to each other in apic_32/64.c 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Sun, 24 Aug 2008 09:01:53 +0000  (02:01  -0700)] 
 
x86: apic unify smp_spurious/error_interrupt 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Sun, 24 Aug 2008 09:01:52 +0000  (02:01  -0700)] 
 
x86: merge header files in apic_xx.c 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Sun, 24 Aug 2008 09:01:51 +0000  (02:01  -0700)] 
 
x86: copy detect_init_APIC to the other 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@mgail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Sun, 24 Aug 2008 09:01:50 +0000  (02:01  -0700)] 
 
x86: merge APIC_init_uniprocessor 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Sun, 24 Aug 2008 09:01:49 +0000  (02:01  -0700)] 
 
x86: make apic_32/64.c more like 
 
except x2apic, detec_init_APIC, and calibrating_APIC_clock 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Sun, 24 Aug 2008 09:01:48 +0000  (02:01  -0700)] 
 
x86: add hard_smp_prossor_id with MACRO in io_apic_xx.c 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Sun, 24 Aug 2008 09:01:47 +0000  (02:01  -0700)] 
 
x86: use HAVE_X2APIC in apic_64.c 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Sun, 24 Aug 2008 09:01:46 +0000  (02:01  -0700)] 
 
x86: apic_xx.c order variables 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Sun, 24 Aug 2008 09:01:45 +0000  (02:01  -0700)] 
 
x86: apic - unify smp_apic_timer_interrupt 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Sun, 24 Aug 2008 09:01:44 +0000  (02:01  -0700)] 
 
x86: apic_32.c should use __cpuinit section 
 
All callers are __init or __cpuinit so there is no need 
to hold this code without CPU_HOTPLUG being set. 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Sun, 24 Aug 2008 09:01:43 +0000  (02:01  -0700)] 
 
x86: apic - unify setup_local_APIC 
 
- remove useless read of APIC_LVR 
- wrap with preempt_disable/enable 
- check for integrated APIC just in place 
 
v2: fix by Yinghai Lu. 
	fix lapic_is_integrated using 
	let 64-bit too have pic_mode 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Sun, 24 Aug 2008 09:01:42 +0000  (02:01  -0700)] 
 
x86: apic_64.c - add sanity check for spurious vector definition 
 
Do not check for SPUTIOUS_APIC_VECTOR definition twice. 
Check it once - is what we need. 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Sun, 24 Aug 2008 09:01:41 +0000  (02:01  -0700)] 
 
x86: apic - unify setup_apicpmtimer 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Sun, 24 Aug 2008 09:01:40 +0000  (02:01  -0700)] 
 
x86: apic - introduce get_physical_broadcast for 64bit 
 
We don't really use it now on 64bit mode but 
could reserve it for future. 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Cyrill Gorcunov  [Sun, 24 Aug 2008 09:01:39 +0000  (02:01  -0700)] 
 
x86: apic_64.c - setup_APIC_timer has to be __cpuinit function 
 
There is no need to hold this code if CPU_HOTPLUG is not 
defined. 
 
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>  
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Alok Kataria  [Thu, 21 Aug 2008 18:26:43 +0000  (11:26 -0700)] 
 
x86: VMI, initialize IRQ vector 
 
Initialize vector_irq for the vmi used vector, to point to correct irq. 
 
Signed-off-by: Alok N Kataria <akataria@vmware.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Thu, 21 Aug 2008 20:10:09 +0000  (13:10 -0700)] 
 
x86: fix probe_nr_irqs for xen 
 
otherwise Xen is _completely_ unusable with 5 or more VCPUs. 
(when !CONFIG_HAVE_SPARSE_IRQ). 
 
based on Alex Nixon's patch. 
 
also add +1 offset after redir_entries 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Acked-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>  
Acked-by: Alex Nixon <alex.nixon@citrix.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Thu, 21 Aug 2008 19:56:32 +0000  (12:56 -0700)] 
 
x86: fix 32-bit ioapic lockup with sparseirqs 
 
Missed two lines when copying. 
 
Fix panic on one of Ingo's machines that need to adjust ioapic id when 
acpi off/ 32bit. 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Thu, 21 Aug 2008 03:46:25 +0000  (20:46 -0700)] 
 
x86: sparse_irq needs spin_lock in allocations 
 
Suresh Siddha noticed that we should have a spinlock around it. 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Suresh Siddha  [Thu, 21 Aug 2008 00:22:51 +0000  (17:22 -0700)] 
 
sparseirq: fix intr-remap with dyn_array/nr_irqs changes] 
 
In irq_2_iommu_alloc() and set_irte_irq(), irq_to_desc or 
irq_2_iommu pointers may not be allocated. So use the routines 
which will allocate them if they are not already allocated. 
 
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Ingo Molnar  [Mon, 18 Aug 2008 11:04:26 +0000  (13:04 +0200)] 
 
warning: fix arch x86 kernel io_apic c 
 
fix warning: 
 
  arch/x86/kernel/io_apic.c: In function ‘print_local_APIC’: 
  arch/x86/kernel/io_apic.c:1786: warning: format ‘%08x’ expects type ‘unsigned int’, but argument 2 has type ‘u64’ 
  arch/x86/kernel/io_apic.c:1787: warning: format ‘%08x’ expects type ‘unsigned int’, but argument 2 has type ‘u64’ 
 
By creating uniform behavior on 32-bit and 64-bit and printing out the ICR 
value in two 32-bit words. 
 
Code has changed: 
 
   text	   data	    bss	    dec	    hex	filename 
  22901	  19650	  17040	  59591	   e8c7	io_apic.o.before 
  22899	  19650	  17040	  59589	   e8c5	io_apic.o.after 
 
Due to the 32-bit cast narrowing the printed out value on 64-bit. 
 
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Alex Nixon  [Tue, 19 Aug 2008 05:17:08 +0000  (22:17 -0700)] 
 
xen: Fix bug `do_IRQ: cannot handle IRQ -1 vector 0x6 cpu 1'
Following commit 
9c3f2468d8339866d9ef6a25aae31a8909c6be0d , do_IRQ()
looks up the IRQ number in the per-cpu variable vector_irq.
This commit makes Xen initialise an identity vector_irq map for both X86_32 and X86_64.
Signed-off-by: Alex Nixon <alex.nixon@citrix.com> 
Acked-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com> 
Signed-off-by: Ingo Molnar <mingo@elte.hu> 
 
Yinghai Lu  [Wed, 20 Aug 2008 03:50:54 +0000  (20:50 -0700)] 
 
dyn_array: split dyn_array functions from init/main.c 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Alex Nixon  [Wed, 20 Aug 2008 03:50:53 +0000  (20:50 -0700)] 
 
xen: fix memory access violation bug when CONFIG_HAVE_SPARSE_IRQ is enabled 
 
When sparse IRQs are enabled, it is not safe to assume an IRQ descriptor 
exists for every possible IRQ.  This patch causes init_evtchn_cpu_bindings 
to skip initialisation of IRQ descriptors which don't exist. 
 
Signed-off-by: Alex Nixon <alex.nixon@citrix.com>  
Acked-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>  
Yinghai Lu  [Wed, 20 Aug 2008 03:50:52 +0000  (20:50 -0700)] 
 
x86: probe nr_irqs even only mptable is used 
 
for !CONFIG_HAVE_SPARSE_IRQ 
 
fix: 
 
 In file included from arch/x86/kernel/early-quirks.c:18: 
 include/asm/io_apic.h: In function 'probe_nr_irqs': 
 include/asm/io_apic.h:209: error: 'NR_IRQS' undeclared (first use in this function) 
 include/asm/io_apic.h:209: error: (Each undeclared identifier is reported only once 
 include/asm/io_apic.h:209: error: for each function it appears in.) 
 
v2: fix by Ingo 
 
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>  
Signed-off-by: Ingo Molnar <mingo@elte.hu>