On Fri, Jan 13, 2017 at 04:43:19PM +0100, Patrick Welche wrote: > On Fri, Jan 13, 2017 at 04:00:20PM +0100, Patrick Welche wrote: > > On Fri, Jan 13, 2017 at 03:15:19PM +0100, Patrick Welche wrote: > > > Given how many tests are based on rump, am I the only one seeing this?
... because the tests tend to use rump_server which is fine. > > > $ rump_allserver -v unix://sock > > > Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, > > > 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017 > > > The NetBSD Foundation, Inc. All rights reserved. > > > Copyright (c) 1982, 1986, 1989, 1991, 1993 > > > The Regents of the University of California. All rights reserved. > > > > > > NetBSD 7.99.58 (RUMP-ROAST) > > > ... > > > audio0 at pad0: half duplex, playback, capture > > > mutex error: lockdebug_alloc: already initialized > > > > > > lock address : 0x00007f7ff6604300 type : sleep/adaptive > > > initialized : 0x00007f7ff640294a > > > shared holds : 0 exclusive: 0 > > > shares wanted: 0 exclusive: 0 > > > current cpu : 0 last held: 0 > > > current lwp : 0x00007f7ff7b3f800 last held: 000000000000000000 > > > last locked : 000000000000000000 unlocked*: 000000000000000000 > > > > > > > > > panic: LOCKDEBUG: mutex error: lockdebug_alloc: already initialized > > > > It seems that drvctl_init gets called twice: > > > > first call of drvctl_init > > > > #0 drvctl_init () > > at > > /usr/src/sys/rump/dev/lib/libdrvctl/../../../../kern/kern_drvctl.c:118 > > #1 0x00007f7ff6401e29 in rumpcompinitRUMP_COMPONENT_DEV () > > at /usr/src/sys/rump/dev/lib/libdrvctl/drvctl_component.c:46 > > #2 0x00007f7fe50d2fcd in rump_component_init (type=RUMP_COMPONENT_DEV) > > at /usr/src/sys/rump/librump/rumpkern/rump.c:606 > > #3 0x00007f7fe5c0b348 in rumpcompinitRUMP__FACTION_DEV () > > at /usr/src/sys/rump/librump/rumpdev/rump_dev.c:54 > > #4 0x00007f7fe50d2fcd in rump_component_init (type=RUMP__FACTION_DEV) > at /usr/src/sys/rump/librump/rumpkern/rump.c:606 > #5 0x00007f7fe50d297b in rump_init () > at /usr/src/sys/rump/librump/rumpkern/rump.c:434 > #6 0x0000000000203cd9 in main (argc=1, argv=0x7f7fffffcb20) > at /usr/src/usr.bin/rump_allserver/rump_allserver.c:401 > > > second call: > > > > #0 drvctl_init () > > at > > /usr/src/sys/rump/dev/lib/libdrvctl/../../../../kern/kern_drvctl.c:118 > > #1 0x00007f7ff6402ef2 in drvctl_modcmd (cmd=MODULE_CMD_INIT, arg=0x0) > > at > > /usr/src/sys/rump/dev/lib/libdrvctl/../../../../kern/kern_drvctl.c:615 > > #2 0x00007f7fe50af0c4 in module_do_builtin (pmod=0x7f7ff7bd1c98, > > name=0x7f7ff640321b "drvctl", modp=0x0, props=0x0) > > at /usr/src/sys/rump/librump/rumpkern/../../../kern/kern_module.c:830 > > #3 0x00007f7fe50ae78c in module_init_class (modclass=MODULE_CLASS_ANY) > > at /usr/src/sys/rump/librump/rumpkern/../../../kern/kern_module.c:511 > > #4 0x00007f7fe50d2a95 in rump_init () > > at /usr/src/sys/rump/librump/rumpkern/rump.c:459 > > #5 0x0000000000203cd9 in main (argc=1, argv=0x7f7fffffcb20) > > at /usr/src/usr.bin/rump_allserver/rump_allserver.c:401 > > i.e., once from rump_component_init(RUMP__FACTION_DEV), and once from > module_init_class(MODULE_CLASS_ANY) initializing `pad'...pad0: outputs: 44100Hz, 16-bit, stereo audio0 at pad0: half duplex, playback, capture done initializing `fss'... done initializing `drvctl'...mutex error: lockdebug_alloc: already initialized so two lots of drvctl... P
