2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-15 16:53:54 +08:00

scsi: elx: efct: Fix pointer error checking in debugfs init

debugfs_create_xxx routines, which return pointers, are being checked for
error by looking for NULL values. The routines may return pointer-munged
-Exxx codes, so they should be using IS_ERR() to adapt.

There are two cases:

 - The first case is on initial directory creation, which actually doesn't
   need to be checked. So remove the check.

 - Creation of the sessions subdirectory. Modify this creation to create
   under the initial directory created, and fix failure check.

Link: https://lore.kernel.org/r/20210618233004.83769-1-jsmart2021@gmail.com
Fixes: 4df84e8466 ("scsi: elx: efct: Driver initialization routines")
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: James Smart <jsmart2021@gmail.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
James Smart 2021-06-18 16:30:04 -07:00 committed by Martin K. Petersen
parent ca7f33c6b4
commit ae3272ec5e

View File

@ -43,16 +43,13 @@ efct_xport_init_debugfs(struct efct *efct)
if (!efct_debugfs_root) {
efct_debugfs_root = debugfs_create_dir("efct", NULL);
atomic_set(&efct_debugfs_count, 0);
if (!efct_debugfs_root) {
efc_log_err(efct, "failed to create debugfs entry\n");
goto debugfs_fail;
}
}
/* Create a directory for sessions in root */
if (!efct->sess_debugfs_dir) {
efct->sess_debugfs_dir = debugfs_create_dir("sessions", NULL);
if (!efct->sess_debugfs_dir) {
efct->sess_debugfs_dir = debugfs_create_dir("sessions",
efct_debugfs_root);
if (IS_ERR(efct->sess_debugfs_dir)) {
efc_log_err(efct,
"failed to create debugfs entry for sessions\n");
goto debugfs_fail;