On Thursday 29 September 2005 03:36 pm, Poul-Henning Kamp wrote: > In message <[EMAIL PROTECTED]>, John Baldwin writes: > >On Thursday 29 September 2005 02:14 pm, Poul-Henning Kamp wrote: > >> In message <[EMAIL PROTECTED]>, John Baldwin writes: > >> >Actually, you would think that it could be initialized either via an > >> > early SYSINIT() or in the init_mutexes() function in kern_mutex.c and > >> > thus not need the early check and avoid penalizing dev_lock(). > >> > > >> >phk, how early his dev_lock needed? > >> > >> Far too early due to console madness (in syscons I belive). > > > >So would mutex_init() work? > > Havn't tried. It basically has to work right before the copyright > is printed.
Actually, mutexes won't work until after mutex_init() anyway, so it had better work. :) I'll try it out. Patch is below for reference: --- //depot/vendor/freebsd/src/sys/kern/kern_conf.c 2005/09/19 20:01:08 +++ //depot/projects/smpng/sys/kern/kern_conf.c 2005/09/30 12:57:36 @@ -57,8 +57,7 @@ void dev_lock(void) { - if (!mtx_initialized(&devmtx)) - mtx_init(&devmtx, "cdev", NULL, MTX_DEF); + mtx_lock(&devmtx); } --- //depot/vendor/freebsd/src/sys/kern/kern_mutex.c 2005/09/02 20:25:20 +++ //depot/projects/smpng/sys/kern/kern_mutex.c 2005/09/30 12:57:36 @@ -900,5 +935,6 @@ mtx_init(&Giant, "Giant", NULL, MTX_DEF | MTX_RECURSE); mtx_init(&sched_lock, "sched lock", NULL, MTX_SPIN | MTX_RECURSE); mtx_init(&proc0.p_mtx, "process lock", NULL, MTX_DEF | MTX_DUPOK); + mtx_init(&devmtx, "cdev", NULL, MTX_DEF); mtx_lock(&Giant); } -- John Baldwin <[EMAIL PROTECTED]> <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" = http://www.FreeBSD.org _______________________________________________ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[EMAIL PROTECTED]"