Commit 15ba7806 authored by John Garry's avatar John Garry Committed by Martin K. Petersen

scsi: libsas: Drop SAS_DPRINTK() and revise logs levels

Like sas_printk() did previously, SAS_DPRINTK() offers little value now
that libsas logs already have the "sas" prefix through pr_fmt(fmt). So it
can be dropped.

However, after reviewing some logs in libsas, it is noticed that debug
level is too low in many instances.

So this change drops SAS_DPRINTK() and revises some logs to a more
appropriate level. However many stay at debug level, although some
are significantly promoted.

We add -DDEBUG for compilation so that we keep the debug messages by
default, as before.

All the pre-existing checkpatch errors for spanning messages across
multiple lines are also fixed.

Finally, all other references to printk() [apart from special formatting
in sas_ata.c] are removed and replaced with appropriate pr_xxx().
Suggested-by: default avatarJoe Perches <joe@perches.com>
Signed-off-by: default avatarJohn Garry <john.garry@huawei.com>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent 71a4a992
...@@ -32,3 +32,5 @@ libsas-y += sas_init.o \ ...@@ -32,3 +32,5 @@ libsas-y += sas_init.o \
sas_task.o sas_task.o
libsas-$(CONFIG_SCSI_SAS_ATA) += sas_ata.o libsas-$(CONFIG_SCSI_SAS_ATA) += sas_ata.o
libsas-$(CONFIG_SCSI_SAS_HOST_SMP) += sas_host_smp.o libsas-$(CONFIG_SCSI_SAS_HOST_SMP) += sas_host_smp.o
ccflags-y := -DDEBUG
...@@ -75,7 +75,7 @@ static enum ata_completion_errors sas_to_ata_err(struct task_status_struct *ts) ...@@ -75,7 +75,7 @@ static enum ata_completion_errors sas_to_ata_err(struct task_status_struct *ts)
case SAS_OPEN_TO: case SAS_OPEN_TO:
case SAS_OPEN_REJECT: case SAS_OPEN_REJECT:
SAS_DPRINTK("%s: Saw error %d. What to do?\n", pr_warn("%s: Saw error %d. What to do?\n",
__func__, ts->stat); __func__, ts->stat);
return AC_ERR_OTHER; return AC_ERR_OTHER;
...@@ -151,8 +151,7 @@ static void sas_ata_task_done(struct sas_task *task) ...@@ -151,8 +151,7 @@ static void sas_ata_task_done(struct sas_task *task)
} else { } else {
ac = sas_to_ata_err(stat); ac = sas_to_ata_err(stat);
if (ac) { if (ac) {
SAS_DPRINTK("%s: SAS error %x\n", __func__, pr_warn("%s: SAS error %x\n", __func__, stat->stat);
stat->stat);
/* We saw a SAS error. Send a vague error. */ /* We saw a SAS error. Send a vague error. */
if (!link->sactive) { if (!link->sactive) {
qc->err_mask = ac; qc->err_mask = ac;
...@@ -237,7 +236,7 @@ static unsigned int sas_ata_qc_issue(struct ata_queued_cmd *qc) ...@@ -237,7 +236,7 @@ static unsigned int sas_ata_qc_issue(struct ata_queued_cmd *qc)
ret = i->dft->lldd_execute_task(task, GFP_ATOMIC); ret = i->dft->lldd_execute_task(task, GFP_ATOMIC);
if (ret) { if (ret) {
SAS_DPRINTK("lldd_execute_task returned: %d\n", ret); pr_debug("lldd_execute_task returned: %d\n", ret);
if (qc->scsicmd) if (qc->scsicmd)
ASSIGN_SAS_TASK(qc->scsicmd, NULL); ASSIGN_SAS_TASK(qc->scsicmd, NULL);
...@@ -282,8 +281,8 @@ int sas_get_ata_info(struct domain_device *dev, struct ex_phy *phy) ...@@ -282,8 +281,8 @@ int sas_get_ata_info(struct domain_device *dev, struct ex_phy *phy)
res = sas_get_report_phy_sata(dev->parent, phy->phy_id, res = sas_get_report_phy_sata(dev->parent, phy->phy_id,
&dev->sata_dev.rps_resp); &dev->sata_dev.rps_resp);
if (res) { if (res) {
SAS_DPRINTK("report phy sata to %016llx:0x%x returned " pr_debug("report phy sata to %016llx:0x%x returned 0x%x\n",
"0x%x\n", SAS_ADDR(dev->parent->sas_addr), SAS_ADDR(dev->parent->sas_addr),
phy->phy_id, res); phy->phy_id, res);
return res; return res;
} }
...@@ -431,8 +430,7 @@ static void sas_ata_internal_abort(struct sas_task *task) ...@@ -431,8 +430,7 @@ static void sas_ata_internal_abort(struct sas_task *task)
if (task->task_state_flags & SAS_TASK_STATE_ABORTED || if (task->task_state_flags & SAS_TASK_STATE_ABORTED ||
task->task_state_flags & SAS_TASK_STATE_DONE) { task->task_state_flags & SAS_TASK_STATE_DONE) {
spin_unlock_irqrestore(&task->task_state_lock, flags); spin_unlock_irqrestore(&task->task_state_lock, flags);
SAS_DPRINTK("%s: Task %p already finished.\n", __func__, pr_debug("%s: Task %p already finished.\n", __func__, task);
task);
goto out; goto out;
} }
task->task_state_flags |= SAS_TASK_STATE_ABORTED; task->task_state_flags |= SAS_TASK_STATE_ABORTED;
...@@ -452,7 +450,7 @@ static void sas_ata_internal_abort(struct sas_task *task) ...@@ -452,7 +450,7 @@ static void sas_ata_internal_abort(struct sas_task *task)
* aborted ata tasks, otherwise we (likely) leak the sas task * aborted ata tasks, otherwise we (likely) leak the sas task
* here * here
*/ */
SAS_DPRINTK("%s: Task %p leaked.\n", __func__, task); pr_warn("%s: Task %p leaked.\n", __func__, task);
if (!(task->task_state_flags & SAS_TASK_STATE_DONE)) if (!(task->task_state_flags & SAS_TASK_STATE_DONE))
task->task_state_flags &= ~SAS_TASK_STATE_ABORTED; task->task_state_flags &= ~SAS_TASK_STATE_ABORTED;
...@@ -558,7 +556,7 @@ int sas_ata_init(struct domain_device *found_dev) ...@@ -558,7 +556,7 @@ int sas_ata_init(struct domain_device *found_dev)
ata_host = kzalloc(sizeof(*ata_host), GFP_KERNEL); ata_host = kzalloc(sizeof(*ata_host), GFP_KERNEL);
if (!ata_host) { if (!ata_host) {
SAS_DPRINTK("ata host alloc failed.\n"); pr_err("ata host alloc failed.\n");
return -ENOMEM; return -ENOMEM;
} }
...@@ -566,7 +564,7 @@ int sas_ata_init(struct domain_device *found_dev) ...@@ -566,7 +564,7 @@ int sas_ata_init(struct domain_device *found_dev)
ap = ata_sas_port_alloc(ata_host, &sata_port_info, shost); ap = ata_sas_port_alloc(ata_host, &sata_port_info, shost);
if (!ap) { if (!ap) {
SAS_DPRINTK("ata_sas_port_alloc failed.\n"); pr_err("ata_sas_port_alloc failed.\n");
rc = -ENODEV; rc = -ENODEV;
goto free_host; goto free_host;
} }
......
...@@ -128,7 +128,7 @@ static int sas_get_port_device(struct asd_sas_port *port) ...@@ -128,7 +128,7 @@ static int sas_get_port_device(struct asd_sas_port *port)
SAS_FANOUT_EXPANDER_DEVICE); SAS_FANOUT_EXPANDER_DEVICE);
break; break;
default: default:
printk("ERROR: Unidentified device type %d\n", dev->dev_type); pr_warn("ERROR: Unidentified device type %d\n", dev->dev_type);
rphy = NULL; rphy = NULL;
break; break;
} }
...@@ -186,8 +186,7 @@ int sas_notify_lldd_dev_found(struct domain_device *dev) ...@@ -186,8 +186,7 @@ int sas_notify_lldd_dev_found(struct domain_device *dev)
res = i->dft->lldd_dev_found(dev); res = i->dft->lldd_dev_found(dev);
if (res) { if (res) {
printk("sas: driver on pcidev %s cannot handle " pr_warn("driver on pcidev %s cannot handle device %llx, error:%d\n",
"device %llx, error:%d\n",
dev_name(sas_ha->dev), dev_name(sas_ha->dev),
SAS_ADDR(dev->sas_addr), res); SAS_ADDR(dev->sas_addr), res);
} }
...@@ -456,7 +455,7 @@ static void sas_discover_domain(struct work_struct *work) ...@@ -456,7 +455,7 @@ static void sas_discover_domain(struct work_struct *work)
return; return;
dev = port->port_dev; dev = port->port_dev;
SAS_DPRINTK("DOING DISCOVERY on port %d, pid:%d\n", port->id, pr_debug("DOING DISCOVERY on port %d, pid:%d\n", port->id,
task_pid_nr(current)); task_pid_nr(current));
switch (dev->dev_type) { switch (dev->dev_type) {
...@@ -473,12 +472,12 @@ static void sas_discover_domain(struct work_struct *work) ...@@ -473,12 +472,12 @@ static void sas_discover_domain(struct work_struct *work)
error = sas_discover_sata(dev); error = sas_discover_sata(dev);
break; break;
#else #else
SAS_DPRINTK("ATA device seen but CONFIG_SCSI_SAS_ATA=N so cannot attach\n"); pr_notice("ATA device seen but CONFIG_SCSI_SAS_ATA=N so cannot attach\n");
/* Fall through */ /* Fall through */
#endif #endif
default: default:
error = -ENXIO; error = -ENXIO;
SAS_DPRINTK("unhandled device %d\n", dev->dev_type); pr_err("unhandled device %d\n", dev->dev_type);
break; break;
} }
...@@ -495,7 +494,7 @@ static void sas_discover_domain(struct work_struct *work) ...@@ -495,7 +494,7 @@ static void sas_discover_domain(struct work_struct *work)
sas_probe_devices(port); sas_probe_devices(port);
SAS_DPRINTK("DONE DISCOVERY on port %d, pid:%d, result:%d\n", port->id, pr_debug("DONE DISCOVERY on port %d, pid:%d, result:%d\n", port->id,
task_pid_nr(current), error); task_pid_nr(current), error);
} }
...@@ -510,21 +509,21 @@ static void sas_revalidate_domain(struct work_struct *work) ...@@ -510,21 +509,21 @@ static void sas_revalidate_domain(struct work_struct *work)
/* prevent revalidation from finding sata links in recovery */ /* prevent revalidation from finding sata links in recovery */
mutex_lock(&ha->disco_mutex); mutex_lock(&ha->disco_mutex);
if (test_bit(SAS_HA_ATA_EH_ACTIVE, &ha->state)) { if (test_bit(SAS_HA_ATA_EH_ACTIVE, &ha->state)) {
SAS_DPRINTK("REVALIDATION DEFERRED on port %d, pid:%d\n", pr_debug("REVALIDATION DEFERRED on port %d, pid:%d\n",
port->id, task_pid_nr(current)); port->id, task_pid_nr(current));
goto out; goto out;
} }
clear_bit(DISCE_REVALIDATE_DOMAIN, &port->disc.pending); clear_bit(DISCE_REVALIDATE_DOMAIN, &port->disc.pending);
SAS_DPRINTK("REVALIDATING DOMAIN on port %d, pid:%d\n", port->id, pr_debug("REVALIDATING DOMAIN on port %d, pid:%d\n", port->id,
task_pid_nr(current)); task_pid_nr(current));
if (ddev && (ddev->dev_type == SAS_FANOUT_EXPANDER_DEVICE || if (ddev && (ddev->dev_type == SAS_FANOUT_EXPANDER_DEVICE ||
ddev->dev_type == SAS_EDGE_EXPANDER_DEVICE)) ddev->dev_type == SAS_EDGE_EXPANDER_DEVICE))
res = sas_ex_revalidate_domain(ddev); res = sas_ex_revalidate_domain(ddev);
SAS_DPRINTK("done REVALIDATING DOMAIN on port %d, pid:%d, res 0x%x\n", pr_debug("done REVALIDATING DOMAIN on port %d, pid:%d, res 0x%x\n",
port->id, task_pid_nr(current), res); port->id, task_pid_nr(current), res);
out: out:
mutex_unlock(&ha->disco_mutex); mutex_unlock(&ha->disco_mutex);
......
...@@ -99,17 +99,17 @@ static int smp_execute_task_sg(struct domain_device *dev, ...@@ -99,17 +99,17 @@ static int smp_execute_task_sg(struct domain_device *dev,
if (res) { if (res) {
del_timer(&task->slow_task->timer); del_timer(&task->slow_task->timer);
SAS_DPRINTK("executing SMP task failed:%d\n", res); pr_notice("executing SMP task failed:%d\n", res);
break; break;
} }
wait_for_completion(&task->slow_task->completion); wait_for_completion(&task->slow_task->completion);
res = -ECOMM; res = -ECOMM;
if ((task->task_state_flags & SAS_TASK_STATE_ABORTED)) { if ((task->task_state_flags & SAS_TASK_STATE_ABORTED)) {
SAS_DPRINTK("smp task timed out or aborted\n"); pr_notice("smp task timed out or aborted\n");
i->dft->lldd_abort_task(task); i->dft->lldd_abort_task(task);
if (!(task->task_state_flags & SAS_TASK_STATE_DONE)) { if (!(task->task_state_flags & SAS_TASK_STATE_DONE)) {
SAS_DPRINTK("SMP task aborted and not done\n"); pr_notice("SMP task aborted and not done\n");
break; break;
} }
} }
...@@ -134,8 +134,8 @@ static int smp_execute_task_sg(struct domain_device *dev, ...@@ -134,8 +134,8 @@ static int smp_execute_task_sg(struct domain_device *dev,
task->task_status.stat == SAS_DEVICE_UNKNOWN) task->task_status.stat == SAS_DEVICE_UNKNOWN)
break; break;
else { else {
SAS_DPRINTK("%s: task to dev %016llx response: 0x%x " pr_notice("%s: task to dev %016llx response: 0x%x status 0x%x\n",
"status 0x%x\n", __func__, __func__,
SAS_ADDR(dev->sas_addr), SAS_ADDR(dev->sas_addr),
task->task_status.resp, task->task_status.resp,
task->task_status.stat); task->task_status.stat);
...@@ -347,7 +347,7 @@ static void sas_set_ex_phy(struct domain_device *dev, int phy_id, void *rsp) ...@@ -347,7 +347,7 @@ static void sas_set_ex_phy(struct domain_device *dev, int phy_id, void *rsp)
if (test_bit(SAS_HA_ATA_EH_ACTIVE, &ha->state)) if (test_bit(SAS_HA_ATA_EH_ACTIVE, &ha->state))
set_bit(DISCE_REVALIDATE_DOMAIN, &dev->port->disc.pending); set_bit(DISCE_REVALIDATE_DOMAIN, &dev->port->disc.pending);
SAS_DPRINTK("%sex %016llx phy%02d:%c:%X attached: %016llx (%s)\n", pr_debug("%sex %016llx phy%02d:%c:%X attached: %016llx (%s)\n",
test_bit(SAS_HA_ATA_EH_ACTIVE, &ha->state) ? "ata: " : "", test_bit(SAS_HA_ATA_EH_ACTIVE, &ha->state) ? "ata: " : "",
SAS_ADDR(dev->sas_addr), phy->phy_id, SAS_ADDR(dev->sas_addr), phy->phy_id,
sas_route_char(dev, phy), phy->linkrate, sas_route_char(dev, phy), phy->linkrate,
...@@ -500,11 +500,11 @@ static int sas_ex_general(struct domain_device *dev) ...@@ -500,11 +500,11 @@ static int sas_ex_general(struct domain_device *dev)
RG_RESP_SIZE); RG_RESP_SIZE);
if (res) { if (res) {
SAS_DPRINTK("RG to ex %016llx failed:0x%x\n", pr_notice("RG to ex %016llx failed:0x%x\n",
SAS_ADDR(dev->sas_addr), res); SAS_ADDR(dev->sas_addr), res);
goto out; goto out;
} else if (rg_resp->result != SMP_RESP_FUNC_ACC) { } else if (rg_resp->result != SMP_RESP_FUNC_ACC) {
SAS_DPRINTK("RG:ex %016llx returned SMP result:0x%x\n", pr_debug("RG:ex %016llx returned SMP result:0x%x\n",
SAS_ADDR(dev->sas_addr), rg_resp->result); SAS_ADDR(dev->sas_addr), rg_resp->result);
res = rg_resp->result; res = rg_resp->result;
goto out; goto out;
...@@ -513,7 +513,7 @@ static int sas_ex_general(struct domain_device *dev) ...@@ -513,7 +513,7 @@ static int sas_ex_general(struct domain_device *dev)
ex_assign_report_general(dev, rg_resp); ex_assign_report_general(dev, rg_resp);
if (dev->ex_dev.configuring) { if (dev->ex_dev.configuring) {
SAS_DPRINTK("RG: ex %llx self-configuring...\n", pr_debug("RG: ex %llx self-configuring...\n",
SAS_ADDR(dev->sas_addr)); SAS_ADDR(dev->sas_addr));
schedule_timeout_interruptible(5*HZ); schedule_timeout_interruptible(5*HZ);
} else } else
...@@ -568,11 +568,11 @@ static int sas_ex_manuf_info(struct domain_device *dev) ...@@ -568,11 +568,11 @@ static int sas_ex_manuf_info(struct domain_device *dev)
res = smp_execute_task(dev, mi_req, MI_REQ_SIZE, mi_resp,MI_RESP_SIZE); res = smp_execute_task(dev, mi_req, MI_REQ_SIZE, mi_resp,MI_RESP_SIZE);
if (res) { if (res) {
SAS_DPRINTK("MI: ex %016llx failed:0x%x\n", pr_notice("MI: ex %016llx failed:0x%x\n",
SAS_ADDR(dev->sas_addr), res); SAS_ADDR(dev->sas_addr), res);
goto out; goto out;
} else if (mi_resp[2] != SMP_RESP_FUNC_ACC) { } else if (mi_resp[2] != SMP_RESP_FUNC_ACC) {
SAS_DPRINTK("MI ex %016llx returned SMP result:0x%x\n", pr_debug("MI ex %016llx returned SMP result:0x%x\n",
SAS_ADDR(dev->sas_addr), mi_resp[2]); SAS_ADDR(dev->sas_addr), mi_resp[2]);
goto out; goto out;
} }
...@@ -836,8 +836,7 @@ static struct domain_device *sas_ex_discover_end_dev( ...@@ -836,8 +836,7 @@ static struct domain_device *sas_ex_discover_end_dev(
res = sas_discover_sata(child); res = sas_discover_sata(child);
if (res) { if (res) {
SAS_DPRINTK("sas_discover_sata() for device %16llx at " pr_notice("sas_discover_sata() for device %16llx at %016llx:0x%x returned 0x%x\n",
"%016llx:0x%x returned 0x%x\n",
SAS_ADDR(child->sas_addr), SAS_ADDR(child->sas_addr),
SAS_ADDR(parent->sas_addr), phy_id, res); SAS_ADDR(parent->sas_addr), phy_id, res);
goto out_list_del; goto out_list_del;
...@@ -861,14 +860,13 @@ static struct domain_device *sas_ex_discover_end_dev( ...@@ -861,14 +860,13 @@ static struct domain_device *sas_ex_discover_end_dev(
res = sas_discover_end_dev(child); res = sas_discover_end_dev(child);
if (res) { if (res) {
SAS_DPRINTK("sas_discover_end_dev() for device %16llx " pr_notice("sas_discover_end_dev() for device %16llx at %016llx:0x%x returned 0x%x\n",
"at %016llx:0x%x returned 0x%x\n",
SAS_ADDR(child->sas_addr), SAS_ADDR(child->sas_addr),
SAS_ADDR(parent->sas_addr), phy_id, res); SAS_ADDR(parent->sas_addr), phy_id, res);
goto out_list_del; goto out_list_del;
} }
} else { } else {
SAS_DPRINTK("target proto 0x%x at %016llx:0x%x not handled\n", pr_notice("target proto 0x%x at %016llx:0x%x not handled\n",
phy->attached_tproto, SAS_ADDR(parent->sas_addr), phy->attached_tproto, SAS_ADDR(parent->sas_addr),
phy_id); phy_id);
goto out_free; goto out_free;
...@@ -927,8 +925,7 @@ static struct domain_device *sas_ex_discover_expander( ...@@ -927,8 +925,7 @@ static struct domain_device *sas_ex_discover_expander(
int res; int res;
if (phy->routing_attr == DIRECT_ROUTING) { if (phy->routing_attr == DIRECT_ROUTING) {
SAS_DPRINTK("ex %016llx:0x%x:D <--> ex %016llx:0x%x is not " pr_warn("ex %016llx:0x%x:D <--> ex %016llx:0x%x is not allowed\n",
"allowed\n",
SAS_ADDR(parent->sas_addr), phy_id, SAS_ADDR(parent->sas_addr), phy_id,
SAS_ADDR(phy->attached_sas_addr), SAS_ADDR(phy->attached_sas_addr),
phy->attached_phy_id); phy->attached_phy_id);
...@@ -1038,8 +1035,8 @@ static int sas_ex_discover_dev(struct domain_device *dev, int phy_id) ...@@ -1038,8 +1035,8 @@ static int sas_ex_discover_dev(struct domain_device *dev, int phy_id)
ex_phy->attached_dev_type != SAS_FANOUT_EXPANDER_DEVICE && ex_phy->attached_dev_type != SAS_FANOUT_EXPANDER_DEVICE &&
ex_phy->attached_dev_type != SAS_EDGE_EXPANDER_DEVICE && ex_phy->attached_dev_type != SAS_EDGE_EXPANDER_DEVICE &&
ex_phy->attached_dev_type != SAS_SATA_PENDING) { ex_phy->attached_dev_type != SAS_SATA_PENDING) {
SAS_DPRINTK("unknown device type(0x%x) attached to ex %016llx " pr_warn("unknown device type(0x%x) attached to ex %016llx phy 0x%x\n",
"phy 0x%x\n", ex_phy->attached_dev_type, ex_phy->attached_dev_type,
SAS_ADDR(dev->sas_addr), SAS_ADDR(dev->sas_addr),
phy_id); phy_id);
return 0; return 0;
...@@ -1047,15 +1044,14 @@ static int sas_ex_discover_dev(struct domain_device *dev, int phy_id) ...@@ -1047,15 +1044,14 @@ static int sas_ex_discover_dev(struct domain_device *dev, int phy_id)
res = sas_configure_routing(dev, ex_phy->attached_sas_addr); res = sas_configure_routing(dev, ex_phy->attached_sas_addr);
if (res) { if (res) {
SAS_DPRINTK("configure routing for dev %016llx " pr_notice("configure routing for dev %016llx reported 0x%x. Forgotten\n",
"reported 0x%x. Forgotten\n",
SAS_ADDR(ex_phy->attached_sas_addr), res); SAS_ADDR(ex_phy->attached_sas_addr), res);
sas_disable_routing(dev, ex_phy->attached_sas_addr); sas_disable_routing(dev, ex_phy->attached_sas_addr);
return res; return res;
} }
if (sas_ex_join_wide_port(dev, phy_id)) { if (sas_ex_join_wide_port(dev, phy_id)) {
SAS_DPRINTK("Attaching ex phy%d to wide port %016llx\n", pr_debug("Attaching ex phy%d to wide port %016llx\n",
phy_id, SAS_ADDR(ex_phy->attached_sas_addr)); phy_id, SAS_ADDR(ex_phy->attached_sas_addr));
return res; return res;
} }
...@@ -1067,8 +1063,7 @@ static int sas_ex_discover_dev(struct domain_device *dev, int phy_id) ...@@ -1067,8 +1063,7 @@ static int sas_ex_discover_dev(struct domain_device *dev, int phy_id)
break; break;
case SAS_FANOUT_EXPANDER_DEVICE: case SAS_FANOUT_EXPANDER_DEVICE:
if (SAS_ADDR(dev->port->disc.fanout_sas_addr)) { if (SAS_ADDR(dev->port->disc.fanout_sas_addr)) {
SAS_DPRINTK("second fanout expander %016llx phy 0x%x " pr_debug("second fanout expander %016llx phy 0x%x attached to ex %016llx phy 0x%x\n",
"attached to ex %016llx phy 0x%x\n",
SAS_ADDR(ex_phy->attached_sas_addr), SAS_ADDR(ex_phy->attached_sas_addr),
ex_phy->attached_phy_id, ex_phy->attached_phy_id,
SAS_ADDR(dev->sas_addr), SAS_ADDR(dev->sas_addr),
...@@ -1101,9 +1096,8 @@ static int sas_ex_discover_dev(struct domain_device *dev, int phy_id) ...@@ -1101,9 +1096,8 @@ static int sas_ex_discover_dev(struct domain_device *dev, int phy_id)
SAS_ADDR(child->sas_addr)) { SAS_ADDR(child->sas_addr)) {
ex->ex_phy[i].phy_state= PHY_DEVICE_DISCOVERED; ex->ex_phy[i].phy_state= PHY_DEVICE_DISCOVERED;
if (sas_ex_join_wide_port(dev, i)) if (sas_ex_join_wide_port(dev, i))
SAS_DPRINTK("Attaching ex phy%d to wide port %016llx\n", pr_debug("Attaching ex phy%d to wide port %016llx\n",
i, SAS_ADDR(ex->ex_phy[i].attached_sas_addr)); i, SAS_ADDR(ex->ex_phy[i].attached_sas_addr));
} }
} }
} }
...@@ -1154,9 +1148,7 @@ static int sas_check_level_subtractive_boundary(struct domain_device *dev) ...@@ -1154,9 +1148,7 @@ static int sas_check_level_subtractive_boundary(struct domain_device *dev)
if (sas_find_sub_addr(child, s2) && if (sas_find_sub_addr(child, s2) &&
(SAS_ADDR(sub_addr) != SAS_ADDR(s2))) { (SAS_ADDR(sub_addr) != SAS_ADDR(s2))) {
SAS_DPRINTK("ex %016llx->%016llx-?->%016llx " pr_notice("ex %016llx->%016llx-?->%016llx diverges from subtractive boundary %016llx\n",
"diverges from subtractive "
"boundary %016llx\n",
SAS_ADDR(dev->sas_addr), SAS_ADDR(dev->sas_addr),
SAS_ADDR(child->sas_addr), SAS_ADDR(child->sas_addr),
SAS_ADDR(s2), SAS_ADDR(s2),
...@@ -1239,9 +1231,7 @@ static int sas_check_ex_subtractive_boundary(struct domain_device *dev) ...@@ -1239,9 +1231,7 @@ static int sas_check_ex_subtractive_boundary(struct domain_device *dev)
else if (SAS_ADDR(sub_sas_addr) != else if (SAS_ADDR(sub_sas_addr) !=
SAS_ADDR(phy->attached_sas_addr)) { SAS_ADDR(phy->attached_sas_addr)) {
SAS_DPRINTK("ex %016llx phy 0x%x " pr_notice("ex %016llx phy 0x%x diverges(%016llx) on subtractive boundary(%016llx). Disabled\n",
"diverges(%016llx) on subtractive "
"boundary(%016llx). Disabled\n",
SAS_ADDR(dev->sas_addr), i, SAS_ADDR(dev->sas_addr), i,
SAS_ADDR(phy->attached_sas_addr), SAS_ADDR(phy->attached_sas_addr),
SAS_ADDR(sub_sas_addr)); SAS_ADDR(sub_sas_addr));
...@@ -1284,8 +1274,7 @@ static int sas_check_eeds(struct domain_device *child, ...@@ -1284,8 +1274,7 @@ static int sas_check_eeds(struct domain_device *child,
if (SAS_ADDR(parent->port->disc.fanout_sas_addr) != 0) { if (SAS_ADDR(parent->port->disc.fanout_sas_addr) != 0) {
res = -ENODEV; res = -ENODEV;
SAS_DPRINTK("edge ex %016llx phy S:0x%x <--> edge ex %016llx " pr_warn("edge ex %016llx phy S:0x%x <--> edge ex %016llx phy S:0x%x, while there is a fanout ex %016llx\n",
"phy S:0x%x, while there is a fanout ex %016llx\n",
SAS_ADDR(parent->sas_addr), SAS_ADDR(parent->sas_addr),
parent_phy->phy_id, parent_phy->phy_id,
SAS_ADDR(child->sas_addr), SAS_ADDR(child->sas_addr),
...@@ -1308,8 +1297,7 @@ static int sas_check_eeds(struct domain_device *child, ...@@ -1308,8 +1297,7 @@ static int sas_check_eeds(struct domain_device *child,
; ;
else { else {
res = -ENODEV; res = -ENODEV;
SAS_DPRINTK("edge ex %016llx phy 0x%x <--> edge ex %016llx " pr_warn("edge ex %016llx phy 0x%x <--> edge ex %016llx phy 0x%x link forms a third EEDS!\n",
"phy 0x%x link forms a third EEDS!\n",
SAS_ADDR(parent->sas_addr), SAS_ADDR(parent->sas_addr),
parent_phy->phy_id, parent_phy->phy_id,
SAS_ADDR(child->sas_addr), SAS_ADDR(child->sas_addr),
...@@ -1427,14 +1415,13 @@ static int sas_configure_present(struct domain_device *dev, int phy_id, ...@@ -1427,14 +1415,13 @@ static int sas_configure_present(struct domain_device *dev, int phy_id,
goto out; goto out;
res = rri_resp[2]; res = rri_resp[2];
if (res == SMP_RESP_NO_INDEX) { if (res == SMP_RESP_NO_INDEX) {
SAS_DPRINTK("overflow of indexes: dev %016llx " pr_warn("overflow of indexes: dev %016llx phy 0x%x index 0x%x\n",
"phy 0x%x index 0x%x\n",
SAS_ADDR(dev->sas_addr), phy_id, i); SAS_ADDR(dev->sas_addr), phy_id, i);
goto out; goto out;
} else if (res != SMP_RESP_FUNC_ACC) { } else if (res != SMP_RESP_FUNC_ACC) {
SAS_DPRINTK("%s: dev %016llx phy 0x%x index 0x%x " pr_notice("%s: dev %016llx phy 0x%x index 0x%x result 0x%x\n",
"result 0x%x\n", __func__, __func__, SAS_ADDR(dev->sas_addr), phy_id,
SAS_ADDR(dev->sas_addr), phy_id, i, res); i, res);
goto out; goto out;
} }
if (SAS_ADDR(sas_addr) != 0) { if (SAS_ADDR(sas_addr) != 0) {
...@@ -1498,8 +1485,7 @@ static int sas_configure_set(struct domain_device *dev, int phy_id, ...@@ -1498,8 +1485,7 @@ static int sas_configure_set(struct domain_device *dev, int phy_id,
goto out; goto out;
res = cri_resp[2]; res = cri_resp[2];
if (res == SMP_RESP_NO_INDEX) { if (res == SMP_RESP_NO_INDEX) {
SAS_DPRINTK("overflow of indexes: dev %016llx phy 0x%x " pr_warn("overflow of indexes: dev %016llx phy 0x%x index 0x%x\n",
"index 0x%x\n",
SAS_ADDR(dev->sas_addr), phy_id, index); SAS_ADDR(dev->sas_addr), phy_id, index);
} }
out: out:
...@@ -1547,7 +1533,7 @@ static int sas_configure_parent(struct domain_device *parent, ...@@ -1547,7 +1533,7 @@ static int sas_configure_parent(struct domain_device *parent,
} }
if (ex_parent->conf_route_table == 0) { if (ex_parent->conf_route_table == 0) {
SAS_DPRINTK("ex %016llx has self-configuring routing table\n", pr_debug("ex %016llx has self-configuring routing table\n",
SAS_ADDR(parent->sas_addr)); SAS_ADDR(parent->sas_addr));
return 0; return 0;
} }
...@@ -1609,7 +1595,7 @@ static int sas_discover_expander(struct domain_device *dev) ...@@ -1609,7 +1595,7 @@ static int sas_discover_expander(struct domain_device *dev)
res = sas_expander_discover(dev); res = sas_expander_discover(dev);
if (res) { if (res) {
SAS_DPRINTK("expander %016llx discovery failed(0x%x)\n", pr_warn("expander %016llx discovery failed(0x%x)\n",
SAS_ADDR(dev->sas_addr), res); SAS_ADDR(dev->sas_addr), res);
goto out_err; goto out_err;
} }
...@@ -1854,10 +1840,10 @@ static int sas_find_bcast_dev(struct domain_device *dev, ...@@ -1854,10 +1840,10 @@ static int sas_find_bcast_dev(struct domain_device *dev,
if (phy_id != -1) { if (phy_id != -1) {
*src_dev = dev; *src_dev = dev;
ex->ex_change_count = ex_change_count; ex->ex_change_count = ex_change_count;
SAS_DPRINTK("Expander phy change count has changed\n"); pr_info("Expander phy change count has changed\n");
return res; return res;
} else } else
SAS_DPRINTK("Expander phys DID NOT change\n"); pr_info("Expander phys DID NOT change\n");
} }
list_for_each_entry(ch, &ex->children, siblings) { list_for_each_entry(ch, &ex->children, siblings) {
if (ch->dev_type == SAS_EDGE_EXPANDER_DEVICE || ch->dev_type == SAS_FANOUT_EXPANDER_DEVICE) { if (ch->dev_type == SAS_EDGE_EXPANDER_DEVICE || ch->dev_type == SAS_FANOUT_EXPANDER_DEVICE) {
...@@ -1967,7 +1953,7 @@ static int sas_discover_new(struct domain_device *dev, int phy_id) ...@@ -1967,7 +1953,7 @@ static int sas_discover_new(struct domain_device *dev, int phy_id)
struct domain_device *child; struct domain_device *child;
int res; int res;
SAS_DPRINTK("ex %016llx phy%d new device attached\n", pr_debug("ex %016llx phy%d new device attached\n",
SAS_ADDR(dev->sas_addr), phy_id); SAS_ADDR(dev->sas_addr), phy_id);
res = sas_ex_phy_discover(dev, phy_id); res = sas_ex_phy_discover(dev, phy_id);
if (res) if (res)
...@@ -2046,13 +2032,13 @@ static int sas_rediscover_dev(struct domain_device *dev, int phy_id, bool last) ...@@ -2046,13 +2032,13 @@ static int sas_rediscover_dev(struct domain_device *dev, int phy_id, bool last)
if (ata_dev && phy->attached_dev_type == SAS_SATA_PENDING) if (ata_dev && phy->attached_dev_type == SAS_SATA_PENDING)
action = ", needs recovery"; action = ", needs recovery";
SAS_DPRINTK("ex %016llx phy 0x%x broadcast flutter%s\n", pr_debug("ex %016llx phy 0x%x broadcast flutter%s\n",
SAS_ADDR(dev->sas_addr), phy_id, action); SAS_ADDR(dev->sas_addr), phy_id, action);
return res; return res;
} }
/* we always have to delete the old device when we went here */ /* we always have to delete the old device when we went here */
SAS_DPRINTK("ex %016llx phy 0x%x replace %016llx\n", pr_info("ex %016llx phy 0x%x replace %016llx\n",
SAS_ADDR(dev->sas_addr), phy_id, SAS_ADDR(dev->sas_addr), phy_id,
SAS_ADDR(phy->attached_sas_addr)); SAS_ADDR(phy->attached_sas_addr));
sas_unregister_devs_sas_addr(dev, phy_id, last); sas_unregister_devs_sas_addr(dev, phy_id, last);
...@@ -2082,7 +2068,7 @@ static int sas_rediscover(struct domain_device *dev, const int phy_id) ...@@ -2082,7 +2068,7 @@ static int sas_rediscover(struct domain_device *dev, const int phy_id)
int i; int i;
bool last = true; /* is this the last phy of the port */ bool last = true; /* is this the last phy of the port */
SAS_DPRINTK("ex %016llx phy%d originated BROADCAST(CHANGE)\n", pr_debug("ex %016llx phy%d originated BROADCAST(CHANGE)\n",
SAS_ADDR(dev->sas_addr), phy_id); SAS_ADDR(dev->sas_addr), phy_id);
if (SAS_ADDR(changed_phy->attached_sas_addr) != 0) { if (SAS_ADDR(changed_phy->attached_sas_addr) != 0) {
...@@ -2093,8 +2079,8 @@ static int sas_rediscover(struct domain_device *dev, const int phy_id) ...@@ -2093,8 +2079,8 @@ static int sas_rediscover(struct domain_device *dev, const int phy_id)
continue; continue;
if (SAS_ADDR(phy->attached_sas_addr) == if (SAS_ADDR(phy->attached_sas_addr) ==
SAS_ADDR(changed_phy->attached_sas_addr)) { SAS_ADDR(changed_phy->attached_sas_addr)) {
SAS_DPRINTK("phy%d part of wide port with " pr_debug("phy%d part of wide port with phy%d\n",
"phy%d\n", phy_id, i); phy_id, i);
last = false; last = false;
break; break;
} }
...@@ -2152,21 +2138,21 @@ void sas_smp_handler(struct bsg_job *job, struct Scsi_Host *shost, ...@@ -2152,21 +2138,21 @@ void sas_smp_handler(struct bsg_job *job, struct Scsi_Host *shost,
case SAS_FANOUT_EXPANDER_DEVICE: case SAS_FANOUT_EXPANDER_DEVICE:
break; break;
default: default:
printk("%s: can we send a smp request to a device?\n", pr_err("%s: can we send a smp request to a device?\n",
__func__); __func__);
goto out; goto out;
} }
dev = sas_find_dev_by_rphy(rphy); dev = sas_find_dev_by_rphy(rphy);
if (!dev) { if (!dev) {
printk("%s: fail to find a domain_device?\n", __func__); pr_err("%s: fail to find a domain_device?\n", __func__);
goto out; goto out;
} }
/* do we need to support multiple segments? */ /* do we need to support multiple segments? */
if (job->request_payload.sg_cnt > 1 || if (job->request_payload.sg_cnt > 1 ||
job->reply_payload.sg_cnt > 1) { job->reply_payload.sg_cnt > 1) {
printk("%s: multiple segments req %u, rsp %u\n", pr_info("%s: multiple segments req %u, rsp %u\n",
__func__, job->request_payload.payload_len, __func__, job->request_payload.payload_len,
job->reply_payload.payload_len); job->reply_payload.payload_len);
goto out; goto out;
......
...@@ -128,19 +128,19 @@ int sas_register_ha(struct sas_ha_struct *sas_ha) ...@@ -128,19 +128,19 @@ int sas_register_ha(struct sas_ha_struct *sas_ha)
error = sas_register_phys(sas_ha); error = sas_register_phys(sas_ha);
if (error) { if (error) {
printk(KERN_NOTICE "couldn't register sas phys:%d\n", error); pr_notice("couldn't register sas phys:%d\n", error);
return error; return error;
} }
error = sas_register_ports(sas_ha); error = sas_register_ports(sas_ha);
if (error) { if (error) {
printk(KERN_NOTICE "couldn't register sas ports:%d\n", error); pr_notice("couldn't register sas ports:%d\n", error);
goto Undo_phys; goto Undo_phys;
} }
error = sas_init_events(sas_ha); error = sas_init_events(sas_ha);
if (error) { if (error) {
printk(KERN_NOTICE "couldn't start event thread:%d\n", error); pr_notice("couldn't start event thread:%d\n", error);
goto Undo_ports; goto Undo_ports;
} }
......
...@@ -40,9 +40,6 @@ ...@@ -40,9 +40,6 @@
#define pr_fmt(fmt) SAS_FMT fmt #define pr_fmt(fmt) SAS_FMT fmt
#define SAS_DPRINTK(fmt, ...) printk(KERN_DEBUG fmt, ## __VA_ARGS__)
#define TO_SAS_TASK(_scsi_cmd) ((void *)(_scsi_cmd)->host_scribble) #define TO_SAS_TASK(_scsi_cmd) ((void *)(_scsi_cmd)->host_scribble)
#define ASSIGN_SAS_TASK(_sc, _t) do { (_sc)->host_scribble = (void *) _t; } while (0) #define ASSIGN_SAS_TASK(_sc, _t) do { (_sc)->host_scribble = (void *) _t; } while (0)
...@@ -127,7 +124,7 @@ static inline void sas_smp_host_handler(struct bsg_job *job, ...@@ -127,7 +124,7 @@ static inline void sas_smp_host_handler(struct bsg_job *job,
static inline void sas_fail_probe(struct domain_device *dev, const char *func, int err) static inline void sas_fail_probe(struct domain_device *dev, const char *func, int err)
{ {
SAS_DPRINTK("%s: for %s device %16llx returned %d\n", pr_warn("%s: for %s device %16llx returned %d\n",
func, dev->parent ? "exp-attached" : func, dev->parent ? "exp-attached" :
"direct-attached", "direct-attached",
SAS_ADDR(dev->sas_addr), err); SAS_ADDR(dev->sas_addr), err);
......
...@@ -110,7 +110,7 @@ static void sas_form_port(struct asd_sas_phy *phy) ...@@ -110,7 +110,7 @@ static void sas_form_port(struct asd_sas_phy *phy)
wake_up(&sas_ha->eh_wait_q); wake_up(&sas_ha->eh_wait_q);
return; return;
} else { } else {
SAS_DPRINTK("%s: phy%d belongs to port%d already(%d)!\n", pr_info("%s: phy%d belongs to port%d already(%d)!\n",
__func__, phy->id, phy->port->id, __func__, phy->id, phy->port->id,
phy->port->num_phys); phy->port->num_phys);
return; return;
...@@ -125,7 +125,7 @@ static void sas_form_port(struct asd_sas_phy *phy) ...@@ -125,7 +125,7 @@ static void sas_form_port(struct asd_sas_phy *phy)
if (*(u64 *) port->sas_addr && if (*(u64 *) port->sas_addr &&
phy_is_wideport_member(port, phy) && port->num_phys > 0) { phy_is_wideport_member(port, phy) && port->num_phys > 0) {
/* wide port */ /* wide port */
SAS_DPRINTK("phy%d matched wide port%d\n", phy->id, pr_debug("phy%d matched wide port%d\n", phy->id,
port->id); port->id);
break; break;
} }
...@@ -147,8 +147,7 @@ static void sas_form_port(struct asd_sas_phy *phy) ...@@ -147,8 +147,7 @@ static void sas_form_port(struct asd_sas_phy *phy)
} }
if (i >= sas_ha->num_phys) { if (i >= sas_ha->num_phys) {
printk(KERN_NOTICE "%s: couldn't find a free port, bug?\n", pr_err("%s: couldn't find a free port, bug?\n", __func__);
__func__);
spin_unlock_irqrestore(&sas_ha->phy_port_lock, flags); spin_unlock_irqrestore(&sas_ha->phy_port_lock, flags);
return; return;
} }
...@@ -180,7 +179,7 @@ static void sas_form_port(struct asd_sas_phy *phy) ...@@ -180,7 +179,7 @@ static void sas_form_port(struct asd_sas_phy *phy)
} }
sas_port_add_phy(port->port, phy->phy); sas_port_add_phy(port->port, phy->phy);
SAS_DPRINTK("%s added to %s, phy_mask:0x%x (%16llx)\n", pr_debug("%s added to %s, phy_mask:0x%x (%16llx)\n",
dev_name(&phy->phy->dev), dev_name(&port->port->dev), dev_name(&phy->phy->dev), dev_name(&port->port->dev),
port->phy_mask, port->phy_mask,
SAS_ADDR(port->attached_sas_addr)); SAS_ADDR(port->attached_sas_addr));
...@@ -279,7 +278,7 @@ void sas_porte_broadcast_rcvd(struct work_struct *work) ...@@ -279,7 +278,7 @@ void sas_porte_broadcast_rcvd(struct work_struct *work)
prim = phy->sas_prim; prim = phy->sas_prim;
spin_unlock_irqrestore(&phy->sas_prim_lock, flags); spin_unlock_irqrestore(&phy->sas_prim_lock, flags);
SAS_DPRINTK("broadcast received: %d\n", prim); pr_debug("broadcast received: %d\n", prim);
sas_discover_event(phy->port, DISCE_REVALIDATE_DOMAIN); sas_discover_event(phy->port, DISCE_REVALIDATE_DOMAIN);
if (phy->port) if (phy->port)
......
...@@ -93,8 +93,7 @@ static void sas_end_task(struct scsi_cmnd *sc, struct sas_task *task) ...@@ -93,8 +93,7 @@ static void sas_end_task(struct scsi_cmnd *sc, struct sas_task *task)
hs = DID_ERROR; hs = DID_ERROR;
break; break;
case SAS_PROTO_RESPONSE: case SAS_PROTO_RESPONSE:
SAS_DPRINTK("LLDD:%s sent SAS_PROTO_RESP for an SSP " pr_notice("LLDD:%s sent SAS_PROTO_RESP for an SSP task; please report this\n",
"task; please report this\n",
task->dev->port->ha->sas_ha_name); task->dev->port->ha->sas_ha_name);
break; break;
case SAS_ABORTED_TASK: case SAS_ABORTED_TASK:
...@@ -132,12 +131,12 @@ static void sas_scsi_task_done(struct sas_task *task) ...@@ -132,12 +131,12 @@ static void sas_scsi_task_done(struct sas_task *task)
if (unlikely(!task)) { if (unlikely(!task)) {
/* task will be completed by the error handler */ /* task will be completed by the error handler */
SAS_DPRINTK("task done but aborted\n"); pr_debug("task done but aborted\n");
return; return;
} }
if (unlikely(!sc)) { if (unlikely(!sc)) {
SAS_DPRINTK("task_done called with non existing SCSI cmnd!\n"); pr_debug("task_done called with non existing SCSI cmnd!\n");
sas_free_task(task); sas_free_task(task);
return; return;
} }
...@@ -208,7 +207,7 @@ int sas_queuecommand(struct Scsi_Host *host, struct scsi_cmnd *cmd) ...@@ -208,7 +207,7 @@ int sas_queuecommand(struct Scsi_Host *host, struct scsi_cmnd *cmd)
return 0; return 0;
out_free_task: out_free_task:
SAS_DPRINTK("lldd_execute_task returned: %d\n", res); pr_debug("lldd_execute_task returned: %d\n", res);
ASSIGN_SAS_TASK(cmd, NULL); ASSIGN_SAS_TASK(cmd, NULL);
sas_free_task(task); sas_free_task(task);
if (res == -SAS_QUEUE_FULL) if (res == -SAS_QUEUE_FULL)
...@@ -301,37 +300,35 @@ static enum task_disposition sas_scsi_find_task(struct sas_task *task) ...@@ -301,37 +300,35 @@ static enum task_disposition sas_scsi_find_task(struct sas_task *task)
to_sas_internal(task->dev->port->ha->core.shost->transportt); to_sas_internal(task->dev->port->ha->core.shost->transportt);
for (i = 0; i < 5; i++) { for (i = 0; i < 5; i++) {
SAS_DPRINTK("%s: aborting task 0x%p\n", __func__, task); pr_notice("%s: aborting task 0x%p\n", __func__, task);
res = si->dft->lldd_abort_task(task); res = si->dft->lldd_abort_task(task);
spin_lock_irqsave(&task->task_state_lock, flags); spin_lock_irqsave(&task->task_state_lock, flags);
if (task->task_state_flags & SAS_TASK_STATE_DONE) { if (task->task_state_flags & SAS_TASK_STATE_DONE) {
spin_unlock_irqrestore(&task->task_state_lock, flags); spin_unlock_irqrestore(&task->task_state_lock, flags);
SAS_DPRINTK("%s: task 0x%p is done\n", __func__, pr_debug("%s: task 0x%p is done\n", __func__, task);
task);
return TASK_IS_DONE; return TASK_IS_DONE;
} }
spin_unlock_irqrestore(&task->task_state_lock, flags); spin_unlock_irqrestore(&task->task_state_lock, flags);
if (res == TMF_RESP_FUNC_COMPLETE) { if (res == TMF_RESP_FUNC_COMPLETE) {
SAS_DPRINTK("%s: task 0x%p is aborted\n", pr_notice("%s: task 0x%p is aborted\n",
__func__, task); __func__, task);
return TASK_IS_ABORTED; return TASK_IS_ABORTED;
} else if (si->dft->lldd_query_task) { } else if (si->dft->lldd_query_task) {
SAS_DPRINTK("%s: querying task 0x%p\n", pr_notice("%s: querying task 0x%p\n", __func__, task);
__func__, task);
res = si->dft->lldd_query_task(task); res = si->dft->lldd_query_task(task);
switch (res) { switch (res) {
case TMF_RESP_FUNC_SUCC: case TMF_RESP_FUNC_SUCC:
SAS_DPRINTK("%s: task 0x%p at LU\n", pr_notice("%s: task 0x%p at LU\n", __func__,
__func__, task); task);
return TASK_IS_AT_LU; return TASK_IS_AT_LU;
case TMF_RESP_FUNC_COMPLETE: case TMF_RESP_FUNC_COMPLETE:
SAS_DPRINTK("%s: task 0x%p not at LU\n", pr_notice("%s: task 0x%p not at LU\n",
__func__, task); __func__, task);
return TASK_IS_NOT_AT_LU; return TASK_IS_NOT_AT_LU;
case TMF_RESP_FUNC_FAILED: case TMF_RESP_FUNC_FAILED:
SAS_DPRINTK("%s: task 0x%p failed to abort\n", pr_notice("%s: task 0x%p failed to abort\n",
__func__, task); __func__, task);
return TASK_ABORT_FAILED; return TASK_ABORT_FAILED;
} }
...@@ -350,7 +347,7 @@ static int sas_recover_lu(struct domain_device *dev, struct scsi_cmnd *cmd) ...@@ -350,7 +347,7 @@ static int sas_recover_lu(struct domain_device *dev, struct scsi_cmnd *cmd)
int_to_scsilun(cmd->device->lun, &lun); int_to_scsilun(cmd->device->lun, &lun);
SAS_DPRINTK("eh: device %llx LUN %llx has the task\n", pr_notice("eh: device %llx LUN %llx has the task\n",
SAS_ADDR(dev->sas_addr), SAS_ADDR(dev->sas_addr),
cmd->device->lun); cmd->device->lun);
...@@ -376,7 +373,7 @@ static int sas_recover_I_T(struct domain_device *dev) ...@@ -376,7 +373,7 @@ static int sas_recover_I_T(struct domain_device *dev)
struct sas_internal *i = struct sas_internal *i =
to_sas_internal(dev->port->ha->core.shost->transportt); to_sas_internal(dev->port->ha->core.shost->transportt);
SAS_DPRINTK("I_T nexus reset for dev %016llx\n", pr_notice("I_T nexus reset for dev %016llx\n",
SAS_ADDR(dev->sas_addr)); SAS_ADDR(dev->sas_addr));
if (i->dft->lldd_I_T_nexus_reset) if (i->dft->lldd_I_T_nexus_reset)
...@@ -471,7 +468,7 @@ static int sas_queue_reset(struct domain_device *dev, int reset_type, ...@@ -471,7 +468,7 @@ static int sas_queue_reset(struct domain_device *dev, int reset_type,
return SUCCESS; return SUCCESS;
} }
SAS_DPRINTK("%s reset of %s failed\n", pr_warn("%s reset of %s failed\n",
reset_type == SAS_DEV_LU_RESET ? "LUN" : "Bus", reset_type == SAS_DEV_LU_RESET ? "LUN" : "Bus",
dev_name(&dev->rphy->dev)); dev_name(&dev->rphy->dev));
...@@ -501,7 +498,7 @@ int sas_eh_abort_handler(struct scsi_cmnd *cmd) ...@@ -501,7 +498,7 @@ int sas_eh_abort_handler(struct scsi_cmnd *cmd)
if (task) if (task)
res = i->dft->lldd_abort_task(task); res = i->dft->lldd_abort_task(task);
else else
SAS_DPRINTK("no task to abort\n"); pr_notice("no task to abort\n");
if (res == TMF_RESP_FUNC_SUCC || res == TMF_RESP_FUNC_COMPLETE) if (res == TMF_RESP_FUNC_SUCC || res == TMF_RESP_FUNC_COMPLETE)
return SUCCESS; return SUCCESS;
...@@ -612,32 +609,31 @@ static void sas_eh_handle_sas_errors(struct Scsi_Host *shost, struct list_head * ...@@ -612,32 +609,31 @@ static void sas_eh_handle_sas_errors(struct Scsi_Host *shost, struct list_head *
spin_unlock_irqrestore(&task->task_state_lock, flags); spin_unlock_irqrestore(&task->task_state_lock, flags);
if (need_reset) { if (need_reset) {
SAS_DPRINTK("%s: task 0x%p requests reset\n", pr_notice("%s: task 0x%p requests reset\n",
__func__, task); __func__, task);
goto reset; goto reset;
} }
SAS_DPRINTK("trying to find task 0x%p\n", task); pr_debug("trying to find task 0x%p\n", task);
res = sas_scsi_find_task(task); res = sas_scsi_find_task(task);
switch (res) { switch (res) {
case TASK_IS_DONE: case TASK_IS_DONE:
SAS_DPRINTK("%s: task 0x%p is done\n", __func__, pr_notice("%s: task 0x%p is done\n", __func__,
task); task);
sas_eh_finish_cmd(cmd); sas_eh_finish_cmd(cmd);
continue; continue;
case TASK_IS_ABORTED: case TASK_IS_ABORTED:
SAS_DPRINTK("%s: task 0x%p is aborted\n", pr_notice("%s: task 0x%p is aborted\n",
__func__, task); __func__, task);
sas_eh_finish_cmd(cmd); sas_eh_finish_cmd(cmd);
continue; continue;
case TASK_IS_AT_LU: case TASK_IS_AT_LU:
SAS_DPRINTK("task 0x%p is at LU: lu recover\n", task); pr_info("task 0x%p is at LU: lu recover\n", task);
reset: reset:
tmf_resp = sas_recover_lu(task->dev, cmd); tmf_resp = sas_recover_lu(task->dev, cmd);
if (tmf_resp == TMF_RESP_FUNC_COMPLETE) { if (tmf_resp == TMF_RESP_FUNC_COMPLETE) {
SAS_DPRINTK("dev %016llx LU %llx is " pr_notice("dev %016llx LU %llx is recovered\n",
"recovered\n",
SAS_ADDR(task->dev), SAS_ADDR(task->dev),
cmd->device->lun); cmd->device->lun);
sas_eh_finish_cmd(cmd); sas_eh_finish_cmd(cmd);
...@@ -647,13 +643,13 @@ static void sas_eh_handle_sas_errors(struct Scsi_Host *shost, struct list_head * ...@@ -647,13 +643,13 @@ static void sas_eh_handle_sas_errors(struct Scsi_Host *shost, struct list_head *
/* fallthrough */ /* fallthrough */
case TASK_IS_NOT_AT_LU: case TASK_IS_NOT_AT_LU:
case TASK_ABORT_FAILED: case TASK_ABORT_FAILED:
SAS_DPRINTK("task 0x%p is not at LU: I_T recover\n", pr_notice("task 0x%p is not at LU: I_T recover\n",
task); task);
tmf_resp = sas_recover_I_T(task->dev); tmf_resp = sas_recover_I_T(task->dev);
if (tmf_resp == TMF_RESP_FUNC_COMPLETE || if (tmf_resp == TMF_RESP_FUNC_COMPLETE ||
tmf_resp == -ENODEV) { tmf_resp == -ENODEV) {
struct domain_device *dev = task->dev; struct domain_device *dev = task->dev;
SAS_DPRINTK("I_T %016llx recovered\n", pr_notice("I_T %016llx recovered\n",
SAS_ADDR(task->dev->sas_addr)); SAS_ADDR(task->dev->sas_addr));
sas_eh_finish_cmd(cmd); sas_eh_finish_cmd(cmd);
sas_scsi_clear_queue_I_T(work_q, dev); sas_scsi_clear_queue_I_T(work_q, dev);
...@@ -663,12 +659,12 @@ static void sas_eh_handle_sas_errors(struct Scsi_Host *shost, struct list_head * ...@@ -663,12 +659,12 @@ static void sas_eh_handle_sas_errors(struct Scsi_Host *shost, struct list_head *
try_to_reset_cmd_device(cmd); try_to_reset_cmd_device(cmd);
if (i->dft->lldd_clear_nexus_port) { if (i->dft->lldd_clear_nexus_port) {
struct asd_sas_port *port = task->dev->port; struct asd_sas_port *port = task->dev->port;
SAS_DPRINTK("clearing nexus for port:%d\n", pr_debug("clearing nexus for port:%d\n",
port->id); port->id);
res = i->dft->lldd_clear_nexus_port(port); res = i->dft->lldd_clear_nexus_port(port);
if (res == TMF_RESP_FUNC_COMPLETE) { if (res == TMF_RESP_FUNC_COMPLETE) {
SAS_DPRINTK("clear nexus port:%d " pr_notice("clear nexus port:%d succeeded\n",
"succeeded\n", port->id); port->id);
sas_eh_finish_cmd(cmd); sas_eh_finish_cmd(cmd);
sas_scsi_clear_queue_port(work_q, sas_scsi_clear_queue_port(work_q,
port); port);
...@@ -676,11 +672,10 @@ static void sas_eh_handle_sas_errors(struct Scsi_Host *shost, struct list_head * ...@@ -676,11 +672,10 @@ static void sas_eh_handle_sas_errors(struct Scsi_Host *shost, struct list_head *
} }
} }
if (i->dft->lldd_clear_nexus_ha) { if (i->dft->lldd_clear_nexus_ha) {
SAS_DPRINTK("clear nexus ha\n"); pr_debug("clear nexus ha\n");
res = i->dft->lldd_clear_nexus_ha(ha); res = i->dft->lldd_clear_nexus_ha(ha);
if (res == TMF_RESP_FUNC_COMPLETE) { if (res == TMF_RESP_FUNC_COMPLETE) {
SAS_DPRINTK("clear nexus ha " pr_notice("clear nexus ha succeeded\n");
"succeeded\n");
sas_eh_finish_cmd(cmd); sas_eh_finish_cmd(cmd);
goto clear_q; goto clear_q;
} }
...@@ -689,8 +684,7 @@ static void sas_eh_handle_sas_errors(struct Scsi_Host *shost, struct list_head * ...@@ -689,8 +684,7 @@ static void sas_eh_handle_sas_errors(struct Scsi_Host *shost, struct list_head *
* of effort could recover from errors. Quite * of effort could recover from errors. Quite
* possibly the HA just disappeared. * possibly the HA just disappeared.
*/ */
SAS_DPRINTK("error from device %llx, LUN %llx " pr_err("error from device %llx, LUN %llx couldn't be recovered in any way\n",
"couldn't be recovered in any way\n",
SAS_ADDR(task->dev->sas_addr), SAS_ADDR(task->dev->sas_addr),
cmd->device->lun); cmd->device->lun);
...@@ -704,7 +698,7 @@ static void sas_eh_handle_sas_errors(struct Scsi_Host *shost, struct list_head * ...@@ -704,7 +698,7 @@ static void sas_eh_handle_sas_errors(struct Scsi_Host *shost, struct list_head *
return; return;
clear_q: clear_q:
SAS_DPRINTK("--- Exit %s -- clear_q\n", __func__); pr_debug("--- Exit %s -- clear_q\n", __func__);
list_for_each_entry_safe(cmd, n, work_q, eh_entry) list_for_each_entry_safe(cmd, n, work_q, eh_entry)
sas_eh_finish_cmd(cmd); sas_eh_finish_cmd(cmd);
goto out; goto out;
...@@ -758,7 +752,7 @@ void sas_scsi_recover_host(struct Scsi_Host *shost) ...@@ -758,7 +752,7 @@ void sas_scsi_recover_host(struct Scsi_Host *shost)
list_splice_init(&shost->eh_cmd_q, &eh_work_q); list_splice_init(&shost->eh_cmd_q, &eh_work_q);
spin_unlock_irq(shost->host_lock); spin_unlock_irq(shost->host_lock);
SAS_DPRINTK("Enter %s busy: %d failed: %d\n", pr_notice("Enter %s busy: %d failed: %d\n",
__func__, scsi_host_busy(shost), shost->host_failed); __func__, scsi_host_busy(shost), shost->host_failed);
/* /*
* Deal with commands that still have SAS tasks (i.e. they didn't * Deal with commands that still have SAS tasks (i.e. they didn't
...@@ -800,7 +794,7 @@ void sas_scsi_recover_host(struct Scsi_Host *shost) ...@@ -800,7 +794,7 @@ void sas_scsi_recover_host(struct Scsi_Host *shost)
if (retry) if (retry)
goto retry; goto retry;
SAS_DPRINTK("--- Exit %s: busy: %d failed: %d tries: %d\n", pr_notice("--- Exit %s: busy: %d failed: %d tries: %d\n",
__func__, scsi_host_busy(shost), __func__, scsi_host_busy(shost),
shost->host_failed, tries); shost->host_failed, tries);
} }
...@@ -875,9 +869,8 @@ int sas_slave_configure(struct scsi_device *scsi_dev) ...@@ -875,9 +869,8 @@ int sas_slave_configure(struct scsi_device *scsi_dev)
if (scsi_dev->tagged_supported) { if (scsi_dev->tagged_supported) {
scsi_change_queue_depth(scsi_dev, SAS_DEF_QD); scsi_change_queue_depth(scsi_dev, SAS_DEF_QD);
} else { } else {
SAS_DPRINTK("device %llx, LUN %llx doesn't support " pr_notice("device %llx, LUN %llx doesn't support TCQ\n",
"TCQ\n", SAS_ADDR(dev->sas_addr), SAS_ADDR(dev->sas_addr), scsi_dev->lun);
scsi_dev->lun);
scsi_change_queue_depth(scsi_dev, 1); scsi_change_queue_depth(scsi_dev, 1);
} }
......
...@@ -26,11 +26,8 @@ void sas_ssp_task_response(struct device *dev, struct sas_task *task, ...@@ -26,11 +26,8 @@ void sas_ssp_task_response(struct device *dev, struct sas_task *task,
memcpy(tstat->buf, iu->sense_data, tstat->buf_valid_size); memcpy(tstat->buf, iu->sense_data, tstat->buf_valid_size);
if (iu->status != SAM_STAT_CHECK_CONDITION) if (iu->status != SAM_STAT_CHECK_CONDITION)
dev_printk(KERN_WARNING, dev, dev_warn(dev, "dev %llx sent sense data, but stat(%x) is not CHECK CONDITION\n",
"dev %llx sent sense data, but " SAS_ADDR(task->dev->sas_addr), iu->status);
"stat(%x) is not CHECK CONDITION\n",
SAS_ADDR(task->dev->sas_addr),
iu->status);
} }
else else
/* when datapres contains corrupt/unknown value... */ /* when datapres contains corrupt/unknown value... */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment