svn commit: r192535 - head/sys/kern

Kostik Belousov kostikbel at gmail.com
Fri May 22 13:54:35 UTC 2009


On Fri, May 22, 2009 at 07:44:18AM -0600, Scott Long wrote:
> John Baldwin wrote:
> >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.
> >
> 
> It's a lot easier for me to handle a failure of make_dev in CAM than it 
> is to decouple the call to it.  Please don't dictate policy.

The second patch I posted yesterday allows to specify the flag that means
"no sleep, could fail" to make_dev. Without the flag, make_dev behaves
in the current fashion, i.e. sleep, cannot fail.

Is this solution suitable for your needs ?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/svn-src-all/attachments/20090522/ebd0d120/attachment.pgp


More information about the svn-src-all mailing list