From: Keith Owens <kaos@ocs.com.au>
To: linux-hotplug@vger.kernel.org
Subject: Re: Device count (to be done with)
Date: Tue, 16 Oct 2001 04:03:23 +0000 [thread overview]
Message-ID: <marc-linux-hotplug-100320507917549@msgid-missing> (raw)
In-Reply-To: <marc-linux-hotplug-100274805227939@msgid-missing>
On Mon, 15 Oct 2001 23:27:52 +0100,
Stamatis Mitrofanis <ewstam@softhome.net> wrote:
>I'm not very sure about that one. We had a suggestion from Keith Owens
>for a hidden /proc entry. I'll quote:
Not hidden, just root only.
>
>* kernel/module.c registers /proc/sys/kernel/mod_use_count, mode 600.
>* module.c creates a dummy module entry called mod_use_count the first
> time that /proc/sys/kernel/mod_use_count is written to.
>* /proc/sys/kernel/mod_use_count recognises commands like
> up module-name
> down module-name
> and adjusts the use counts and reference chain accordingly. Hotplug
> scripts use mod_use_count to bump the reference count before allowing
> a start event to continue and after completing a stop event. "
>
>Now our point of disagreement is whether this file will be read-only or
>it will also accept two commands (something like "inc" and "dec").
The file cannot be read only, it exists to take commands from user
space to adjust the use count on loaded modules.
echo "up foo" > /proc/sys/kernel/mod_use_count
increments the use count on module foo. Whether the command is "up" or
"inc" is irrelevant.
>The should-count has a
>fundamentially different meaning than the use count (must-count).
I am still not convinced that you need a separate count field, if
_either_ count is non-zero then the module will not be unloaded. A
single count is all that is required.
Adding a second count field will be very messy. It has to be stored
somewhere in the module header created by insmod so you need a new
version of insmod. Alternatively it can be stored in an area created
by syscall init_module and pointed to by the kernel_data field, that
needs a new kernel.
The second count has to be exposed for rmmod and friends. This is the
biggest mess, struct module_info has to be expanded to hold the new
count, syscall query_module and several bits of modutils also have to
be changed for the new structure size.
It is absolutely that such changes are backwards compatible. Users can
run new modutils on old kernels and vice versa, some people even run
modutils 2.4 on 2.0 kernels. I will not accept any change that breaks
compatibility between modutils and kernels at the moment. modutils 2.5
will break compatibility all over the place but that is acceptable for
development modutils and kernels.
Since it is a lot of work to add a separate count field, you will have
to convince me that you really need a separate count. Neither rmmod
nor autoclean (which is just rmmod -a) will remove any module with a
non-zero use count. Either the "should" count stops unloading or it
does not. If it does not stop rmmod then the "should" count is
pointless.
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
next prev parent reply other threads:[~2001-10-16 4:03 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-10-10 20:06 Device count (to be done with) Stamatis Mitrofanis
2001-10-11 15:01 ` Oliver Neukum
2001-10-12 22:53 ` Stamatis Mitrofanis
2001-10-13 8:45 ` Oliver Neukum
2001-10-15 0:15 ` Stamatis Mitrofanis
2001-10-15 9:39 ` Oliver.Neukum
2001-10-15 22:27 ` Stamatis Mitrofanis
2001-10-16 4:03 ` Keith Owens [this message]
2001-10-16 5:37 ` Greg KH
2001-10-16 5:59 ` Keith Owens
2001-10-16 7:02 ` David Brownell
2001-10-16 8:23 ` Oliver Neukum
2001-10-16 8:29 ` Oliver Neukum
2001-10-16 8:47 ` Keith Owens
2001-10-16 12:00 ` Oliver Neukum
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=marc-linux-hotplug-100320507917549@msgid-missing \
--to=kaos@ocs.com.au \
--cc=linux-hotplug@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;
as well as URLs for NNTP newsgroup(s).