Skip to content

Commit

Permalink
crypto: ccp - Provide an error path for debugfs setup failure
Browse files Browse the repository at this point in the history
Changes since v2:
  - On failure remove only the DebugFS heirarchy for this device
Changes since v1:
  - Remove unneeded local variable

Signed-off-by: Gary R Hook <[email protected]>
Signed-off-by: Herbert Xu <[email protected]>
  • Loading branch information
garyrhook authored and herbertx committed Jul 18, 2017
1 parent bce386a commit 33460b2
Showing 1 changed file with 10 additions and 5 deletions.
15 changes: 10 additions & 5 deletions drivers/crypto/ccp/ccp-debugfs.c
Original file line number Diff line number Diff line change
Expand Up @@ -305,19 +305,19 @@ void ccp5_debugfs_setup(struct ccp_device *ccp)

ccp->debugfs_instance = debugfs_create_dir(ccp->name, ccp_debugfs_dir);
if (!ccp->debugfs_instance)
return;
goto err;

debugfs_info = debugfs_create_file("info", 0400,
ccp->debugfs_instance, ccp,
&ccp_debugfs_info_ops);
if (!debugfs_info)
return;
goto err;

debugfs_stats = debugfs_create_file("stats", 0600,
ccp->debugfs_instance, ccp,
&ccp_debugfs_stats_ops);
if (!debugfs_stats)
return;
goto err;

for (i = 0; i < ccp->cmd_q_count; i++) {
cmd_q = &ccp->cmd_q[i];
Expand All @@ -327,15 +327,20 @@ void ccp5_debugfs_setup(struct ccp_device *ccp)
debugfs_q_instance =
debugfs_create_dir(name, ccp->debugfs_instance);
if (!debugfs_q_instance)
return;
goto err;

debugfs_q_stats =
debugfs_create_file("stats", 0600,
debugfs_q_instance, cmd_q,
&ccp_debugfs_queue_ops);
if (!debugfs_q_stats)
return;
goto err;
}

return;

err:
debugfs_remove_recursive(ccp->debugfs_instance);
}

void ccp5_debugfs_destroy(void)
Expand Down

0 comments on commit 33460b2

Please sign in to comment.