Re: [PATCH] Illustration of warning explosion silliness

Jeff Garzik
2006-09-28T04:54:36Z

Andrew Morton wrote:
> On Wed, 27 Sep 2006 21:36:28 -0700
> Andrew Morton <akpm@osdl.org> wrote:
>
>> device_for_each_child()
>
> All that being said, device_for_each_child() is rather broken by design.
> It walks a list of items applying a function to them and bales out on
> first-error.

Or, like scsi_sysfs.c, it stops when it meets the first match. Which is
a common thing to do.

> There's no way in which the caller can know which items have been operated
> on, nor which items have yet to be operated on, nor which item experienced
> the failure. Any caller which is serious about error recovery presumably
> won't use it, unless the callback function happens to be something which
> makes no state changes.

A simple integer return error doesn't tell you all that information
either. The actor must obviously store that additional information
somewhere, if it cares.

But whatever. I give up. I'm going back to working on the libata
warnings each build spits out (iomap).

Jeff