From: James Smart Date: Fri, 18 Jun 2021 23:30:04 +0000 (-0700) Subject: scsi: elx: efct: Fix pointer error checking in debugfs init X-Git-Tag: accepted/tizen/unified/20230118.172025~6832^2~29 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ae3272ec5e9772de143b6326b2c3a61529786ddd;p=platform%2Fkernel%2Flinux-rpi.git 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: 4df84e846624 ("scsi: elx: efct: Driver initialization routines") Reported-by: Dan Carpenter Signed-off-by: James Smart Signed-off-by: Martin K. Petersen --- diff --git a/drivers/scsi/elx/efct/efct_xport.c b/drivers/scsi/elx/efct/efct_xport.c index 78b6a47..9495ced 100644 --- a/drivers/scsi/elx/efct/efct_xport.c +++ b/drivers/scsi/elx/efct/efct_xport.c @@ -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;