lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 21 Aug 2008 19:59:10 +0200
From:	"Vegard Nossum" <vegard.nossum@...il.com>
To:	"Dmitry Adamushko" <dmitry.adamushko@...il.com>
Cc:	"Oleg Nesterov" <oleg@...sign.ru>,
	"Peter Zijlstra" <a.p.zijlstra@...llo.nl>,
	"Rafael J. Wysocki" <rjw@...k.pl>,
	"Max Krasnyanskiy" <maxk@...lcomm.com>,
	"Linux Kernel Mailing List" <linux-kernel@...r.kernel.org>
Subject: Re: latest -git: hibernate: possible circular locking dependency detected

On Thu, Aug 21, 2008 at 7:38 PM, Dmitry Adamushko
<dmitry.adamushko@...il.com> wrote:
>> [ INFO: possible circular locking dependency detected ]
>> 2.6.27-rc4-00003-ga798564 #28

[...]

> this path is triggered as a result of "echo disk > /sys/power/state"

Yes. That is what I typed.

>
> disable_nonboot_cpus() calls cpu_maps_update_being() which takes
> "cpu_add_remove_lock" (lock-1).
>
> If we go down the road cleanup_workqueue_thread() ->
> flush_cpu_workqueue() will take "cwq->lock" (lock-2).
> So this should be the second lock.
>
>
[...]

> hmm, did you somehow hit "Sysrq + o"?
>
> 'cause I don't see any other places (say, with handle_sysrq(k,...)
> where "k" migth be 'o') from where do_power_off() might have been
> triggered...
>

No. But in my logs I often saw SysRq triggered, even though I didn't
do it any of these times:

log-20080821-104053.txt:SysRq : SysRq : Show State
log-20080821-105541.txt:SysRq : Emergency Sync
log-20080821-105541.txt:SysRq : Emergency Sync
log-20080821-105541.txt:SysRq : Power Off
log-20080821-110514.txt:SysRq : Terminate All Tasks
log-20080821-111650.txt:SysRq : HELP : loglevel0-8 <6>serial 00:0d: activated
log-20080821-111650.txt:SysRq : Power Off
log-20080821-111650.txt:SysRq : Terminate All Tasks
log-20080821-111650.txt:SysRq : SysRq : <6>serial 00:0d: activated
log-20080821-120628.txt:SysRq : SysRq : HELP : HELP : <6>serial 00:0d: activated
log-20080821-120628.txt:SysRq : SysRq : HELP : HELP : <6>serial 00:0d: activated

(And it seems to pick a random letter too. It even showed the "HELP:"
line at one point!)

I have no idea why this happens. Is it possible to trigger SysRq by
writing data on the other end of the serial console? (Maybe my cable
is bad or something, but data seems to be going in both directions
over my serial console.)

The rest I will not comment on. It also seems unlikely that I will be
able to test any patches reliably, simply because I see a few
different kinds of issues on resume :-(

Thanks!


Vegard


-- 
"The animistic metaphor of the bug that maliciously sneaked in while
the programmer was not looking is intellectually dishonest as it
disguises that the error is the programmer's own creation."
	-- E. W. Dijkstra, EWD1036
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ