Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a1b449de authored by Swen Schillig's avatar Swen Schillig Committed by James Bottomley
Browse files

[SCSI] zfcp: Simplify get_adapter_by_busid



Call the helper function from cio instead looping through all zfcp
adapters.

Signed-off-by: default avatarSwen Schillig <swen@vnet.ibm.com>
Signed-off-by: default avatarChristof Schmitt <christof.schmitt@de.ibm.com>
Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
parent 7ba58c9c
Loading
Loading
Loading
Loading
+0 −13
Original line number Diff line number Diff line
@@ -106,19 +106,6 @@ static int __init zfcp_device_setup(char *devstr)
	return 0;
}

static struct zfcp_adapter *zfcp_get_adapter_by_busid(char *bus_id)
{
	struct zfcp_adapter *adapter;

	list_for_each_entry(adapter, &zfcp_data.adapter_list_head, list)
		if ((strncmp(bus_id, adapter->ccw_device->dev.bus_id,
			     BUS_ID_SIZE) == 0) &&
		    !(atomic_read(&adapter->status) &
		      ZFCP_STATUS_COMMON_REMOVE))
		    return adapter;
	return NULL;
}

static void __init zfcp_init_device_configure(void)
{
	struct zfcp_adapter *adapter;
+17 −0
Original line number Diff line number Diff line
@@ -224,3 +224,20 @@ int __init zfcp_ccw_register(void)
{
	return ccw_driver_register(&zfcp_ccw_driver);
}

/**
 * zfcp_get_adapter_by_busid - find zfcp_adapter struct
 * @busid: bus id string of zfcp adapter to find
 */
struct zfcp_adapter *zfcp_get_adapter_by_busid(char *busid)
{
	struct ccw_device *ccw_device;
	struct zfcp_adapter *adapter = NULL;

	ccw_device = get_ccwdev_by_busid(&zfcp_ccw_driver, busid);
	if (ccw_device) {
		adapter = dev_get_drvdata(&ccw_device->dev);
		put_device(&ccw_device->dev);
	}
	return adapter;
}
+1 −0
Original line number Diff line number Diff line
@@ -27,6 +27,7 @@ extern int zfcp_sg_setup_table(struct scatterlist *, int);

/* zfcp_ccw.c */
extern int zfcp_ccw_register(void);
extern struct zfcp_adapter *zfcp_get_adapter_by_busid(char *);

/* zfcp_cfdc.c */
extern struct miscdevice zfcp_cfdc_misc;