Re: [PATCH v2 1/1] MIPS: Octeon: fix for held reboot_mutex lock at task exit time

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

 






2013/5/23 David Daney <ddaney.cavm@xxxxxxxxx>
On 05/23/2013 02:21 AM, Wladislav Wiebe wrote:
When kernel halt's will reboot_mutex lock still hold at exit.
It will issue with 'halt' command:
$ halt
..
Sent SIGKILL to all processes
Requesting system halt
[66.729373] System halted.
[66.733244]
[66.734761] =====================================
[66.739473] [ BUG: lock held at task exit time! ]
[66.744188] 3.8.7-0-sampleversion-fct #49 Tainted: G           O
[66.750202] -------------------------------------
[66.754913] init/21479 is exiting with locks still held!
[66.760234] 1 lock held by init/21479:
[66.763990]  #0:  (reboot_mutex){+.+...}, at: [<ffffffff801776c8>] SyS_reboot+0xe0/0x218
[66.772165]
[66.772165] stack backtrace:
[66.776532] Call Trace:
[66.778992] [<ffffffff805780a8>] dump_stack+0x8/0x34
[66.783972] [<ffffffff801618b0>] do_exit+0x610/0xa70
[66.788948] [<ffffffff801777a8>] SyS_reboot+0x1c0/0x218
[66.794186] [<ffffffff8013d6a4>] handle_sys64+0x44/0x64


[...]

Acked-by: Maxim Uvarov <muvarov@xxxxxxxxx>
Signed-off-by: Wladislav Wiebe <wladislav.kw@xxxxxxxxx>
---
  arch/mips/cavium-octeon/setup.c |    4 ++++
  1 file changed, 4 insertions(+)

diff --git a/arch/mips/cavium-octeon/setup.c b/arch/mips/cavium-octeon/setup.c
index b0baa29..04ce396 100644
--- a/arch/mips/cavium-octeon/setup.c
+++ b/arch/mips/cavium-octeon/setup.c
@@ -457,6 +457,10 @@ static void octeon_halt(void)
        }

        octeon_kill_core(NULL);
+
+       /* We stop here */
+       while (1)
+               ;

I want to put a WAIT here so we don't burn so much power.

I will send a patch to do that instead.


what about adding wait for other mips boards where is while (1) is used?

Maxim.
 
  }

  /**





--
Best regards,
Maxim Uvarov

[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux