diff options
-rw-r--r-- | drivers/s390/scsi/zfcp_sysfs_adapter.c | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/drivers/s390/scsi/zfcp_sysfs_adapter.c b/drivers/s390/scsi/zfcp_sysfs_adapter.c index a4cae60f69d4..3985f1f1c291 100644 --- a/drivers/s390/scsi/zfcp_sysfs_adapter.c +++ b/drivers/s390/scsi/zfcp_sysfs_adapter.c | |||
@@ -40,51 +40,6 @@ ZFCP_DEFINE_ADAPTER_ATTR(in_recovery, "%d\n", atomic_test_mask | |||
40 | (ZFCP_STATUS_COMMON_ERP_INUSE, &adapter->status)); | 40 | (ZFCP_STATUS_COMMON_ERP_INUSE, &adapter->status)); |
41 | 41 | ||
42 | /** | 42 | /** |
43 | * zfcp_sysfs_port_add_store - add a port to sysfs tree | ||
44 | * @dev: pointer to belonging device | ||
45 | * @buf: pointer to input buffer | ||
46 | * @count: number of bytes in buffer | ||
47 | * | ||
48 | * Store function of the "port_add" attribute of an adapter. | ||
49 | */ | ||
50 | static ssize_t | ||
51 | zfcp_sysfs_port_add_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t count) | ||
52 | { | ||
53 | wwn_t wwpn; | ||
54 | char *endp; | ||
55 | struct zfcp_adapter *adapter; | ||
56 | struct zfcp_port *port; | ||
57 | int retval = -EINVAL; | ||
58 | |||
59 | down(&zfcp_data.config_sema); | ||
60 | |||
61 | adapter = dev_get_drvdata(dev); | ||
62 | if (atomic_test_mask(ZFCP_STATUS_COMMON_REMOVE, &adapter->status)) { | ||
63 | retval = -EBUSY; | ||
64 | goto out; | ||
65 | } | ||
66 | |||
67 | wwpn = simple_strtoull(buf, &endp, 0); | ||
68 | if ((endp + 1) < (buf + count)) | ||
69 | goto out; | ||
70 | |||
71 | port = zfcp_port_enqueue(adapter, wwpn, 0, 0); | ||
72 | if (!port) | ||
73 | goto out; | ||
74 | |||
75 | retval = 0; | ||
76 | |||
77 | zfcp_erp_port_reopen(port, 0, 91, NULL); | ||
78 | zfcp_erp_wait(port->adapter); | ||
79 | zfcp_port_put(port); | ||
80 | out: | ||
81 | up(&zfcp_data.config_sema); | ||
82 | return retval ? retval : (ssize_t) count; | ||
83 | } | ||
84 | |||
85 | static DEVICE_ATTR(port_add, S_IWUSR, NULL, zfcp_sysfs_port_add_store); | ||
86 | |||
87 | /** | ||
88 | * zfcp_sysfs_port_rescan - trigger manual port rescan | 43 | * zfcp_sysfs_port_rescan - trigger manual port rescan |
89 | * @dev: pointer to belonging device | 44 | * @dev: pointer to belonging device |
90 | * @attr: pointer to struct device_attribute | 45 | * @attr: pointer to struct device_attribute |
@@ -237,7 +192,6 @@ static struct attribute *zfcp_adapter_attrs[] = { | |||
237 | &dev_attr_failed.attr, | 192 | &dev_attr_failed.attr, |
238 | &dev_attr_in_recovery.attr, | 193 | &dev_attr_in_recovery.attr, |
239 | &dev_attr_port_remove.attr, | 194 | &dev_attr_port_remove.attr, |
240 | &dev_attr_port_add.attr, | ||
241 | &dev_attr_port_rescan.attr, | 195 | &dev_attr_port_rescan.attr, |
242 | &dev_attr_peer_wwnn.attr, | 196 | &dev_attr_peer_wwnn.attr, |
243 | &dev_attr_peer_wwpn.attr, | 197 | &dev_attr_peer_wwpn.attr, |