From 8e5ab7710c2577467151e7c41acb13d29e9b09da Mon Sep 17 00:00:00 2001 From: Masanari Iida Date: Thu, 9 Feb 2012 23:37:43 +0900 Subject: [PATCH] --- yaml --- r: 291996 b: refs/heads/master c: a776ce7cfc905a1f8ebf9f7e87f0ba705e7efaef h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/infiniband/ulp/srp/ib_srp.c | 103 +++++++++++--------- trunk/drivers/infiniband/ulp/srpt/ib_srpt.c | 2 +- 3 files changed, 59 insertions(+), 48 deletions(-) diff --git a/[refs] b/[refs] index 2a1e707e4165..f85bf409cbf0 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 683b159a2eef6544d49020eb9c88a94157df7d2d +refs/heads/master: a776ce7cfc905a1f8ebf9f7e87f0ba705e7efaef diff --git a/trunk/drivers/infiniband/ulp/srp/ib_srp.c b/trunk/drivers/infiniband/ulp/srp/ib_srp.c index bcbf22ee0aa7..0bfa545675b8 100644 --- a/trunk/drivers/infiniband/ulp/srp/ib_srp.c +++ b/trunk/drivers/infiniband/ulp/srp/ib_srp.c @@ -30,8 +30,6 @@ * SOFTWARE. */ -#define pr_fmt(fmt) PFX fmt - #include #include #include @@ -167,7 +165,7 @@ static void srp_free_iu(struct srp_host *host, struct srp_iu *iu) static void srp_qp_event(struct ib_event *event, void *context) { - pr_debug("QP event %d\n", event->event); + printk(KERN_ERR PFX "QP event %d\n", event->event); } static int srp_init_qp(struct srp_target_port *target, @@ -474,21 +472,6 @@ static void srp_free_req_data(struct srp_target_port *target) } } -/** - * srp_del_scsi_host_attr() - Remove attributes defined in the host template. - * @shost: SCSI host whose attributes to remove from sysfs. - * - * Note: Any attributes defined in the host template and that did not exist - * before invocation of this function will be ignored. - */ -static void srp_del_scsi_host_attr(struct Scsi_Host *shost) -{ - struct device_attribute **attr; - - for (attr = shost->hostt->shost_attrs; attr && *attr; ++attr) - device_remove_file(&shost->shost_dev, *attr); -} - static void srp_remove_work(struct work_struct *work) { struct srp_target_port *target = @@ -501,7 +484,6 @@ static void srp_remove_work(struct work_struct *work) list_del(&target->list); spin_unlock(&target->srp_host->target_lock); - srp_del_scsi_host_attr(target->scsi_host); srp_remove_host(target->scsi_host); scsi_remove_host(target->scsi_host); ib_destroy_cm_id(target->cm_id); @@ -1694,6 +1676,10 @@ static ssize_t show_id_ext(struct device *dev, struct device_attribute *attr, { struct srp_target_port *target = host_to_target(class_to_shost(dev)); + if (target->state == SRP_TARGET_DEAD || + target->state == SRP_TARGET_REMOVED) + return -ENODEV; + return sprintf(buf, "0x%016llx\n", (unsigned long long) be64_to_cpu(target->id_ext)); } @@ -1703,6 +1689,10 @@ static ssize_t show_ioc_guid(struct device *dev, struct device_attribute *attr, { struct srp_target_port *target = host_to_target(class_to_shost(dev)); + if (target->state == SRP_TARGET_DEAD || + target->state == SRP_TARGET_REMOVED) + return -ENODEV; + return sprintf(buf, "0x%016llx\n", (unsigned long long) be64_to_cpu(target->ioc_guid)); } @@ -1712,6 +1702,10 @@ static ssize_t show_service_id(struct device *dev, { struct srp_target_port *target = host_to_target(class_to_shost(dev)); + if (target->state == SRP_TARGET_DEAD || + target->state == SRP_TARGET_REMOVED) + return -ENODEV; + return sprintf(buf, "0x%016llx\n", (unsigned long long) be64_to_cpu(target->service_id)); } @@ -1721,6 +1715,10 @@ static ssize_t show_pkey(struct device *dev, struct device_attribute *attr, { struct srp_target_port *target = host_to_target(class_to_shost(dev)); + if (target->state == SRP_TARGET_DEAD || + target->state == SRP_TARGET_REMOVED) + return -ENODEV; + return sprintf(buf, "0x%04x\n", be16_to_cpu(target->path.pkey)); } @@ -1729,6 +1727,10 @@ static ssize_t show_dgid(struct device *dev, struct device_attribute *attr, { struct srp_target_port *target = host_to_target(class_to_shost(dev)); + if (target->state == SRP_TARGET_DEAD || + target->state == SRP_TARGET_REMOVED) + return -ENODEV; + return sprintf(buf, "%pI6\n", target->path.dgid.raw); } @@ -1737,6 +1739,10 @@ static ssize_t show_orig_dgid(struct device *dev, { struct srp_target_port *target = host_to_target(class_to_shost(dev)); + if (target->state == SRP_TARGET_DEAD || + target->state == SRP_TARGET_REMOVED) + return -ENODEV; + return sprintf(buf, "%pI6\n", target->orig_dgid); } @@ -1745,6 +1751,10 @@ static ssize_t show_req_lim(struct device *dev, { struct srp_target_port *target = host_to_target(class_to_shost(dev)); + if (target->state == SRP_TARGET_DEAD || + target->state == SRP_TARGET_REMOVED) + return -ENODEV; + return sprintf(buf, "%d\n", target->req_lim); } @@ -1753,6 +1763,10 @@ static ssize_t show_zero_req_lim(struct device *dev, { struct srp_target_port *target = host_to_target(class_to_shost(dev)); + if (target->state == SRP_TARGET_DEAD || + target->state == SRP_TARGET_REMOVED) + return -ENODEV; + return sprintf(buf, "%d\n", target->zero_req_lim); } @@ -1975,7 +1989,7 @@ static int srp_parse_options(const char *buf, struct srp_target_port *target) goto out; } if (strlen(p) != 32) { - pr_warn("bad dest GID parameter '%s'\n", p); + printk(KERN_WARNING PFX "bad dest GID parameter '%s'\n", p); kfree(p); goto out; } @@ -1990,7 +2004,7 @@ static int srp_parse_options(const char *buf, struct srp_target_port *target) case SRP_OPT_PKEY: if (match_hex(args, &token)) { - pr_warn("bad P_Key parameter '%s'\n", p); + printk(KERN_WARNING PFX "bad P_Key parameter '%s'\n", p); goto out; } target->path.pkey = cpu_to_be16(token); @@ -2009,7 +2023,7 @@ static int srp_parse_options(const char *buf, struct srp_target_port *target) case SRP_OPT_MAX_SECT: if (match_int(args, &token)) { - pr_warn("bad max sect parameter '%s'\n", p); + printk(KERN_WARNING PFX "bad max sect parameter '%s'\n", p); goto out; } target->scsi_host->max_sectors = token; @@ -2017,8 +2031,7 @@ static int srp_parse_options(const char *buf, struct srp_target_port *target) case SRP_OPT_MAX_CMD_PER_LUN: if (match_int(args, &token)) { - pr_warn("bad max cmd_per_lun parameter '%s'\n", - p); + printk(KERN_WARNING PFX "bad max cmd_per_lun parameter '%s'\n", p); goto out; } target->scsi_host->cmd_per_lun = min(token, SRP_CMD_SQ_SIZE); @@ -2026,14 +2039,14 @@ static int srp_parse_options(const char *buf, struct srp_target_port *target) case SRP_OPT_IO_CLASS: if (match_hex(args, &token)) { - pr_warn("bad IO class parameter '%s'\n", p); + printk(KERN_WARNING PFX "bad IO class parameter '%s' \n", p); goto out; } if (token != SRP_REV10_IB_IO_CLASS && token != SRP_REV16A_IB_IO_CLASS) { - pr_warn("unknown IO class parameter value %x specified (use %x or %x).\n", - token, SRP_REV10_IB_IO_CLASS, - SRP_REV16A_IB_IO_CLASS); + printk(KERN_WARNING PFX "unknown IO class parameter value" + " %x specified (use %x or %x).\n", + token, SRP_REV10_IB_IO_CLASS, SRP_REV16A_IB_IO_CLASS); goto out; } target->io_class = token; @@ -2051,8 +2064,7 @@ static int srp_parse_options(const char *buf, struct srp_target_port *target) case SRP_OPT_CMD_SG_ENTRIES: if (match_int(args, &token) || token < 1 || token > 255) { - pr_warn("bad max cmd_sg_entries parameter '%s'\n", - p); + printk(KERN_WARNING PFX "bad max cmd_sg_entries parameter '%s'\n", p); goto out; } target->cmd_sg_cnt = token; @@ -2060,7 +2072,7 @@ static int srp_parse_options(const char *buf, struct srp_target_port *target) case SRP_OPT_ALLOW_EXT_SG: if (match_int(args, &token)) { - pr_warn("bad allow_ext_sg parameter '%s'\n", p); + printk(KERN_WARNING PFX "bad allow_ext_sg parameter '%s'\n", p); goto out; } target->allow_ext_sg = !!token; @@ -2069,16 +2081,15 @@ static int srp_parse_options(const char *buf, struct srp_target_port *target) case SRP_OPT_SG_TABLESIZE: if (match_int(args, &token) || token < 1 || token > SCSI_MAX_SG_CHAIN_SEGMENTS) { - pr_warn("bad max sg_tablesize parameter '%s'\n", - p); + printk(KERN_WARNING PFX "bad max sg_tablesize parameter '%s'\n", p); goto out; } target->sg_tablesize = token; break; default: - pr_warn("unknown parameter or missing value '%s' in target creation request\n", - p); + printk(KERN_WARNING PFX "unknown parameter or missing value " + "'%s' in target creation request\n", p); goto out; } } @@ -2089,8 +2100,9 @@ static int srp_parse_options(const char *buf, struct srp_target_port *target) for (i = 0; i < ARRAY_SIZE(srp_opt_tokens); ++i) if ((srp_opt_tokens[i].token & SRP_OPT_ALL) && !(srp_opt_tokens[i].token & opt_mask)) - pr_warn("target creation request is missing parameter '%s'\n", - srp_opt_tokens[i].pattern); + printk(KERN_WARNING PFX "target creation request is " + "missing parameter '%s'\n", + srp_opt_tokens[i].pattern); out: kfree(options); @@ -2137,7 +2149,7 @@ static ssize_t srp_create_target(struct device *dev, if (!host->srp_dev->fmr_pool && !target->allow_ext_sg && target->cmd_sg_cnt < target->sg_tablesize) { - pr_warn("No FMR pool and no external indirect descriptors, limiting sg_tablesize to cmd_sg_cnt\n"); + printk(KERN_WARNING PFX "No FMR pool and no external indirect descriptors, limiting sg_tablesize to cmd_sg_cnt\n"); target->sg_tablesize = target->cmd_sg_cnt; } @@ -2297,7 +2309,8 @@ static void srp_add_one(struct ib_device *device) return; if (ib_query_device(device, dev_attr)) { - pr_warn("Query device failed for %s\n", device->name); + printk(KERN_WARNING PFX "Query device failed for %s\n", + device->name); goto free_attr; } @@ -2416,7 +2429,6 @@ static void srp_remove_one(struct ib_device *device) list_for_each_entry_safe(target, tmp_target, &host->target_list, list) { - srp_del_scsi_host_attr(target->scsi_host); srp_remove_host(target->scsi_host); scsi_remove_host(target->scsi_host); srp_disconnect_target(target); @@ -2447,7 +2459,7 @@ static int __init srp_init_module(void) BUILD_BUG_ON(FIELD_SIZEOF(struct ib_wc, wr_id) < sizeof(void *)); if (srp_sg_tablesize) { - pr_warn("srp_sg_tablesize is deprecated, please use cmd_sg_entries\n"); + printk(KERN_WARNING PFX "srp_sg_tablesize is deprecated, please use cmd_sg_entries\n"); if (!cmd_sg_entries) cmd_sg_entries = srp_sg_tablesize; } @@ -2456,15 +2468,14 @@ static int __init srp_init_module(void) cmd_sg_entries = SRP_DEF_SG_TABLESIZE; if (cmd_sg_entries > 255) { - pr_warn("Clamping cmd_sg_entries to 255\n"); + printk(KERN_WARNING PFX "Clamping cmd_sg_entries to 255\n"); cmd_sg_entries = 255; } if (!indirect_sg_entries) indirect_sg_entries = cmd_sg_entries; else if (indirect_sg_entries < cmd_sg_entries) { - pr_warn("Bumping up indirect_sg_entries to match cmd_sg_entries (%u)\n", - cmd_sg_entries); + printk(KERN_WARNING PFX "Bumping up indirect_sg_entries to match cmd_sg_entries (%u)\n", cmd_sg_entries); indirect_sg_entries = cmd_sg_entries; } @@ -2475,7 +2486,7 @@ static int __init srp_init_module(void) ret = class_register(&srp_class); if (ret) { - pr_err("couldn't register class infiniband_srp\n"); + printk(KERN_ERR PFX "couldn't register class infiniband_srp\n"); srp_release_transport(ib_srp_transport_template); return ret; } @@ -2484,7 +2495,7 @@ static int __init srp_init_module(void) ret = ib_register_client(&srp_client); if (ret) { - pr_err("couldn't register IB client\n"); + printk(KERN_ERR PFX "couldn't register IB client\n"); srp_release_transport(ib_srp_transport_template); ib_sa_unregister_client(&srp_sa_client); class_unregister(&srp_class); diff --git a/trunk/drivers/infiniband/ulp/srpt/ib_srpt.c b/trunk/drivers/infiniband/ulp/srpt/ib_srpt.c index 2b73d43cd691..ebe33d960d77 100644 --- a/trunk/drivers/infiniband/ulp/srpt/ib_srpt.c +++ b/trunk/drivers/infiniband/ulp/srpt/ib_srpt.c @@ -3450,7 +3450,7 @@ static struct se_node_acl *srpt_alloc_fabric_acl(struct se_portal_group *se_tpg) nacl = kzalloc(sizeof(struct srpt_node_acl), GFP_KERNEL); if (!nacl) { - printk(KERN_ERR "Unable to alocate struct srpt_node_acl\n"); + printk(KERN_ERR "Unable to allocate struct srpt_node_acl\n"); return NULL; }