Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 May 2009 09:21:34 -0400
From:      John Baldwin <jhb@freebsd.org>
To:        Attilio Rao <attilio@freebsd.org>
Cc:        Scott Long <scottl@samsco.org>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org, rwatson@freebsd.org, Kostik Belousov <kostikbel@gmail.com>, "M. Warner Losh" <imp@bsdimp.com>
Subject:   Re: svn commit: r192535 - head/sys/kern
Message-ID:  <200905220921.34785.jhb@freebsd.org>
In-Reply-To: <3bbf2fe10905211511g53defb6cmac45fc2469cc64f@mail.gmail.com>
References:  <3bbf2fe10905210629p46c7a204v6863aaba77354462@mail.gmail.com> <20090521194243.GW1927@deviant.kiev.zoral.com.ua> <3bbf2fe10905211511g53defb6cmac45fc2469cc64f@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thursday 21 May 2009 6:11:02 pm Attilio Rao wrote:
> At this point I wonder what's the purpose of maintaining the sleeping
> version for such functions?

Actually, I still very much do not like using M_NOWAIT needlessly.  I would 
much rather the solution for make_dev() be that the 1 or 2 places that need 
to do it with a mutex held instead queue a task to do the actual make_dev() 
in a taskqueue when no locks are held.  This is basically what 
destroy_dev_sched() is doing.  Perhaps a make_dev_sched() with a similar 
callback to be called on completion would be better.  Having a device driver 
do all the work to setup the hardware only to fail to create a node in /dev 
so that userland can actually use it is pretty rediculous and useless.

-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200905220921.34785.jhb>