All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lucas De Marchi <lucas.de.marchi@gmail.com>
To: linux-modules@vger.kernel.org
Cc: Daniel Mack <daniel@zonque.org>,
	David Herrmann <dh.herrmann@googlemail.com>,
	Lennart Poettering <lennart@poettering.net>,
	Kay Sievers <kay@vrfy.org>,
	Lucas De Marchi <lucas.demarchi@intel.com>
Subject: [PATCH] libkmod-module: fix return code in error path
Date: Sat, 13 Jun 2015 18:45:12 -0300	[thread overview]
Message-ID: <1434231912-20614-1-git-send-email-lucas.de.marchi@gmail.com> (raw)

From: Lucas De Marchi <lucas.demarchi@intel.com>

ENOSYS is the wrong errno to return when we don't find a module in
kmod_module_insert_module(). Why is it there in the first place?  This
goes back to kmod v1 when we couldn't load modules by names, but we
should give a path instead.

708624a ("ELF: initial support for modinfo and strip of modversions and
vermagic.") changed that so we do a lazy-search by the module path in
this function. Later  f304afe ("Change error message to reflect
reality") fixed the log message but the return coded remained the same.
---

CC'ing here people from systemd who were bitten by this bug in kmod:
https://github.com/systemd/systemd/pull/166

I'm not sure about changing the return code since it was returning ENOSYS since
v1 :-/.  However maybe the best thing to do is just treat it as a bug and let
the patch to be backported by distros that want it.  Thoughts?


 libkmod/libkmod-module.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libkmod/libkmod-module.c b/libkmod/libkmod-module.c
index 366308f..50b2ff9 100644
--- a/libkmod/libkmod-module.c
+++ b/libkmod/libkmod-module.c
@@ -830,7 +830,7 @@ KMOD_EXPORT int kmod_module_insert_module(struct kmod_module *mod,
 	path = kmod_module_get_path(mod);
 	if (path == NULL) {
 		ERR(mod->ctx, "could not find module by name='%s'\n", mod->name);
-		return -ENOSYS;
+		return -ENOENT;
 	}
 
 	mod->file = kmod_file_open(mod->ctx, path);
-- 
2.4.3

             reply	other threads:[~2015-06-13 21:45 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-13 21:45 Lucas De Marchi [this message]
2015-06-14 10:55 ` [PATCH] libkmod-module: fix return code in error path David Herrmann
2015-06-18  4:36   ` Lucas De Marchi

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=1434231912-20614-1-git-send-email-lucas.de.marchi@gmail.com \
    --to=lucas.de.marchi@gmail.com \
    --cc=daniel@zonque.org \
    --cc=dh.herrmann@googlemail.com \
    --cc=kay@vrfy.org \
    --cc=lennart@poettering.net \
    --cc=linux-modules@vger.kernel.org \
    --cc=lucas.demarchi@intel.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.