driver core fixes: bus_add_device() cleanup on error