VOGONS


First post, by eesz34

User metadata
Rank Member
Rank
Member

I'm using old Slackware on an old computer, version 3.5, and have two annoying problems.

The first is during boot I get:

Updating module dependencies for Linux 2.0.34:
/lib/modules/2.0.34/misc/ipx.o: unresolved symbols(s)
/lib/modules/2.0.34/misc/b1pci.o: unresolved symbols(s)
/lib/modules/2.0.34/misc/appletalk.o: unresolved symbols(s)

...and lots more. These are modules I do not use.

The second issue is, maybe an issue I don't now, is various CSLIP and PPP statements during boot when I intentionally left out everything SLIP/PPP related during the recompile. I have an ethernet interface on it so I don't need those. Is this normal?

Reply 2 of 13, by eesz34

User metadata
Rank Member
Rank
Member
giantclam wrote on 2023-11-03, 22:58:

If you didn't include those modules in the kernel .config they shouldn't have been built ~ could you provide your kernel .config file?

I learn something new every day. I had to go find this file and found something interesting.

# Network device support
#CONFIG_NETDEVICES=y
CONFIG_DUMMY=y
# CONFIG_EQUALIZER is not set
# CONFIG_DLCI is not set
# CONFIG_PLIP is not set
# CONFIG_PPP is not set
# CONFIG_SLIP is not set
# CONFIG_NET_RADIO is not set
CONFIG_NET_ETHERNET=y
# CONFIG_NET_VENDOR_3COM is not set
# CONFIG_NET_VENDOR_SMC is not set
# CONFIG_NET_PCI is not set

The only references to PPP or SLIP is commented out. I know I answered "N" to these when I ran "make config". I ran it again, verified the timestamp of .config was updated, but it still looks like this. Confused.

Reply 3 of 13, by the3dfxdude

User metadata
Rank Member
Rank
Member

I'm guessing you disabled alot of stuff. Do you really not have any PCI ethernet card? What is this computer?

I would guess that you disabled alot of stuff, and then left the existing stock slackware modules installed which use certain things you disabled. Either replace the modules with the ones for your kernel, or revert your kernel. The missing symbols must be something missing from the core kernel.

The kernel config program is just interpreting a variable not being set as a disabled config or whatever the default interpretation. This is actually quite common way to do something like this and the program wrote this out based on you disabling PPP and SLIP.

Reply 4 of 13, by eesz34

User metadata
Rank Member
Rank
Member
the3dfxdude wrote on 2023-11-04, 01:04:

I'm guessing you disabled alot of stuff. Do you really not have any PCI ethernet card? What is this computer?

I would guess that you disabled alot of stuff, and then left the existing stock slackware modules installed which use certain things you disabled. Either replace the modules with the ones for your kernel, or revert your kernel. The missing symbols must be something missing from the core kernel.

The kernel config program is just interpreting a variable not being set as a disabled config or whatever the default interpretation. This is actually quite common way to do something like this and the program wrote this out based on you disabling PPP and SLIP.

I did disable a lot. It's a 386 with 8MB 🤣. No PCI in that.

Wait, how do I do this? I first used Linux in the 90s but never learned more than enough to get by. I'd rather keep the kernel I compiled because I pulled out things I don't need and added what I do need. Looks like I modify rc.modules, correct? Can I simply comment out

/sbin/depmod -a

or is that not correct?

And I may have found where PPP and SLIP is loading, in the same file. And also why I'm seeing parallel port and PS/2 mouse stuff during boot when I in fact I removed that from the kernel.

Reply 5 of 13, by the3dfxdude

User metadata
Rank Member
Rank
Member

Well commenting depmod out is up to you. You do need to run it anytime you install modules.

So if you want to keep the kernel, then you should install the modules you compiled with your kernel. So I think kernel 2.0 is new enough, you should have a /lib/modules/2.0.34. You can rename that to 2.0.34.bak and then go into your kernel source tree and run "make modules_install". Then you should not get any depmod errors. Of course my instructions may be broken. I haven't actually used Slackware 3.5. So I could be telling you something that can break your system. Proceed with caution.

Oh BTW, on running old Slackware, I did install Slackware 1.01 on a real 486 with ISA only. The kernel does not support PCI at all. Well there might be some code being written in late 93 but it doesn't do anything. So I know how that works, and had to compile a kernel for that. The first linux I used was in 2000, and I have never done a daily drive of anything older except now this year with Slackware 1.01.

Reply 6 of 13, by giantclam

User metadata
Rank Member
Rank
Member
the3dfxdude wrote on 2023-11-04, 01:04:

I'm guessing you disabled alot of stuff. Do you really not have any PCI ethernet card? What is this computer?

I would guess that you disabled alot of stuff, and then left the existing stock slackware modules installed which use certain things you disabled. Either replace the modules with the ones for your kernel, or revert your kernel. The missing symbols must be something missing from the core kernel.

The kernel config program is just interpreting a variable not being set as a disabled config or whatever the default interpretation. This is actually quite common way to do something like this and the program wrote this out based on you disabling PPP and SLIP.

It's been such a long time since the series 2 linux kernels, it's a real brain dig to recall it all. It would seem like it's using the old modules, or perhaps booting the old kernel?...hard to say. The way I remember it, linux-2.0.36 was a better choice anyway (additions, bugfixes) and I think if you miss doing a 'make dep' after 'make config{menuconfig, xconfig}' something like the above pans-out. The unresolved symbols could be net/packet filter stuff, which is why I asked for the kernel .config file, but alas I'm still blind ... it's the only way to divine what choices the OP made during configuration without asking the same amount of questions =) Commenting out depmod shouldn't be needed....

Reply 7 of 13, by jakethompson1

User metadata
Rank Oldbie
Rank
Oldbie

Yes, I suspect you rebuilt your kernel and it's the exact same version and the old modules are still lurking in /lib/modules/2.0.34

Easy solution is build a 2.0.40. Hey may as well update anyway?
Or you could rename the 2.0.34 directory to 2.0.34old or something modules_install again.

Reply 8 of 13, by BitWrangler

User metadata
Rank l33t++
Rank
l33t++

Those older Slackware distros, it would usually take you 6 months of running them to hunt down all the config file and other typos. Some in the filesystem sometimes too. Gotta check for references to /ect instead of /etc your second drive being /dev/hdb not /dev/hbd and all kinds of crap.

Unicorn herding operations are proceeding, but all the totes of hens teeth and barrels of rocking horse poop give them plenty of hiding spots.

Reply 9 of 13, by eesz34

User metadata
Rank Member
Rank
Member
jakethompson1 wrote on 2023-11-04, 02:36:

Yes, I suspect you rebuilt your kernel and it's the exact same version and the old modules are still lurking in /lib/modules/2.0.34

Easy solution is build a 2.0.40. Hey may as well update anyway?
Or you could rename the 2.0.34 directory to 2.0.34old or something modules_install again.

You and the3dfxdude both suggested "make modules_install" so I tried it, on a PCem instance so no worries about breaking anything, and it returns:

ls: *.0: No such file or directory

So hmmm. But yeah I could just get 2.0.40. Might be interesting to try.

BTW I am building this in PCem then copying the kernel to the 386 because it takes....so....damn....long to compile it on that. But I'm having the same problems in PCem so it's not because I didn't compile it on the 386.

Reply 10 of 13, by the3dfxdude

User metadata
Rank Member
Rank
Member

I might need a little more info on the make modules_install output if that is a specific directory or how it searches for modules. Is this where you fully built the modules? Also, did you disable modules support? If you copied over the kernel from an emulator, and the source is on a different disk, then you need to grab the modules from the source tree in the emulator. You may be able to make modules_install on the emulator and copy the /lib/modules/2.0.34 directory over to the real machine and run depmod. Yes it should also work on the emulator if you properly installed the kernel and modules, generally speaking.

Reply 11 of 13, by eesz34

User metadata
Rank Member
Rank
Member
the3dfxdude wrote on 2023-11-04, 13:49:

I might need a little more info on the make modules_install output if that is a specific directory or how it searches for modules. Is this where you fully built the modules? Also, did you disable modules support? If you copied over the kernel from an emulator, and the source is on a different disk, then you need to grab the modules from the source tree in the emulator. You may be able to make modules_install on the emulator and copy the /lib/modules/2.0.34 directory over to the real machine and run depmod. Yes it should also work on the emulator if you properly installed the kernel and modules, generally speaking.

Correct, I did the building on PCem. So for all intents and purposes we can ignore the 386 as I get these errors on both.

I did not disable module support in "make config". I however did not choose to build a single feature as a module. Everything was either Y or N.

Reply 12 of 13, by the3dfxdude

User metadata
Rank Member
Rank
Member

Well in that case you have no modules, and the error message might be accurate 😀 Then you should be good to go if you "removepkg modules" to remove the stock modules but you could just keep them too if any of them happen to work. You did remove something from network support to have the symbol errors.

Reply 13 of 13, by eesz34

User metadata
Rank Member
Rank
Member
the3dfxdude wrote on 2023-11-04, 14:21:

Well in that case you have no modules, and the error message might be accurate 😀 Then you should be good to go if you "removepkg modules" to remove the stock modules but you could just keep them too if any of them happen to work. You did remove something from network support to have the symbol errors.

Just commented that stuff out of rc.modules and that takes care of it. "removepkg modules" gave me some error. In any case all is well now!