Skip to contentSkip to conversation

module-init-tools 0.9-alpha

ALPHA RELEASE Rusty Russell 3 participants 6 messages Nov 29, 2002 – Dec 2, 2002

lore
Share & tools
lore
#0 lore raw

0.9-alpha Version
o Fixed patch in NEWS to leave #include linux/elf.h, needed for CONFIG_KALLSYMS.
o Fixed extra newline in "in use by" message.
o Fixed parsing for new-style /proc/modules.
o Fixed version parsing code (thanks to Adam Richter's report)
o Fixed "running out of filedescriptors" (Adam Richter)
o Implemented options in modprobe
o Implemented install in modprobe
o Implemented options in modules.conf2modprobe.conf
o Implemented install in modules.conf2modprobe.conf
o Implemented probeall in modules.conf2modprobe.conf
o Implemented probe in modules.conf2modprobe.conf
o Changed modprobe version to be constant string, for "strings" to work easily.

Lightly tested, but seems to work here. No source RPM, since it's still alpha.

Thanks!
Rusty.
--
Anyone who quotes me in their sig is an idiot. -- Rusty Russell.

#1 lore raw
Quoted 16 lines · Rusty Russell

0.9-alpha Version
o Fixed patch in NEWS to leave #include linux/elf.h, needed for CONFIG_KALLSYMS.
o Fixed extra newline in "in use by" message.
o Fixed parsing for new-style /proc/modules.
o Fixed version parsing code (thanks to Adam Richter's report)
o Fixed "running out of filedescriptors" (Adam Richter)
o Implemented options in modprobe
o Implemented install in modprobe
o Implemented options in modules.conf2modprobe.conf
o Implemented install in modules.conf2modprobe.conf
o Implemented probeall in modules.conf2modprobe.conf
o Implemented probe in modules.conf2modprobe.conf
o Changed modprobe version to be constant string, for "strings" to work easily.

Quoted 2 lines

Lightly tested, but seems to work here. No source RPM, since it's still alpha.

Rusty,

What are the full set of patches that should be applied to take advantage of the latest module-init-tools? There has been a lot of traffic on lkml on modules with lots of little patches. Its not at all obvious just what needs be applied to 49/50.

Suspect that almost everything will once the correct patches are applied, if we get the correct patches...

TIA
Ed Tomlinson

#2 lore raw
In reply to Rusty Russell
Quoted 15 lines · Rusty Russell

0.9-alpha Version
o Fixed patch in NEWS to leave #include linux/elf.h, needed for CONFIG_KALLSYMS.
o Fixed extra newline in "in use by" message.
o Fixed parsing for new-style /proc/modules.
o Fixed version parsing code (thanks to Adam Richter's report)
o Fixed "running out of filedescriptors" (Adam Richter)
o Implemented options in modprobe
o Implemented install in modprobe
o Implemented options in modules.conf2modprobe.conf
o Implemented install in modules.conf2modprobe.conf
o Implemented probeall in modules.conf2modprobe.conf
o Implemented probe in modules.conf2modprobe.conf
o Changed modprobe version to be constant string, for "strings" to work easily.

Quoted 2 lines

Lightly tested, but seems to work here. No source RPM, since it's still alpha.

Your make moveold script didn't take into account that the modutils from RedHat and Keith Owens have lsmod, modprobe, and rmmod as symlinks to insmod. I worked around that by doing a "cp insmod lsmod", etc.

I took a stock 2.5.50-bk and added the namei.c patch and the patch to module.h out of the NEWS file. The RedHat 8.0 bootup scripts did not autoload the pcmcia_core, yenta_socket, ds, orinoco_cs, orinoco, and hermes modules, but I could load them by hand. Unfortuantely, it still does not allow the ethernet interface to be brought up an configured.

I then tried using the 2.4.18 kernel provided by RedHat. I didn't get the error messages I got using your 0.8 module init tools, but it also wouldn't load the ethernet drivers for my SMC2632W PCMCIA card.

When I run stock RedHat I get <beep> <beep> when the card is inserted. Is it true that the first beep is when the card insertion event is handled by the system, and the second beep is when the ethernet interface is brought up an configured?

In any case, on boot up I get <beep> <boop>. I believe this means that the card insertion event was handled correctly, but that the ethernet interface was not brought up and configured. lsmod does show that pcmcia_core, yenta_socket, and ds modules were loaded, but hermes, orinoco, and orinoco_cs were not. The modules could be loaded by hand, but that still didn't allow the ethernet interface to be brought up and configured. Following is a console extract from that session (The dhcp command at the end is a bash script which runs dhclient with the parameters required for me to connect):

[root@lap root]# lsmod
Module Size Used by Not tainted

ds                      7944   1
yenta_socket           11584   1
pcmcia_core            48608   0  [ds yenta_socket]
ext3                   61440   1
jbd                    46932   1  [ext3]

[root@lap root]# modprobe orinoco_cs
WARNING: Error inserting hermes (/lib/modules/2.4.18-18.8.0/kernel/drivers/net/wireless/hermes.o): Unknown symbol in module
WARNING: Error inserting orinoco (/lib/modules/2.4.18-18.8.0/kernel/drivers/net/wireless/orinoco.o): Unknown symbol in module
FATAL: Error inserting orinoco_cs (/lib/modules/2.4.18-18.8.0/kernel/drivers/net/wireless/orinoco_cs.o): Unknown symbol in module [root@lap root]# lsmod
Module Size Used by Not tainted

ds                      7944   1
yenta_socket           11584   1
pcmcia_core            48608   0  [ds yenta_socket]
ext3                   61440   1
jbd                    46932   1  [ext3]

[root@lap root]# ls /sbin/*.old
/sbin/depmod.old /sbin/insmod.old /sbin/lsmod.old /sbin/modprobe.old /sbin/rmmod.old [root@lap root]# /sbin/modprobe.old hermes
[root@lap root]# /sbin/modprobe.old orinoco
[root@lap root]# /sbin/modprobe.old orinoco_cs
[root@lap root]# lsmod
Module Size Used by Not tainted

orinoco_cs              5320   0  (unused)
orinoco                32824   0  [orinoco_cs]
hermes                  7204   0  [orinoco_cs orinoco]
ds                      7944   1  [orinoco_cs]
yenta_socket           11584   1
pcmcia_core            48608   0  [orinoco_cs ds yenta_socket]
ext3                   61440   1
jbd                    46932   1  [ext3]

[root@lap root]# dhcp
SIOCSIFADDR: No such device
eth0: unknown interface: No such device
eth0: unknown interface: No such device
[root@lap root]# uname -a
Linux lap 2.4.18-18.8.0 #1 Wed Nov 13 23:08:45 EST 2002 i686 i686 i386 GNU/Linux [root@lap root]#

#3 lore raw

In message <[email protected]> you write:

Quoted 7 lines · Rusty Russell
Quoted 2 lines

0.9-alpha Version

Your make moveold script didn't take into account that the modutils from RedHat and Keith Owens have lsmod, modprobe, and rmmod as symlinks to insmod. I worked around that by doing a "cp insmod lsmod", etc.

It should (Debian does the same thing, and it works here):

# Don't just move symlinks, reset them to point to xxx.old. moveold:

	if [ "`echo $(DESTDIR)$(sbindir) | tr -s / /`" = /sbin ]; then :;    \
	else								     \
		echo $@ usually only makes sense when installing into /sbin; \
		exit 1;							     \
	fi
	for f in insmod lsmod modprobe rmmod depmod; do			\
		if [ -L /sbin/$$f ]; then				\
			ln -sf `readlink /sbin/$$f`.old /sbin/$$f;	\
		fi;							\
		mv /sbin/$$f /sbin/$$f.old;				\
	done

What part of this doesn't work for you?

Quoted 5 lines

I took a stock 2.5.50-bk and added the namei.c patch and the patch to module.h out of the NEWS file. The RedHat 8.0 bootup scripts did not autoload the pcmcia_core, yenta_socket, ds, orinoco_cs, orinoco, and hermes modules, but I could load them by hand. Unfortuantely, it still does not allow the ethernet interface to be brought up an configured.

Argh, 0.9-alpha has a bug: I changed /etc/modprobe.conf to /tmp/modprobe.conf for testing and didn't revert it before release (you can see it trying to open "/tmp/modprobe.conf" in the strace in your next mail).

Quoted 2 lines

[root@lap root]# modprobe orinoco_cs
WARNING: Error inserting hermes (/lib/modules/2.4.18-18.8.0/kernel/drivers/net/wireless/hermes.o): Unknown symbol in module

Once again, a testing bug: I removed backwards compatibility so I could test on my stable machine.

I've fixed both these in 0.9-beta. If you would test one more time for me, I'd appreciate it. (Or, simply apply the patch below, which turns 0.9-alpha into 0.9-beta).

Thankyou *very* much for your persistent testing! Rusty.
--
Anyone who quotes me in their sig is an idiot. -- Rusty Russell.

ChangeLog +2 -0
diff -urN module-init-tools-0.9-alpha/ChangeLog module-init-tools-0.9-beta/ChangeLog
@@ -3,6 +3,8 @@
   CONFIG_KALLSYMS.
 o Fixed extra newline in "in use by" message.
 o Fixed parsing for new-style /proc/modules.
+o Fixed version parsing code (thanks to Adam Richter's report)
+o Fixed "running out of filedescriptors" (Adam Richter)	
 o Implemented options in modprobe
 o Implemented install in modprobe
 o Implemented options in modules.conf2modprobe.conf
configure +1 -1
diff -urN module-init-tools-0.9-alpha/configure module-init-tools-0.9-beta/configure
@@ -783,7 +783,7 @@
 
 PACKAGE=module-init-tools
 
-VERSION="0.9-alpha"
+VERSION="0.9-beta"
 
 if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
   { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
configure.in +1 -1
diff -urN module-init-tools-0.9-alpha/configure.in module-init-tools-0.9-beta/configure.in
@@ -2,7 +2,7 @@
 
 AC_CANONICAL_SYSTEM
 
-AM_INIT_AUTOMAKE(module-init-tools,"0.9-alpha")
+AM_INIT_AUTOMAKE(module-init-tools,"0.9-beta")
 
 AC_PROG_CC
 
modprobe.c +0 -6
diff -urN module-init-tools-0.9-alpha/modprobe.c module-init-tools-0.9-beta/modprobe.c
@@ -638,11 +638,7 @@
 				   { "syslog", 0, NULL, 's' },
 				   { NULL, 0, NULL, 0 } };
 
-#if 0
 #define DEFAULT_CONFIG "/etc/modprobe.conf"
-#else
-#define DEFAULT_CONFIG "/tmp/modprobe.conf"
-#endif
 
 int main(int argc, char *argv[])
 {
@@ -658,9 +654,7 @@
 	struct module_options *modoptions = NULL;
 	struct module *start;
 
-#if 0
 	try_old_version("modprobe", argv);
-#endif
 
 	while ((opt = getopt_long(argc, argv, "vVC:o:knqsc", options, NULL)) != -1){
 		switch (opt) {
#4 lore raw

I just built and installed 0.9-beta. First it tried to install into /usr/local/sbin which is pretty useless here. Fix this with --prefix= and tried again. This time it put things in /sbin as expected, but did not rename the old files with a .old suffix. Should this still happen? If not, what happened with backwards compat?

TIA
Ed Tomlinson

Quoted 131 lines · Rusty Russell

In message <[email protected]> you write:

Quoted 7 lines · Rusty Russell
Quoted 2 lines

0.9-alpha Version

Your make moveold script didn't take into account that the modutils from RedHat and Keith Owens have lsmod, modprobe, and rmmod as symlinks to insmod. I worked around that by doing a "cp insmod lsmod", etc.

It should (Debian does the same thing, and it works here):

# Don't just move symlinks, reset them to point to xxx.old. moveold:
if [ "echo $(DESTDIR)$(sbindir) | tr -s / /" = /sbin ]; then :; \
else \
echo $@ usually only makes sense when installing into /sbin; \
exit 1; \
fi
for f in insmod lsmod modprobe rmmod depmod; do \
if [ -L /sbin/$$f ]; then \
ln -sf readlink /sbin/$$f.old /sbin/$$f; \
fi; \
mv /sbin/$$f /sbin/$$f.old; \
done

What part of this doesn't work for you?

Quoted 5 lines

I took a stock 2.5.50-bk and added the namei.c patch and the patch to module.h out of the NEWS file. The RedHat 8.0 bootup scripts did not autoload the pcmcia_core, yenta_socket, ds, orinoco_cs, orinoco, and hermes modules, but I could load them by hand. Unfortuantely, it still does not allow the ethernet interface to be brought up an configured.

Argh, 0.9-alpha has a bug: I changed /etc/modprobe.conf to /tmp/modprobe.conf for testing and didn't revert it before release (you can see it trying to open "/tmp/modprobe.conf" in the strace in your next mail).

Quoted 4 lines

[root@lap root]# modprobe orinoco_cs
WARNING: Error inserting hermes (/lib/modules/2.4.18-18.8.0/kernel/drivers/net/wireless/hermes.o):
Unknown symbol in module

Once again, a testing bug: I removed backwards compatibility so I could test on my stable machine.

I've fixed both these in 0.9-beta. If you would test one more time for me, I'd appreciate it. (Or, simply apply the patch below, which turns 0.9-alpha into 0.9-beta).

Thankyou *very* much for your persistent testing! Rusty.
--
Anyone who quotes me in their sig is an idiot. -- Rusty Russell.

diff -urN module-init-tools-0.9-alpha/ChangeLog
module-init-tools-0.9-beta/ChangeLog
--- module-init-tools-0.9-alpha/ChangeLog 2002-11-29 21:45:25.000000000
+1100
+++ module-init-tools-0.9-beta/ChangeLog 2002-11-29 21:49:23.000000000
+1100 @@ -3,6 +3,8 @@
CONFIG_KALLSYMS.
o Fixed extra newline in "in use by" message.
o Fixed parsing for new-style /proc/modules.

ChangeLog +2 -0
+o Fixed version parsing code (thanks to Adam Richter's report)
+o Fixed "running out of filedescriptors" (Adam Richter)
 o Implemented options in modprobe
 o Implemented install in modprobe
 o Implemented options in modules.conf2modprobe.conf

diff -urN module-init-tools-0.9-alpha/configure
module-init-tools-0.9-beta/configure
--- module-init-tools-0.9-alpha/configure 2002-11-29 21:45:49.000000000
+1100
+++ module-init-tools-0.9-beta/configure 2002-12-02 13:10:43.000000000
+1100 @@ -783,7 +783,7 @@

PACKAGE=module-init-tools

(quoted diff) +1 -1
-VERSION="0.9-alpha"
+VERSION="0.9-beta"
 
 if test "`cd $srcdir && pwd`" != "`pwd`" && test -f
 $srcdir/config.status; then
   { echo "configure: error: source directory already configured; run
   { "make distclean" there first" 1>&2; exit 1; }

diff -urN module-init-tools-0.9-alpha/configure.in module-init-tools-0.9-beta/configure.in
--- module-init-tools-0.9-alpha/configure.in 2002-11-29 21:44:19.000000000 +1100
+++ module-init-tools-0.9-beta/configure.in 2002-12-02 13:10:29.000000000
+1100 @@ -2,7 +2,7 @@

AC_CANONICAL_SYSTEM

configure.in +1 -1
-AM_INIT_AUTOMAKE(module-init-tools,"0.9-alpha")
+AM_INIT_AUTOMAKE(module-init-tools,"0.9-beta")
 
 AC_PROG_CC

diff -urN module-init-tools-0.9-alpha/modprobe.c
module-init-tools-0.9-beta/modprobe.c
--- module-init-tools-0.9-alpha/modprobe.c 2002-11-29 21:46:47.000000000
+1100
+++ module-init-tools-0.9-beta/modprobe.c 2002-12-02 13:10:19.000000000
+1100 @@ -638,11 +638,7 @@
{ "syslog", 0, NULL, 's' },
{ NULL, 0, NULL, 0 } };

modprobe.c +0 -7
-#if 0
 #define DEFAULT_CONFIG "/etc/modprobe.conf"
-#else
-#define DEFAULT_CONFIG "/tmp/modprobe.conf"
-#endif
 
 int main(int argc, char *argv[])
 {
@@ -658,9 +654,7 @@
 struct module_options *modoptions = NULL;
 struct module *start;
 
-#if 0
 try_old_version("modprobe", argv);
-#endif
 
 while ((opt = getopt_long(argc, argv, "vVC:o:knqsc", options, NULL)) !=
 -1){ switch (opt) {
-

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

#5 lore raw

In message <[email protected]> you write:

Quoted 5 lines

I just built and installed 0.9-beta. First it tried to install into /usr/local/sbin which is pretty useless here. Fix this with --prefix= and tried again. This time it put things in /sbin as expected, but did not rename the old files with a .old suffix. Should this still happen? If not, what happened with backwards compat?

First line of the README:

READ INSTRUCTIONS CAREFULLY, OTHERWISE YOU MAY DESTROY YOUR OLD UTILS!

Reinstall your old modutils, then read the README.

There's a "check-destroy-old" target in Makefile.am, I'm just trying to figure out how to get autoconf to run it before the install target.

You're probably thinking I should fix this ASAP, and I think you're right 8)

Rusty.
--
Anyone who quotes me in their sig is an idiot. -- Rusty Russell.