Subject: kern/21607: sysmon_power : locking against myself
To: None <gnats-bugs@gnats.netbsd.org>
From: None <kochi@netbsd.org>
List: netbsd-bugs
Date: 05/17/2003 05:24:45
>Number:         21607
>Category:       kern
>Synopsis:       sysmon_power : locking against myself
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat May 17 05:25:01 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     Takayoshi Kochi
>Release:        NetBSD 1.6T (20030517)
>Organization:
>Environment:
NetBSD xxxxx 1.6T NetBSD 1.6T (AX4PE) #1: Sat May 17 13:46:40 JST 2003  kochi@xxxxx:/home/kochi/conf/kernel/ax4pe i386
>Description:
A kernel built with MULTIPROCESSOR fails to get a lock when power
button is pressed.

Here's the log with LOCKDEBUG enabled.

simple_lock: locking against myself
lock: 0xc0365798, currently at: /home/kochi/nbwk/sys/dev/sysmon/sysmon_power.c:268 on cpu 0
last locked: /home/kochi/nbwk/sys/dev/sysmon/sysmon_power.c:400
last unlocked: /home/kochi/nbwk/sys/dev/sysmon/sysmon_power.c:270
filt_sysmon_power_read(c1c68000,0,e4655ecc,c01f7bd3,e4655f1c) at netbsd:filt_sysmon_power_read:0x21
knote(c0370970,0,e4655eec,c01f7f7c,c1af0350) at netbsd:knote+0x21
sysmon_pswitch_event(c1af0350,0,0,c01475eb,c03657b4) at netbsd:sysmon_pswitch_event+0x5b
acpi_fixed_button_pressed(c1af0350,c030a2a0,b9,e4655f90,e4651080) at netbsd:acpi_fixed_button_pressed+0x13
sysmon_task_queue_thread(e4651080,0,0,0,c010030c) at netbsd:sysmon_task_queue_thread+0x1bb
Stopped in pid 2.1 (sysmon taskq) at    netbsd:cpu_Debugger+0x4:        leave
db{0}>

>How-To-Repeat:
Build a kernel with "options MULTIPROCESSOR" with acpibut, run the kernel and push power button.

>Fix:
nothing yet
>Release-Note:
>Audit-Trail:
>Unformatted: