From: Daniel Gomez <da.gomez@kernel.org>
To: "Martin K. Petersen" <martin.petersen@oracle.com>,
Hannes Reinecke <hare@suse.de>,
"James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
Cc: Luis Chamberlain <mcgrof@kernel.org>,
Petr Pavlu <petr.pavlu@suse.com>,
Daniel Gomez <da.gomez@kernel.org>,
Sami Tolvanen <samitolvanen@google.com>,
Aaron Tomlin <atomlin@atomlin.com>,
Lucas De Marchi <demarchi@kernel.org>,
linux-scsi@vger.kernel.org, target-devel@vger.kernel.org,
linux-modules@vger.kernel.org, linux-kernel@vger.kernel.org,
Daniel Gomez <da.gomez@samsung.com>
Subject: [PATCH 1/2] target: replace -EEXIST with -EBUSY
Date: Sat, 20 Dec 2025 04:37:32 +0100 [thread overview]
Message-ID: <20251220-dev-module-init-eexists-linux-scsi-v1-1-5379db749d54@samsung.com> (raw)
In-Reply-To: <20251220-dev-module-init-eexists-linux-scsi-v1-0-5379db749d54@samsung.com>
From: Daniel Gomez <da.gomez@samsung.com>
The -EEXIST error code is reserved by the module loading infrastructure
to indicate that a module is already loaded. When a module's init
function returns -EEXIST, userspace tools like kmod interpret this as
"module already loaded" and treat the operation as successful, returning
0 to the user even though the module initialization actually failed.
This follows the precedent set by commit 54416fd76770 ("netfilter:
conntrack: helper: Replace -EEXIST by -EBUSY") which fixed the same
issue in nf_conntrack_helper_register()
Affected modules:
* target_core_file target_core_iblock target_core_pscsi
* target_core_user
Signed-off-by: Daniel Gomez <da.gomez@samsung.com>
---
drivers/target/target_core_hba.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/target/target_core_hba.c b/drivers/target/target_core_hba.c
index d508b343ba7b..dcc11671d919 100644
--- a/drivers/target/target_core_hba.c
+++ b/drivers/target/target_core_hba.c
@@ -50,7 +50,7 @@ int transport_backend_register(const struct target_backend_ops *ops)
pr_err("backend %s already registered.\n", ops->name);
mutex_unlock(&backend_mutex);
kfree(tb);
- return -EEXIST;
+ return -EBUSY;
}
}
target_setup_backend_cits(tb);
--
2.52.0
next prev parent reply other threads:[~2025-12-20 3:37 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-20 3:37 [PATCH 0/2] scsi: target+fcoe: replace -EEXIST with -EBUSY in module_init() paths Daniel Gomez
2025-12-20 3:37 ` Daniel Gomez [this message]
2025-12-20 3:37 ` [PATCH 2/2] scsi: fcoe: replace -EEXIST with -EBUSY Daniel Gomez
2025-12-20 4:27 ` [PATCH 0/2] scsi: target+fcoe: replace -EEXIST with -EBUSY in module_init() paths James Bottomley
2025-12-21 3:30 ` Daniel Gomez
2025-12-21 4:02 ` James Bottomley
2025-12-21 10:00 ` Daniel Gomez
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20251220-dev-module-init-eexists-linux-scsi-v1-1-5379db749d54@samsung.com \
--to=da.gomez@kernel.org \
--cc=James.Bottomley@HansenPartnership.com \
--cc=atomlin@atomlin.com \
--cc=da.gomez@samsung.com \
--cc=demarchi@kernel.org \
--cc=hare@suse.de \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-modules@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.com \
--cc=mcgrof@kernel.org \
--cc=petr.pavlu@suse.com \
--cc=samitolvanen@google.com \
--cc=target-devel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox