usbmon_notify_bus_add (bus);
static int usb_register_bus(struct usb_bus *bus){	int busnum;	down (&usb_bus_list_lock);	busnum = find_next_zero_bit (busmap.busmap, USB_MAXBUS, 1);	if (busnum < USB_MAXBUS) {		set_bit (busnum, busmap.busmap);		bus->busnum = busnum;	} else {		printk (KERN_ERR "%s: too many buses\n", usbcore_name);		up(&usb_bus_list_lock);		return -E2BIG;	}	bus->class_dev = class_device_create(usb_host_class, NULL, MKDEV(0,0),					     bus->controller, "usb_host%d", busnum);	if (IS_ERR(bus->class_dev)) {		clear_bit(busnum, busmap.busmap);		up(&usb_bus_list_lock);		return PTR_ERR(bus->class_dev);	}	class_set_devdata(bus->class_dev, bus);	/* Add it to the local list of buses */	list_add (&bus->bus_list, &usb_bus_list);	up (&usb_bus_list_lock);	usb_notify_add_bus(bus);	usbmon_notify_bus_add (bus);	dev_info (bus->controller, "new USB bus registered, assigned bus number %d\n", bus->busnum);	return 0;}