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

scsi: hisi_sas: No need to check return value of debugfs_create functions

When calling debugfs functions, there is no need to ever check the return
value. The function can work or not, but the code logic should never do
something different based on this.
Signed-off-by: default avatarJohn Garry <john.garry@huawei.com>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent 7e1c99e5
...@@ -368,6 +368,7 @@ struct hisi_hba { ...@@ -368,6 +368,7 @@ struct hisi_hba {
struct dentry *debugfs_dir; struct dentry *debugfs_dir;
struct dentry *debugfs_dump_dentry; struct dentry *debugfs_dump_dentry;
bool debugfs_snapshot;
}; };
/* Generic HW DMA host memory structures */ /* Generic HW DMA host memory structures */
......
...@@ -1429,8 +1429,7 @@ static int hisi_sas_controller_reset(struct hisi_hba *hisi_hba) ...@@ -1429,8 +1429,7 @@ static int hisi_sas_controller_reset(struct hisi_hba *hisi_hba)
struct Scsi_Host *shost = hisi_hba->shost; struct Scsi_Host *shost = hisi_hba->shost;
int rc; int rc;
if (hisi_sas_debugfs_enable && hisi_hba->debugfs_itct && if (hisi_sas_debugfs_enable && hisi_hba->debugfs_itct)
!hisi_hba->debugfs_dump_dentry)
queue_work(hisi_hba->wq, &hisi_hba->debugfs_work); queue_work(hisi_hba->wq, &hisi_hba->debugfs_work);
if (!hisi_hba->hw->soft_reset) if (!hisi_hba->hw->soft_reset)
...@@ -2780,63 +2779,42 @@ static void hisi_sas_debugfs_create_files(struct hisi_hba *hisi_hba) ...@@ -2780,63 +2779,42 @@ static void hisi_sas_debugfs_create_files(struct hisi_hba *hisi_hba)
/* Create dump dir inside device dir */ /* Create dump dir inside device dir */
dump_dentry = debugfs_create_dir("dump", hisi_hba->debugfs_dir); dump_dentry = debugfs_create_dir("dump", hisi_hba->debugfs_dir);
if (!dump_dentry)
goto fail;
hisi_hba->debugfs_dump_dentry = dump_dentry; hisi_hba->debugfs_dump_dentry = dump_dentry;
if (!debugfs_create_file("global", 0400, dump_dentry, hisi_hba, debugfs_create_file("global", 0400, dump_dentry, hisi_hba,
&hisi_sas_debugfs_global_fops)) &hisi_sas_debugfs_global_fops);
goto fail;
/* Create port dir and files */ /* Create port dir and files */
dentry = debugfs_create_dir("port", dump_dentry); dentry = debugfs_create_dir("port", dump_dentry);
if (!dentry)
goto fail;
for (p = 0; p < hisi_hba->n_phy; p++) { for (p = 0; p < hisi_hba->n_phy; p++) {
snprintf(name, 256, "%d", p); snprintf(name, 256, "%d", p);
if (!debugfs_create_file(name, 0400, dentry,
&hisi_hba->phy[p], debugfs_create_file(name, 0400, dentry, &hisi_hba->phy[p],
&hisi_sas_debugfs_port_fops)) &hisi_sas_debugfs_port_fops);
goto fail;
} }
/* Create CQ dir and files */ /* Create CQ dir and files */
dentry = debugfs_create_dir("cq", dump_dentry); dentry = debugfs_create_dir("cq", dump_dentry);
if (!dentry)
goto fail;
for (c = 0; c < hisi_hba->queue_count; c++) { for (c = 0; c < hisi_hba->queue_count; c++) {
snprintf(name, 256, "%d", c); snprintf(name, 256, "%d", c);
if (!debugfs_create_file(name, 0400, dentry, debugfs_create_file(name, 0400, dentry, &hisi_hba->cq[c],
&hisi_hba->cq[c], &hisi_sas_debugfs_cq_fops);
&hisi_sas_debugfs_cq_fops))
goto fail;
} }
/* Create DQ dir and files */ /* Create DQ dir and files */
dentry = debugfs_create_dir("dq", dump_dentry); dentry = debugfs_create_dir("dq", dump_dentry);
if (!dentry)
goto fail;
for (d = 0; d < hisi_hba->queue_count; d++) { for (d = 0; d < hisi_hba->queue_count; d++) {
snprintf(name, 256, "%d", d); snprintf(name, 256, "%d", d);
if (!debugfs_create_file(name, 0400, dentry, debugfs_create_file(name, 0400, dentry, &hisi_hba->dq[d],
&hisi_hba->dq[d], &hisi_sas_debugfs_dq_fops);
&hisi_sas_debugfs_dq_fops))
goto fail;
} }
if (!debugfs_create_file("iost", 0400, dump_dentry, hisi_hba, debugfs_create_file("iost", 0400, dump_dentry, hisi_hba,
&hisi_sas_debugfs_iost_fops)) &hisi_sas_debugfs_iost_fops);
goto fail;
return; return;
fail:
debugfs_remove_recursive(hisi_hba->debugfs_dir);
} }
static void hisi_sas_debugfs_snapshot_regs(struct hisi_hba *hisi_hba) static void hisi_sas_debugfs_snapshot_regs(struct hisi_hba *hisi_hba)
...@@ -2860,6 +2838,10 @@ void hisi_sas_debugfs_work_handler(struct work_struct *work) ...@@ -2860,6 +2838,10 @@ void hisi_sas_debugfs_work_handler(struct work_struct *work)
struct hisi_hba *hisi_hba = struct hisi_hba *hisi_hba =
container_of(work, struct hisi_hba, debugfs_work); container_of(work, struct hisi_hba, debugfs_work);
if (hisi_hba->debugfs_snapshot)
return;
hisi_hba->debugfs_snapshot = true;
hisi_sas_debugfs_snapshot_regs(hisi_hba); hisi_sas_debugfs_snapshot_regs(hisi_hba);
} }
EXPORT_SYMBOL_GPL(hisi_sas_debugfs_work_handler); EXPORT_SYMBOL_GPL(hisi_sas_debugfs_work_handler);
...@@ -2874,9 +2856,6 @@ void hisi_sas_debugfs_init(struct hisi_hba *hisi_hba) ...@@ -2874,9 +2856,6 @@ void hisi_sas_debugfs_init(struct hisi_hba *hisi_hba)
hisi_hba->debugfs_dir = debugfs_create_dir(dev_name(dev), hisi_hba->debugfs_dir = debugfs_create_dir(dev_name(dev),
hisi_sas_debugfs_dir); hisi_sas_debugfs_dir);
if (!hisi_hba->debugfs_dir)
return;
/* Alloc buffer for global */ /* Alloc buffer for global */
sz = hisi_hba->hw->debugfs_reg_global->count * 4; sz = hisi_hba->hw->debugfs_reg_global->count * 4;
hisi_hba->debugfs_global_reg = hisi_hba->debugfs_global_reg =
......
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