struct list_head * entry, * next; list_for_each_safe(entry, next, &drv->devices) { struct device * dev = container_of(entry, struct device, driver_list); 
while (!list_empty(&drv->devices)) { struct device * dev = container_of(drv->devices.next, struct device, driver_list); 
static void driver_detach(struct device_driver * drv){	struct list_head * entry, * next;	list_for_each_safe(entry, next, &drv->devices) {		struct device * dev = container_of(entry, struct device, driver_list);		device_release_driver(dev);	}}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/b2d84f078a8be40f5ae3b4d2ac001e2a7f45fe4f/bus.c/buggy/drivers/base/bus.c