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