Cyrill Gorcunov
3f4c3955ea
x86, ioapic: Don't call disconnect_bsp_APIC if no APIC present
...
Vegard Nossum reported:
[ 503.576724] ACPI: Preparing to enter system sleep state S5
[ 503.710857] Disabling non-boot CPUs ...
[ 503.716853] Power down.
[ 503.717770] ------------[ cut here ]------------
[ 503.717770] WARNING: at arch/x86/kernel/apic/apic.c:249 native_apic_write_du)
[ 503.717770] Hardware name: OptiPlex GX100
[ 503.717770] Modules linked in:
[ 503.717770] Pid: 2136, comm: halt Not tainted 2.6.30 #443
[ 503.717770] Call Trace:
[ 503.717770] [<c154d327>] ? printk+0x18/0x1a
[ 503.717770] [<c1017358>] ? native_apic_write_dummy+0x38/0x50
[ 503.717770] [<c10360fc>] warn_slowpath_common+0x6c/0xc0
[ 503.717770] [<c1017358>] ? native_apic_write_dummy+0x38/0x50
[ 503.717770] [<c1036165>] warn_slowpath_null+0x15/0x20
[ 503.717770] [<c1017358>] native_apic_write_dummy+0x38/0x50
[ 503.717770] [<c1017173>] disconnect_bsp_APIC+0x63/0x100
[ 503.717770] [<c1019e48>] disable_IO_APIC+0xb8/0xc0
[ 503.717770] [<c1214231>] ? acpi_power_off+0x0/0x29
[ 503.717770] [<c1015e55>] native_machine_shutdown+0x65/0x80
[ 503.717770] [<c1015c36>] native_machine_power_off+0x26/0x30
[ 503.717770] [<c1015c49>] machine_power_off+0x9/0x10
[ 503.717770] [<c1046596>] kernel_power_off+0x36/0x40
[ 503.717770] [<c104680d>] sys_reboot+0xfd/0x1f0
[ 503.717770] [<c109daa0>] ? perf_swcounter_event+0xb0/0x130
[ 503.717770] [<c109db7d>] ? perf_counter_task_sched_out+0x5d/0x120
[ 503.717770] [<c102dfc6>] ? finish_task_switch+0x56/0xd0
[ 503.717770] [<c154da1e>] ? schedule+0x49e/0xb40
[ 503.717770] [<c10444b0>] ? sys_kill+0x70/0x160
[ 503.717770] [<c119d9db>] ? selinux_file_ioctl+0x3b/0x50
[ 503.717770] [<c10dd443>] ? sys_ioctl+0x63/0x70
[ 503.717770] [<c1003024>] sysenter_do_call+0x12/0x22
[ 503.717770] ---[ end trace 8157b5d0ed378f15 ]---
|
| That's including this commit:
|
| commit 103428e57be323c3c5545db8ad12667099bc6005
|Author: Cyrill Gorcunov <gorcunov@openvz.org>
|Date: Sun Jun 7 16:48:40 2009 +0400
|
| x86, apic: Fix dummy apic read operation together with broken MP handling
|
If we have apic disabled we don't even switch to APIC mode and do not
calling for connect_bsp_APIC. Though on SMP compiled kernel the
native_machine_shutdown does try to write the apic register anyway.
Fix it with explicit check if we really should touch apic registers.
Reported-by: Vegard Nossum <vegard.nossum@gmail.com>
Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Cc: Yinghai Lu <yinghai@kernel.org>
LKML-Reference: <20090617181322.GG10822@lenovo>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-06-17 20:24:39 +02:00
..
2009-06-12 21:32:29 +02:00
2009-06-17 20:24:39 +02:00
2009-06-17 18:20:39 +02:00
2009-03-10 16:24:23 +01:00
2009-06-16 10:19:16 +02:00
2009-06-15 15:42:00 +02:00
2008-11-28 15:24:39 +01:00
2009-06-12 21:32:31 +02:00
2009-06-12 22:27:03 +09:30
2009-05-11 17:44:39 -07:00
2009-04-03 19:25:57 +02:00
2009-03-15 07:03:15 +01:00
2009-01-03 12:04:39 -08:00
2008-10-20 08:52:39 -07:00
2008-10-20 08:52:39 -07:00
2009-06-15 15:20:40 +02:00
2008-10-13 10:33:15 +02:00
2009-04-24 10:18:51 +02:00
2009-03-13 11:57:22 +01:00
2009-04-07 13:36:36 +02:00
2008-12-03 08:56:25 +01:00
2009-01-19 00:38:58 +09:00
2009-03-30 14:04:53 +11:00
2009-04-14 11:45:33 +02:00
2009-05-11 09:45:14 +02:00
2009-03-13 02:37:18 +01:00
2009-04-08 14:16:32 +02:00
2009-03-27 17:28:43 +01:00
2009-02-25 08:27:46 +01:00
2009-02-24 18:08:40 +01:00
2009-06-16 17:47:32 -07:00
2009-03-14 09:42:51 +01:00
2009-06-11 23:31:52 +02:00
2009-05-13 13:52:19 -04:00
2009-03-14 17:23:47 -07:00
2009-03-14 15:37:14 -07:00
2009-04-29 10:20:31 +02:00
2009-02-24 18:08:38 +01:00
2008-12-12 11:08:42 +01:00
2009-06-14 18:24:29 +02:00
2008-10-20 18:27:03 +02:00
2009-03-04 20:33:16 +01:00
2009-02-10 13:13:23 +01:00
2009-04-21 13:41:47 -07:00
2009-02-23 00:08:11 +01:00
2008-12-31 18:07:42 -05:00
2009-03-21 16:57:04 +05:30
2009-03-02 12:07:48 +01:00
2009-02-24 21:52:45 +01:00
2009-02-09 12:16:05 +01:00
2009-06-11 23:31:52 +02:00
2009-06-11 23:31:52 +02:00
2008-10-28 17:10:27 +01:00
2009-03-21 16:55:45 +05:30
2009-06-10 15:49:10 -07:00
2009-04-02 00:49:02 +02:00
2009-06-11 10:03:30 -07:00
2009-04-21 13:41:47 -07:00
2009-01-02 17:46:24 +01:00
2009-05-07 22:01:05 -07:00
2009-05-07 22:01:05 -07:00
2009-06-12 21:47:01 +09:30
2009-02-23 00:08:11 +01:00
2009-03-30 22:05:14 +10:30
2009-06-07 16:35:11 +02:00
2009-05-12 10:36:44 +02:00
2009-05-12 10:36:44 +02:00
2009-03-12 13:13:07 +01:00
2009-06-12 21:47:05 +09:30
2009-05-18 09:33:29 +02:00
2009-01-12 11:22:50 +01:00
2009-02-14 23:05:25 +01:00
2009-01-30 14:51:44 -08:00
2009-01-30 14:51:44 -08:00
2009-01-20 17:14:28 +01:00
2009-06-10 16:16:27 -07:00
2009-04-14 13:03:36 +02:00
2009-06-15 15:20:40 +02:00
2009-06-06 09:42:09 +02:00
2009-04-07 08:31:11 -07:00
2009-05-11 14:44:31 +02:00
2008-09-22 12:58:36 +02:00
2009-01-29 14:16:51 +01:00
2009-06-10 19:53:40 -07:00
2009-06-10 19:53:40 -07:00
2009-06-10 19:53:40 -07:00
2009-04-24 10:18:52 +02:00
2008-10-15 14:25:14 +02:00
2009-06-07 12:22:15 +02:00
2009-06-07 15:51:20 +02:00
2009-03-10 18:13:25 -07:00
2009-03-10 18:13:25 -07:00
2009-03-21 16:56:37 +05:30
2009-06-10 16:13:20 -07:00
2009-06-11 15:19:13 -07:00
2009-06-11 23:31:52 +02:00
2009-06-11 23:31:52 +02:00
2009-06-12 13:50:24 +03:00
2009-05-14 23:19:09 -04:00
Merge branches 'x86/alternatives', 'x86/cleanups', 'x86/commandline', 'x86/crashdump', 'x86/debug', 'x86/defconfig', 'x86/doc', 'x86/exports', 'x86/fpu', 'x86/gart', 'x86/idle', 'x86/mm', 'x86/mtrr', 'x86/nmi-watchdog', 'x86/oprofile', 'x86/paravirt', 'x86/reboot', 'x86/sparse-fixes', 'x86/tsc', 'x86/urgent' and 'x86/vmalloc' into x86-v28-for-linus-phase1
2008-10-06 18:17:07 +02:00
2008-10-22 22:55:23 -07:00
2009-04-30 21:16:49 +02:00
2009-02-23 00:08:11 +01:00
2009-03-30 22:05:14 +10:30
2009-06-10 16:15:14 -07:00
2009-03-21 16:55:24 +05:30
2009-02-13 11:35:01 -08:00
2009-02-13 11:35:01 -08:00
2008-12-08 13:49:45 +01:00
2009-06-11 23:31:52 +02:00
2009-05-07 09:32:10 +02:00
2009-06-10 16:15:59 -07:00
2009-02-17 17:52:44 +01:00
2009-04-08 14:58:10 +02:00
2009-04-22 17:41:25 +02:00
2009-03-11 09:49:01 +01:00
2009-06-10 16:15:14 -07:00
2009-04-07 13:34:16 -07:00
2009-04-21 13:41:47 -07:00
2009-06-12 09:21:33 +02:00
2009-03-25 21:34:28 +01:00
2009-05-28 14:15:54 +02:00
2009-01-16 14:20:22 +01:00
2009-04-20 14:33:00 -07:00