LinuxQuestions.org
Review your favorite Linux distribution.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 06-07-2005, 11:24 PM   #1
wombat53
Member
 
Registered: Jun 2005
Location: Australia
Distribution: Linux linux01 3.9.5-301.fc19.x86_64
Posts: 179

Rep: Reputation: 30
Question Boot-related question.


Hi. I have a couple of boot-related questions that have bothered me since I first installed 9.1 early last year.They are (seemingly) unrelated and so will be separate 2 or 3 threads.
Perhaps the most meaningful is the apperance of this line:
Jun 7 23:36:30 george kernel: Warning only 896MB will be used.
Jun 7 23:36:30 george kernel: Use a HIGHMEM enabled kernel.

I have 1.5GB RAM on the machine.

Now, I know there are Configuratian parms that determine the use/not-use of upper memory. So first, where do I look to see the current value?
/boot has a file ".config" (with a dot prefix) of Aprl 23 2004. Is this the place?
If so, this is what is there:
# CONFIG_X86_CPUID is not set
# CONFIG_NOHIGHMEM is not set
CONFIG_HIGHMEM4G=y
# CONFIG_HIGHMEM64G is not set
CONFIG_HIGHMEM=y
# CONFIG_HIGHIO is not set
# CONFIG_MATH_EMULATION is not set
# CONFIG_MTRR is not set
CONFIG_SMP=y

Clearly, it looks OK.

Now, I honestly do not know a) if this is the "right" config file, a reflection of the current configuration,or something else entirely, but that is what is there, at {about} the time of install. There is a link called "config" of 17 March 2004 which points to -> config-ide-2.4.22 of Sep 2, 2003 (which may be SW 9.1 "out of the box"), and this has different values. I am guessing this is a link created at setup, referring to the supplied kernel. It has the following values.
CONFIG_X86_CPUID=m
CONFIG_NOHIGHMEM=y
# CONFIG_HIGHMEM4G is not set
# CONFIG_HIGHMEM64G is not set
# CONFIG_HIGHMEM is not set
CONFIG_MATH_EMULATION=y
CONFIG_MTRR=y
# CONFIG_SMP is not set

Clearly this has NOHIGHMEM (perhaps a system default?)
I am guessing I invoked a configuration program to make the changes above, but never implemented them (cold feet, as a newbie at the time?).

Which is the correct file, please? And if I need to "implement" the new one, then what is the procedure? Is it to compile and install the new kernel, as documented in a number of places, including the Slackware book, "Selecting a Kernel", copying the relevant files over to /boot, etc. Or is it as simple as copying over the revised config file only? (My guess is "no, its not that simple".

Many Thanks
George
 
Old 06-07-2005, 11:35 PM   #2
gbonvehi
Senior Member
 
Registered: Jun 2004
Location: Argentina (SR, LP)
Distribution: Slackware
Posts: 3,145

Rep: Reputation: 53
Well, it seems by the messages you're getting at boot that the kernel you're booting doesn't have high memory support enabled, and it's configuration is probably the last config file you posted.
As far as I know, Slackware don't have kernels with HIGHMEM enabled by default so will have to compile a kernel.

The first configuration seems fine except for SMP, do you have two processors to use this? You may have copied the config file from the other, and edited those lines, but won't change anything, those variables are used to tell the kernel what to build with it and what not, won't do anything as it is. Even more, it's not needed to have a config file there, it's just there if you want to remember what options you used to compile that specific kernel.

I would recommend you to download the latest kernel from http://www.kernel.org (If you want something stable, and you're fine with your kernel, choose the 2.4 version).
And with patience, uncompress it and issue: make menuconfig
Navigate in the options seeing what do you have, carefully selecting all. Don't rush. Then when you're satisfied, try to compile and install it.

Last edited by gbonvehi; 06-07-2005 at 11:37 PM.
 
Old 06-07-2005, 11:37 PM   #3
edong23
Member
 
Registered: Apr 2005
Distribution: Slackware
Posts: 350

Rep: Reputation: 30
i would cd to /usr/src/linux and su and make menuconfig then look under the menu system. it will use the current config file, so whatever it says should tell you.it is in the processor type and features section. by default it is not set to y. so you will have to rebuild the kernel.
 
Old 06-08-2005, 10:18 PM   #4
wombat53
Member
 
Registered: Jun 2005
Location: Australia
Distribution: Linux linux01 3.9.5-301.fc19.x86_64
Posts: 179

Original Poster
Rep: Reputation: 30
Thanks guys..I followed the reconfig , and re-install kernel process very carefully , etc., and landed with a "unable to open initial console" message...and had to power off, rebooot into "old" linux, and fall back...copy the "old" vmlinuz and System. map back, and am now back to square one. It happens..

Now my question is this. Clearly I made a number of changes in menuconfig, over and above enablement of HIGHMEM, and to find out which is the offending change is a daunting task. My question is how can I "generate" the config that matches my current system? Then I can simply make the precise change that is required, and presumably not screw anything else up.
The .config file in /usr/src/linux has been changed (by me) several times during menuconfig, so it is useless. Indeed, it is the offending config file!

I can copy the original off the install CD Disk 1 /kernels/bare.i (dating to late Sep. 2003), but this may - or may not - reflect the current system. I simply cannot remember if I implemented such changes, (Clearly I did not enable HIGHMEM, an obvious change, so it is indeed possible, that I made no changes?).

So, in short, is there away to generate the config for the current system (warts and all)? I could then move on from there, in a stepwise manner. My understanding is that opening menuconfig takes the last .config (unless you tell him otherwise)...it doesn't somehow "get it" from the built system (perhaps stored internally) . I may be wrong, of course.
Separately, I have looked for the root of the missing initial console error, and many on forum sites seem as confused as I.
Is there a "typical" reason, a "gotcha" in menuconfig that unintentionally produces this errror? I do have a /dev/console, owned by root, group=tty.
Again
Thanks
George
 
Old 06-08-2005, 10:29 PM   #5
gbonvehi
Senior Member
 
Registered: Jun 2004
Location: Argentina (SR, LP)
Distribution: Slackware
Posts: 3,145

Rep: Reputation: 53
Well, the kernel doesn't store it's settings in a internal config file (at least 2.4 don't, you can choose this in 2.6). There's no way to know the exact configuration for your running kernel, but I'm sure it's the default one, if you've never compiled it before, it couldn't change. So the /boot/config-ide-2.4.X file you have should match it.
To use it, you've to copy it to your kernel source directory (usually /usr/src/linux) and call it .config (yes, with a dot).
I don't know what could cause that problem, however, most people usually don't build a running kernel at the first time, so be patient and try again (it's normal ).
 
Old 06-08-2005, 10:30 PM   #6
wombat53
Member
 
Registered: Jun 2005
Location: Australia
Distribution: Linux linux01 3.9.5-301.fc19.x86_64
Posts: 179

Original Poster
Rep: Reputation: 30
Further to above, I have just discovered a defconfig file in ........../arch/i386. This has an eve older timestamp than the config that comes with the kernel on CD. Clearly this is some kind of default. Now I guess if one has to start from scratch, which is the preferred one...a) the defconfig in i386, b) or the more recent one on CD?
Better than both - of course - is a representation of the current system, which was the question in post above.
Thanks
George
 
Old 06-08-2005, 11:05 PM   #7
wombat53
Member
 
Registered: Jun 2005
Location: Australia
Distribution: Linux linux01 3.9.5-301.fc19.x86_64
Posts: 179

Original Poster
Rep: Reputation: 30
gbonvehi
You have been very helpful.
I will go though the process again, changing only the memory-related parms, from the CD version of the config, copied to /usr/src/linux as .config.
George
 
Old 06-09-2005, 12:59 AM   #8
edong23
Member
 
Registered: Apr 2005
Distribution: Slackware
Posts: 350

Rep: Reputation: 30
just rebuild it, it might not work 3 or 4 times, hell i still mess up and hav eto build 2 or 3 times to get everything right. jsut make sure, absolutly sure that you build in the filesystems you need and mount at boot and all that stuff that the how_tos tell you to. you are just missing something here and there, just keep the old image as fall back and keep building. really you might as well build a 2.6 if you are going to build one. but yeah, like gbonvehi said, just cp /boot/config-whatever /usr/src/linux-whatever if you want to build it back to default, but the default is just an extremely large and very modular kernel,, if you build on you will have a faster boot time and smoother running system. i am running slack 10.1 on this machine with 2.6.11.7 and my uptime is 72 days 13 hours and 45 minutes and some seconds- and that is all the while every day burning cds and ripping mp3s and playing dvds and ripping dvds and encoding video and rendering on blender and gimp and games and ___________... just fill in the blank. slack is so solid i love it. enjoy.
 
Old 06-09-2005, 05:44 PM   #9
wombat53
Member
 
Registered: Jun 2005
Location: Australia
Distribution: Linux linux01 3.9.5-301.fc19.x86_64
Posts: 179

Original Poster
Rep: Reputation: 30
Well, guys, I have gotten futher in the hole....I tried to reconfigure and recompile kernel (starting with config from install CD), but again lost my console, as described above. So, I fell back , yet again, restore my vmlinuz and System.map to thei earlier states, rebuilt lilo (and copied boot sector to floppy, and from floppy to WIN C:\ to continue to enable dual boot from NT Loader), but I still seem to have regressed.

Now, I have no networking capability, local or internet. I have loopback, but no eth0 at all. My guess is that the NIC card is not recognized. (Let me note that I have 2 NIC cards, one of which is connected to nothing and should be removed, but everything has functioned correctly with this in place), the other connected to a broadband Motorola router, which has always assigned DHCP addresses, to me , wife's machine and child's wireless machine. It still does, but not when Linux is running, not any more.

Booting indicates that "dhpcd[nnn] timed out waiting for a server response". A further result of this non-recognition is that nmbd cannot find a WORKGROUP.

Now, all this used to work, and as far as I know, there have been no changes resulting from menuconfig (sure, I have changed that file many times, but the changes have never made it to a recompiled kernel).

I am really, really lost. I have zero connectivity from this system, when running Linux, in WIN, all is well, so the cabling, etc. is all fine. It is clearly related to non-recognition of 3Com 3C905B card..

I should also add that I just observed that /var/log/messages DOES find the "unconnected" card, and assigns it to eth0. Now sonce it is not connected to anything, I can see why there is zero connectivity. Bu this was never "recognized before, or if it was, it was never, eve assigned to eth0.

But I didn't change anything!!!
Perhaps I can place the cable in the newly "found" NIC jack, or remove that card, and see if it comes up properly.
But I didn't change anything, that is the mystery.

I really would appreciate guidance.....
 
Old 06-09-2005, 06:08 PM   #10
wombat53
Member
 
Registered: Jun 2005
Location: Australia
Distribution: Linux linux01 3.9.5-301.fc19.x86_64
Posts: 179

Original Poster
Rep: Reputation: 30
Further to above, I physically removed the "second" and unused NIC card, even tho it was the one identified by LINUX (if you ask why was there was an unused card, it used to be connected to cable modem. I have since got a router, which itself connects to modem, and that connection was no longer required..I just never removed the card, until now). So, I only need one NIC to connect to the router, a connection LINUX has always identified as eth0.

I had hoped that LINUX might now recognize the NIC it had always recognized and give me eth0, and local and internetwork connectity, but no, it has not.

How can I get LINUX to recognize an industry standard 3COM NIC (which has always been there), without reconfiguring and compiling the kernel? I am sure this is something simple.
Thanks
George
 
Old 06-09-2005, 07:23 PM   #11
gbonvehi
Senior Member
 
Registered: Jun 2004
Location: Argentina (SR, LP)
Distribution: Slackware
Posts: 3,145

Rep: Reputation: 53
You can see if you've compiled the module to support it and load it, and if you don't you can compile the module without recompiling the kernel.
See more details about it using: lspci
Then search for the module it needs on the internet or post it here and someone will tell you.

To build the module, goto your kernel sources dir and use make menuconfig (or xconfig as you wish).
Select the support for the card you need AS MODULE, save the configuration and run: make modules && make modules_install
 
Old 06-09-2005, 08:58 PM   #12
wombat53
Member
 
Registered: Jun 2005
Location: Australia
Distribution: Linux linux01 3.9.5-301.fc19.x86_64
Posts: 179

Original Poster
Rep: Reputation: 30
gbonvehi
It is in the configuration file as a module <M>
I can - and will "make modules" and make "modules_install", but I do not know if this will make a difference.
I guess if I just knew the actual gcc command and options to compile, link etc., and place the resulting 3c59x.o module in the right place...would this do the trick? Then I guess /sbin/modprobe/3c59x would find it and all would be well again? Or is that NOT the way to do things?

I am thinking that although my compile kernel may have failed (and I remain at base 9.1 level) , the compile of modules may well have worked, and in the process, this module somwhow "disappeared".
lspci tells me what is on the machine (bus). Is there a LINUX utility that tells what modules actually reside in the system, that are kernel loadable (on demand) and/or builtin to the kernel?
Thanks
 
Old 06-09-2005, 09:08 PM   #13
gbonvehi
Senior Member
 
Registered: Jun 2004
Location: Argentina (SR, LP)
Distribution: Slackware
Posts: 3,145

Rep: Reputation: 53
Well if you built new modules it's up to you if you run make modules and make modules_install after the failing make bzImage (this actually depends on which commands you used to build the kernel).

I never tried to compile a module that came with the kernel source separately so I can't help you there, however, I'm sure that selecting it in the configuration and then running make modules && make modules_install will do the work.

You can find all the compiled and ready to use modules for your kernel under /lib/modules/X.X.XX (being the Xs your kernel version).

Last edited by gbonvehi; 06-09-2005 at 09:10 PM.
 
Old 06-09-2005, 10:47 PM   #14
wombat53
Member
 
Registered: Jun 2005
Location: Australia
Distribution: Linux linux01 3.9.5-301.fc19.x86_64
Posts: 179

Original Poster
Rep: Reputation: 30
gb
I copied the source config for the kernal, and compiled eveything, untouched. I have the required 3COM driver back now, so thank you again.
There is still the issue of HIGHMEM and migration to 10.1, but I think that can wait <g>
George
 
Old 06-09-2005, 11:07 PM   #15
edong23
Member
 
Registered: Apr 2005
Distribution: Slackware
Posts: 350

Rep: Reputation: 30
i think that you might just be one of those people that linux doesnt like... jk. i am not exactally understanding y it didnt work. can you post a step by step of what you did from boot to reboot into kernel so that i can see waht happened. you dont havbe to be too incredibly detailed you know just say
boot
cd /usr/src/linux
make menuconfig
select this and that
save file
make dep && make bzImage modules modules_install
cp image and config and system.map
edit lilo.conf
ran lilo
took a leak
rebooted into the new kernel
all hell broke loose


or whatever that is about how i would do things commands are alittle loose but you get the drift. i just dont see what went wrong. so if i could get some insight as to about what you did i can try it kinda and see what happens to me.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
c related question. blackzone Programming 1 07-24-2004 08:55 AM
bash related question MattSmith Linux - General 1 01-20-2004 05:41 AM
DNS related question tusher Linux - Newbie 1 12-07-2003 01:03 PM
DNS related question tusher Linux - Networking 1 12-01-2003 09:15 AM
WEBCAM related question aznowicz Linux - Software 2 08-18-2002 12:36 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 07:00 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration