down_write(&dev->bus->subsys.rwsem); 
void bus_remove_device(struct device * dev){	if (dev->bus) {		sysfs_remove_link(&dev->kobj, "bus");		sysfs_remove_link(&dev->bus->devices.kobj, dev->bus_id);		device_remove_attrs(dev->bus, dev);		klist_remove(&dev->knode_bus);		down_write(&dev->bus->subsys.rwsem);		pr_debug("bus %s: remove device %s\n", dev->bus->name, dev->bus_id);		device_release_driver(dev);		list_del_init(&dev->bus_list);		up_write(&dev->bus->subsys.rwsem);		put_bus(dev->bus);	}}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/6eded061b1263847aedac7469339e99579aec5e5/bus.c/clean/drivers/base/bus.c