aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/s390
diff options
context:
space:
mode:
authorMartin Peschke <mp3@de.ibm.com>2008-06-10 12:21:01 -0400
committerJames Bottomley <James.Bottomley@HansenPartnership.com>2008-07-12 09:22:26 -0400
commit235f7f25f4928f5075dbebdfb9ca2c5d90db882c (patch)
tree2efa786b579838f293f1d4470ce62e932571cbad /drivers/s390
parentcc8c282963bd258a5bf49d3aa52675a4ae6d31f6 (diff)
[SCSI] zfcp: Remove sysfs attribute port_add
With the automatic scanning of remote ports in place, there is no need to add remote ports manually. So, remove the port_add attribute. Signed-off-by: Martin Peschke <mp3@de.ibm.com> Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/s390')
-rw-r--r--drivers/s390/scsi/zfcp_sysfs_adapter.c46
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 */
50static ssize_t
51zfcp_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
85static 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,