Re: [2.6.25-rc1] System no longer powers off after shutdown

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Feb 14, 2008 at 3:48 PM, Ingo Molnar <mingo@xxxxxxx> wrote:
>
>  * Yinghai Lu <yhlu.kernel@xxxxxxxxx> wrote:
>
>  > after disable cpufreq, i got
>  >
>  > ACPI: Preparing to enter system sleep state S5
>  > Disabling non-boot CPUs ...
>  > kvm: disabling virtualization on CPU1
>  > CPU 1 is now offline
>  > CPU1 is down
>  > kvm: disabling virtualization on CPU2
>  > CPU 2 is now offline
>  > ================> hang here.
>  >
>  > but x86.git/mm could go through down all the cpus....
>  >
>  > interesting...
>
>  i suspect some kobject related race, and i have the feeling this all is
>  timing dependent.
>
>  Andrew started seeing reboot hangs roughly around the time when the
>  kobject changes went upstream. Given that x86.git had flux in that
>  timeframe too i couldnt be sure what caused them.
>
>  i have the fixlet below in x86.git but it didnt solve Andrew's problem
>  so it's parking now at the end of the queue, with no clear purpose in
>  life :-) If it would solve someone's problem it might be revitalized.
>
>  Note: this does not fix any particular bug i know about, it's just a
>  hack.
>
>         Ingo
>
>  ------------------------------>
>  Subject: x86: highprio shutdown hack
>  From: Ingo Molnar <mingo@xxxxxxx>
>
>  Signed-off-by: Ingo Molnar <mingo@xxxxxxx>
>  Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
>  ---
>   arch/x86/kernel/reboot.c |   16 ++++++++++++++--
>   1 file changed, 14 insertions(+), 2 deletions(-)
>
>  Index: linux-x86.q/arch/x86/kernel/reboot.c
>  ===================================================================
>  --- linux-x86.q.orig/arch/x86/kernel/reboot.c
>  +++ linux-x86.q/arch/x86/kernel/reboot.c
>  @@ -396,8 +396,20 @@ static void native_machine_shutdown(void
>         if (!cpu_isset(reboot_cpu_id, cpu_online_map))
>                 reboot_cpu_id = smp_processor_id();
>
>  -       /* Make certain I only run on the appropriate processor */
>  -       set_cpus_allowed(current, cpumask_of_cpu(reboot_cpu_id));
>  +       /*
>  +        * Make certain we only run on the appropriate processor,
>  +        * and with sufficient priority:
>  +        */
>  +       {
>  +               struct sched_param schedparm;
>  +               int ret;
>  +
>  +               schedparm.sched_priority = 99;
>  +               ret = sched_setscheduler(current, SCHED_RR, &schedparm);
>  +               WARN_ON_ONCE(1);

so I got

------------[ cut here ]------------
WARNING: at arch/x86/kernel/reboot.c:409 native_machine_shutdown+0x5f/0xb4()
Modules linked in:
Pid: 7173, comm: reboot Not tainted 2.6.25-rc1-smp-00168-g458504f-dirty #33

Call Trace:
 [<ffffffff802521d8>] warn_on_slowpath+0x64/0x8e
 [<ffffffff802464c8>] enqueue_task+0x5c/0x7e
 [<ffffffff8027765c>] rt_mutex_adjust_pi+0x28/0x94
 [<ffffffff8024c075>] sched_setscheduler+0x304/0x33c
 [<ffffffff80237feb>] native_machine_shutdown+0x5f/0xb4
 [<ffffffff80237f6e>] native_machine_restart+0x2e/0x4c
 [<ffffffff8026234b>] sys_reboot+0x140/0x1b2
 [<ffffffff8029bbd2>] handle_mm_fault+0x380/0x705
 [<ffffffff802cc311>] d_kill+0x50/0x7c
 [<ffffffff8097d000>] do_page_fault+0x3bd/0x7c9
 [<ffffffff804d58ae>] __up_read+0x27/0xb5
 [<ffffffff8022432b>] system_call_after_swapgs+0x7b/0x80

---[ end trace eb0e49090acb42b5 ]---
-
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux