Re: Messages from WITNESS [Sun May 26 kernel]

2002-05-28 Thread John Baldwin


On 27-May-2002 Alfred Perlstein wrote:
> * Jun Kuriyama <[EMAIL PROTECTED]> [020526 19:09] wrote:
>> At Sun, 26 May 2002 22:19:58 + (UTC),
>> Alfred Perlstein wrote:
>> > Uh, why don't you guys enable 'debug.witness_ddb' and get us some
>> > tracebacks? :)
>> 
>> Could this help you?
> 
> Yes.

I would prefer that we look at trying to restructure the code if possible
to avoid calling malloc() while holding the lock than to just commit quick
hacks that use M_NOWAIT.

-- 

John Baldwin <[EMAIL PROTECTED]>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Messages from WITNESS [Sun May 26 kernel]

2002-05-27 Thread Lamont Granquist


from May 26 kernel:

% dmesg | egrep sleep | sort | uniq -c
   3 /usr/src/sys/vm/uma_core.c:1324: could sleep with "UMA lock" locked
from /usr/src/sys/vm/uma_core.c:1157
   2 /usr/src/sys/vm/uma_core.c:1324: could sleep with "eventhandler"
locked from /usr/src/sys/kern/subr_eventhandler.c:162
  78 /usr/src/sys/vm/uma_core.c:1324: could sleep with "pcm0" locked from
/usr/src/sys/dev/sound/pcm/sound.c:134
   4 /usr/src/sys/vm/uma_core.c:1324: could sleep with "pcm0:fake" locked
from /usr/src/sys/dev/sound/pcm/channel.c:677
   4 /usr/src/sys/vm/uma_core.c:1324: could sleep with "pcm0:play:0"
locked from /usr/src/sys/dev/sound/pcm/channel.c:677
  28 /usr/src/sys/vm/uma_core.c:1324: could sleep with "pcm0:play:1"
locked from /usr/src/sys/dev/sound/pcm/channel.c:677
   4 /usr/src/sys/vm/uma_core.c:1324: could sleep with "pcm0:play:2"
locked from /usr/src/sys/dev/sound/pcm/channel.c:677
   4 /usr/src/sys/vm/uma_core.c:1324: could sleep with "pcm0:play:3"
locked from /usr/src/sys/dev/sound/pcm/channel.c:677
   4 /usr/src/sys/vm/uma_core.c:1324: could sleep with "pcm0:record:0"
locked from /usr/src/sys/dev/sound/pcm/channel.c:677
   4 /usr/src/sys/vm/uma_core.c:1324: could sleep with "pcm0:record:1"
locked from /usr/src/sys/dev/sound/pcm/channel.c:677
   2 /usr/src/sys/vm/uma_core.c:1324: could sleep with "process lock"
locked from /usr/src/sys/kern/kern_exec.c:316
   5 /usr/src/sys/vm/uma_core.c:1324: could sleep with "process lock"
locked from /usr/src/sys/kern/kern_prot.c:511
   7 /usr/src/sys/vm/uma_core.c:1324: could sleep with "process lock"
locked from /usr/src/sys/kern/kern_prot.c:613
   1 /usr/src/sys/vm/uma_core.c:1324: could sleep with "rman" locked from
/usr/src/sys/kern/subr_rman.c:194
   1 /usr/src/sys/vm/uma_core.c:1324: could sleep with "sf_bufs list lock"
locked from /usr/src/sys/kern/uipc_syscalls.c:1578

(i'll try enabling that sysctl and getting some tracebacks right after i'm
done with this ports compile...)

On Mon, 27 May 2002, Jun Kuriyama wrote:
> At Sun, 26 May 2002 22:19:58 + (UTC),
> Alfred Perlstein wrote:
> > Uh, why don't you guys enable 'debug.witness_ddb' and get us some
> > tracebacks? :)
>
> Could this help you?
>
> ../../../vm/uma_core.c:1324: could sleep with "process lock" locked from 
>../../../kern/kern_prot.c:867
> ../../../vm/uma_core.c:1324: could sleep with "pcm0:play:0" locked from 
>../../../dev/sound/pcm/sound.c:191
> Debugger("witness_sleep")
> Stopped at  Debugger+0x46:  xchgl   %ebx,in_Debugger.0
> db> trace
> Debugger(c02d6fa0) at Debugger+0x46
> witness_sleep(1,0,c02ea491,52c) at witness_sleep+0xf8
> uma_zalloc_arg(c081d5a0,0,4) at uma_zalloc_arg+0x3e
> malloc(30,c031b020,4,e2fc3180,0) at malloc+0x78
> kobj_create(c031b0c0,c031b020,4,e2fc3180,e2f8cc00) at kobj_create+0x1a
> feeder_create(c031b0c0,0,e2fc3180,e7f96974,c017ebb5) at feeder_create+0x18
> chn_addfeeder(e2fc3180,c031b0c0,0) at chn_addfeeder+0x12
> chn_buildfeeder(e2fc3180) at chn_buildfeeder+0x5b
> chn_tryformat(e2fc3180,8,0,1f40,e2fc3180) at chn_tryformat+0x28
> chn_setformat(e2fc3180,8,e2fc3338,3,c035cad0) at chn_setformat+0x15
> chn_reset(e2fc3180,8) at chn_reset+0xc5
> dsp_open(c035cad0,6,2000,e33a2414,e837f980) at dsp_open+0x21c
> spec_open(e7f96a7c,e7f96b28,c01f5e69,e7f96a7c,6) at spec_open+0x12f
> spec_vnoperate(e7f96a7c) at spec_vnoperate+0x13
> vn_open_cred(e7f96c10,e7f96b64,0,e837f980,e7f96cec) at vn_open_cred+0x353
> vn_open(e7f96c10,e7f96b64,0,c01c7c54,e7f690f0) at vn_open+0x18
> open(e33a2414,e7f96d14,3,1,297) at open+0x155
> syscall(2f,2f,2f,804e6a4,2807343a) at syscall+0x205
> syscall_with_err_pushed() at syscall_with_err_pushed+0x1b
> --- syscall (5, FreeBSD ELF, open), eip = 0x280f4bcb, esp = 0xbfbffa08, ebp = 
>0xbfbffa44 ---
>
>
> --
> Jun Kuriyama <[EMAIL PROTECTED]> // IMG SRC, Inc.
>
> To Unsubscribe: send mail to [EMAIL PROTECTED]
> with "unsubscribe freebsd-current" in the body of the message
>
>


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Messages from WITNESS [Sun May 26 kernel]

2002-05-27 Thread Rasmus Skaarup


I have several different types of "could sleep with" messages.

The following appear during boot-up.

/usr/src/sys/vm/uma_core.c:1324: could sleep with "eventhandler" locked
from /usr/src/sys/kern/subr_eventhandler.c:162

/usr/src/sys/vm/uma_core.c:1324: could sleep with "sf_bufs list lock"
locked from /usr/src/sys/kern/uipc_syscalls.c:1578

/usr/src/sys/vm/uma_core.c:1324: could sleep with "xl0" locked from
/usr/src/sys/pci/if_xl.c:1260

/usr/src/sys/vm/uma_core.c:1324: could sleep with "rman" locked from
/usr/src/sys/kern/subr_rman.c:194

If I enable debug.witness_ddb in loader.conf and type trace everytime a
"could sleep with" message appears, it doesn't appear in /var/log/messages
and I don't feel like writing all the information down by hand.. Unless it
is /really/ necessary.

But the following appears when the system is up, and a copy/paste works
fine.

/usr/src/sys/vm/uma_core.c:1324: could sleep with "xl0" locked from
/usr/src/sys
/pci/if_xl.c:2974
Debugger("witness_sleep")
Stopped at  Debugger+0x45:  xchgl   %ebx,in_Debugger.0
db> trace
Debugger(c0335740) at Debugger+0x45
witness_sleep(1,0,c034ba71,52c) at witness_sleep+0xf8
uma_zalloc_arg(c082a780,0,0) at uma_zalloc_arg+0x3e
vm_map_entry_create(c0822ef4,0,cf1f1ea8,707da90,13ba000) at
vm_map_entry_create+
0x2b
vm_map_insert(c0822ef4,c03fb260,13ba000,0,c12b9000) at vm_map_insert+0x1dc
kmem_malloc(c0822ef4,1000,1,c0333f9e,263) at kmem_malloc+0x129
mb_pop_cont(c03d4c20,1,c76c7ca0,c03d4c60,0) at mb_pop_cont+0x8e
mb_alloc(c03d4c20,1,0,c0e41c00,cf2adb68) at mb_alloc+0x147
m_clget(c0e41c00,1,22,cd2de188,cddfe000) at m_clget+0x16
xl_newbuf(cd2de000,cd2de320) at xl_newbuf+0x2c
xl_list_rx_init(cd2de000) at xl_list_rx_init+0x3d
xl_init(cd2de000,0,cf2adc60,80206910,cf2adc60) at xl_init+0x13d
xl_ioctl(cd2de000,80206910,cf2adc60) at xl_ioctl+0x19c
ifhwioctl(80206910,cd2de000,cf2adc60,cf28b728) at ifhwioctl+0x289
ifioctl(cf1c23d8,80206910,cf2adc60,cf28b728,0) at ifioctl+0xb2
soo_ioctl(cf106078,80206910,cf2adc60,cf28b728) at soo_ioctl+0x197
ioctl(cf28b728,cf2add14,3,0,296) at ioctl+0x353
syscall(2f,2f,2f,3,1) at syscall+0x205
syscall_with_err_pushed() at syscall_with_err_pushed+0x1b
--- syscall (54, FreeBSD ELF, ioctl), eip = 0x804d577, esp = 0xbfbffb9c,
ebp = 0
xbfbffbe8 ---

and another one:

/usr/src/sys/vm/uma_core.c:1324: could sleep with "process l
ock" locked from /usr/src/sys/kern/kern_prot.c:613
Debugger("witness_sleep")
Stopped at  Debugger+0x45:  xchgl   %ebx,in_Debugger.0
db> trace
Debugger(c0335740) at Debugger+0x45
witness_sleep(1,0,c034ba71,52c) at witness_sleep+0xf8
uma_zalloc_arg(c082ac80,0,4) at uma_zalloc_arg+0x3e
malloc(20,c0398880,4,c03d3d00,0) at malloc+0x68
uifind(1,c76c7d60,cf3a9f00,1,cf2b1cec) at uifind+0x56
change_euid(cf1d3600,1,cf28b4f0,0,cf1d3600) at change_euid+0x1c
seteuid(cf28b414,cf2b1d14,1,1,282) at seteuid+0xbf
syscall(2f,2f,2f,bfbffceb,804a226) at syscall+0x205
syscall_with_err_pushed() at syscall_with_err_pushed+0x1b
--- syscall (183, FreeBSD ELF, seteuid), eip = 0x280a3eeb, esp =
0xbfbffc8c, ebp
 = 0xbfbffd64 ---

and another process lock:

/usr/src/sys/vm/uma_core.c:1324: could sleep with "process lock" locked
from /us
r/src/sys/kern/kern_prot.c:511
Debugger("witness_sleep")
Stopped at  Debugger+0x45:  xchgl   %ebx,in_Debugger.0
db> trace
Debugger(c0335740) at Debugger+0x45
witness_sleep(1,0,c034ba71,52c) at witness_sleep+0xf8
uma_zalloc_arg(c082ac80,0,4) at uma_zalloc_arg+0x3e
malloc(20,c0398880,4,c03d3d00,0) at malloc+0x68
uifind(2,c76c7d60,c76c7d60,,0) at uifind+0x56
change_ruid(cf1d3600,2,cf28cb18,0,cf1d3600) at change_ruid+0x28
setuid(cf28ca3c,cf406d14,1,0,296) at setuid+0xc2
syscall(2f,2f,2f,8056050,12) at syscall+0x205
syscall_with_err_pushed() at syscall_with_err_pushed+0x1b
--- syscall (23, FreeBSD ELF, setuid), eip = 0x280b3a0b, esp = 0xbfbff71c,
ebp =
 0xbfbff748 ---


Best regards
Rasmus Skaarup


On Sun, 26 May 2002, Alfred Perlstein wrote:

> * Jun Kuriyama <[EMAIL PROTECTED]> [020526 19:09] wrote:
> > At Sun, 26 May 2002 22:19:58 + (UTC),
> > Alfred Perlstein wrote:
> > > Uh, why don't you guys enable 'debug.witness_ddb' and get us some
> > > tracebacks? :)
> >
> > Could this help you?
>
> Yes.
>
>
> Index: feeder.c
> ===
> RCS file: /home/ncvs/src/sys/dev/sound/pcm/feeder.c,v
> retrieving revision 1.23
> diff -u -r1.23 feeder.c
> --- feeder.c  25 May 2002 11:18:03 -  1.23
> +++ feeder.c  27 May 2002 03:07:30 -
> @@ -137,7 +137,8 @@
>   struct pcm_feeder *f;
>   int err;
>
> - f = (struct pcm_feeder *)kobj_create((kobj_class_t)fc, M_FEEDER, M_WAITOK | 
>M_ZERO);
> + f = (struct pcm_feeder *)kobj_create((kobj_class_t)fc, M_FEEDER,
> + M_NOWAIT | M_ZERO);
>   if (f == NULL)
>   return NULL;
>
>
> To Unsubscribe: send mail to [EMAIL PROTECTED]
> with "unsubscribe freebsd-current" in the body of the message
>


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe

Re: Messages from WITNESS [Sun May 26 kernel]

2002-05-26 Thread Jun Kuriyama

At Sun, 26 May 2002 22:19:58 + (UTC),
Alfred Perlstein wrote:
> Uh, why don't you guys enable 'debug.witness_ddb' and get us some
> tracebacks? :)

Could this help you?

../../../vm/uma_core.c:1324: could sleep with "process lock" locked from 
../../../kern/kern_prot.c:867
../../../vm/uma_core.c:1324: could sleep with "pcm0:play:0" locked from 
../../../dev/sound/pcm/sound.c:191
Debugger("witness_sleep")
Stopped at  Debugger+0x46:  xchgl   %ebx,in_Debugger.0
db> trace
Debugger(c02d6fa0) at Debugger+0x46
witness_sleep(1,0,c02ea491,52c) at witness_sleep+0xf8
uma_zalloc_arg(c081d5a0,0,4) at uma_zalloc_arg+0x3e
malloc(30,c031b020,4,e2fc3180,0) at malloc+0x78
kobj_create(c031b0c0,c031b020,4,e2fc3180,e2f8cc00) at kobj_create+0x1a
feeder_create(c031b0c0,0,e2fc3180,e7f96974,c017ebb5) at feeder_create+0x18
chn_addfeeder(e2fc3180,c031b0c0,0) at chn_addfeeder+0x12
chn_buildfeeder(e2fc3180) at chn_buildfeeder+0x5b
chn_tryformat(e2fc3180,8,0,1f40,e2fc3180) at chn_tryformat+0x28
chn_setformat(e2fc3180,8,e2fc3338,3,c035cad0) at chn_setformat+0x15
chn_reset(e2fc3180,8) at chn_reset+0xc5
dsp_open(c035cad0,6,2000,e33a2414,e837f980) at dsp_open+0x21c
spec_open(e7f96a7c,e7f96b28,c01f5e69,e7f96a7c,6) at spec_open+0x12f
spec_vnoperate(e7f96a7c) at spec_vnoperate+0x13
vn_open_cred(e7f96c10,e7f96b64,0,e837f980,e7f96cec) at vn_open_cred+0x353
vn_open(e7f96c10,e7f96b64,0,c01c7c54,e7f690f0) at vn_open+0x18
open(e33a2414,e7f96d14,3,1,297) at open+0x155
syscall(2f,2f,2f,804e6a4,2807343a) at syscall+0x205
syscall_with_err_pushed() at syscall_with_err_pushed+0x1b
--- syscall (5, FreeBSD ELF, open), eip = 0x280f4bcb, esp = 0xbfbffa08, ebp = 
0xbfbffa44 ---


-- 
Jun Kuriyama <[EMAIL PROTECTED]> // IMG SRC, Inc.

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Messages from WITNESS [Sun May 26 kernel]

2002-05-26 Thread Alfred Perlstein

* Jay <[EMAIL PROTECTED]> [020526 15:07] wrote:
> On Sunday 26 May 2002 07:37 am, Giorgos Keramidas wrote:
> > A kernel with WITNESS enabled, compiled last night prints the
> > following to my console every now and then:
> >
> > /usr/src/sys/vm/uma_core.c:1324: could sleep with "process lock" locked
> > from /usr/src/sys/kern/kern_prot.c:511 /usr/src/sys/vm/uma_core.c:1324:
> > could sleep with "process lock" locked from
> > /usr/src/sys/kern/kern_prot.c:613
> >
> > - Giorgos
> 
> This is due to the latest rev of uma_core.c that jhb committed.  This commit 
> reveals "possible brokenness".  (In what, I can't tell you, but, hey, I 
> believe John).
>  
> 
>http://www.FreeBSD.org/cgi/getmsg.cgi?fetch=535626+539491+/usr/local/www/db/text/2002/cvs-all/20020526.cvs-all
> 
> Other people have mentioned this on the list in the past few days.  I myself 
> am suffering from "UMA lock" "rl0" and a variety of "pcm" messages myself.  
> All I can say is that it hasn't seemed to hurt anything for me.

Uh, why don't you guys enable 'debug.witness_ddb' and get us some
tracebacks? :)

-- 
-Alfred Perlstein [[EMAIL PROTECTED]]
'Instead of asking why a piece of software is using "1970s technology,"
 start asking why software is ignoring 30 years of accumulated wisdom.'
Tax deductible donations for FreeBSD: http://www.freebsdfoundation.org/

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Messages from WITNESS [Sun May 26 kernel]

2002-05-26 Thread Jay

On Sunday 26 May 2002 07:37 am, Giorgos Keramidas wrote:
> A kernel with WITNESS enabled, compiled last night prints the
> following to my console every now and then:
>
> /usr/src/sys/vm/uma_core.c:1324: could sleep with "process lock" locked
> from /usr/src/sys/kern/kern_prot.c:511 /usr/src/sys/vm/uma_core.c:1324:
> could sleep with "process lock" locked from
> /usr/src/sys/kern/kern_prot.c:613
>
> - Giorgos

This is due to the latest rev of uma_core.c that jhb committed.  This commit 
reveals "possible brokenness".  (In what, I can't tell you, but, hey, I 
believe John).
 
http://www.FreeBSD.org/cgi/getmsg.cgi?fetch=535626+539491+/usr/local/www/db/text/2002/cvs-all/20020526.cvs-all

Other people have mentioned this on the list in the past few days.  I myself 
am suffering from "UMA lock" "rl0" and a variety of "pcm" messages myself.  
All I can say is that it hasn't seemed to hurt anything for me.

Jay Edwards




To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Messages from WITNESS [Sun May 26 kernel]

2002-05-26 Thread Giorgos Keramidas

A kernel with WITNESS enabled, compiled last night prints the
following to my console every now and then:

/usr/src/sys/vm/uma_core.c:1324: could sleep with "process lock" locked from 
/usr/src/sys/kern/kern_prot.c:511
/usr/src/sys/vm/uma_core.c:1324: could sleep with "process lock" locked from 
/usr/src/sys/kern/kern_prot.c:613

- Giorgos


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message