Subject: Re: CVS commit: src/sys
To: None <source-changes@NetBSD.org>
From: David Young <dyoung@pobox.com>
List: source-changes
Date: 02/06/2008 14:44:22
On Wed, Feb 06, 2008 at 08:24:17PM +0000, Matthias Drochner wrote:
> 
> Module Name:	src
> Committed By:	drochner
> Date:		Wed Feb  6 20:24:17 UTC 2008
> 
> Modified Files:
> 	src/sys/kern: kern_drvctl.c subr_autoconf.c
> 	src/sys/sys: device.h
> 
> Log Message:
> The tricks done in device_foreach_child() still don't make it safe to use
> by config_detach_children(), because the latter can work recursively
> and remove any number of devices, so rewrite config_detach_children()
> to restart list traversal after each call of config_detach(), and since
> only one user of device_foreach_child() is left (in kern_drvctl.c),
> and it is simpler to open-code the loop than to deal with callbacks,
> just remove it.

Good catch!  Please put device_foreach_child() back, though, I am
using that.

BTW, I believe that you can safely walk the list backwards.

Dave

-- 
David Young             OJC Technologies
dyoung@ojctech.com      Urbana, IL * (217) 278-3933 ext 24