struct subchannel *sch; struct list_head *entry;
get_subchannel_by_schid(int irq){	struct subchannel *sch;	struct list_head *entry;	struct device *dev;	if (!get_bus(&css_bus_type))		return NULL;	down_read(&css_bus_type.subsys.rwsem);	sch = NULL;	list_for_each(entry, &css_bus_type.devices.list) {		dev = get_device(container_of(entry,					      struct device, bus_list));		if (!dev)			continue;		sch = to_subchannel(dev);		if (sch->irq == irq)			break;		put_device(dev);		sch = NULL;	}	up_read(&css_bus_type.subsys.rwsem);	put_bus(&css_bus_type);	return sch;}