I've been looking over the 7.0 iicbus code, and I see that the iicbus
driver now uses an ivar to store the address for each child device
(cool!). The ivar is malloc'ed in the iicbus implementation of
BUS_ADD_CHILD, but it doesn't ever appear to be freed. And bus_if.m
doesn't appear to contain a reciprocal for BUS_ADD_CHILD (e.g.
BUS_DELETE_CHILD) that would take care of bus-specific cleanup. Are
ivars just leaked right now when device_delete_child() is called on
the child device, or is the caller of device_delete_child() expected
to free them?