Linux Help
guides forums blogs
Home Desktops Distributions ISO Images Logos Newbies Reviews Software Support & Resources Linuxhelp Wiki

Welcome Guest ( Log In | Register )



Advanced DNS Management
New ZoneEdit. New Managment.

FREE DNS Is Back

Sign Up Now
2 Pages V   1 2 >  
Reply to this topicStart new topic
> Help Editing Kernal, Supporting changing MTRRs
Jay-Jay
post Jun 5 2003, 02:38 PM
Post #1


I Eat C Code for Breakfast
****

Group: Members
Posts: 162
Joined: 2-June 03
From: London (UK)
Member No.: 914



Hiya i've moved this topic from my Error loading GUI's to this one as the topic title is no longer relevant.

I'm getting this error.

"
(WW) System lacks support for changing MTRRs

This should not happen!
An unresolved function was called!

Fatal server error:

"

I'm assuming that there's a kernal to edit to get this to work, but i've never edited a kernal. I'm PC literate but just not linux literate.

Any help would be warmly welcome

Jay-Jay


--------------------
I have a new toothbrush that had rubber prongs to massage my gums while I brush. How odd! (Query of life)
Go to the top of the page
 
+Quote Post
andrewjenkins
post Jun 5 2003, 02:53 PM
Post #2


Grub-er
**

Group: Members
Posts: 30
Joined: 5-June 03
Member No.: 930



If you want to compile your very own kernel, you're gonna want to download a kernel source. There are about 3 or 4 kernel source branches, each maintained by different people, and different minor numbers as well. The official kernel source is kept at www.kernel.org. Alan Cox makes his own little variations, these are denoted with a "-ac".
For now, what you'll probably want to do is go to www.kernel.org, and dive into the public linux repository, then kernel, then the 2.4 series. 2.4 is the stable series, 2.5 is testing. Get the latest 2.4 (linux-2.4.20.tar.bz2 or linux-2.4.20.tar.gz). Untar this file into /usr/src. You'll get a folder, /usr/src/linux-2.4.20. cd into this directory, and run make menuconfig. Now you get a bunch of choices about your hardware - if there's something you don't understand, read the help. They're usually pretty short, and very helpful. For hardware drivers, you get to choose to compile them into the kernel (the "*") or use them as modules (the "M") or leave them out (" "). Modules can be added and removed, so they only take up memory when they're needed (sort of), also, they promote a little bit of flexibility, and on-the-fly parameter setting. I usually do some core things compiled in (MTRRs, APIC, USB-OHCI) but most hardware devices as modules (sound cards, ide-scsi, all my USB devices). When you're done configuring, you'll go to exit, and save your new configuration. Now do:

make dep && make bzImage && make modules && make modules_install

If you don't get any errors, you've successfully done the first step - you have a compiled kernel. Now you just have to boot it. What you're gonna do is something like

cp arch/i386/boot/bzImage /boot/mykernel-2.4.20
cp System.map /boot

You also might want to do
depmod -ae 2.4.20
to make sure your modules are set up before you boot

Now, you have to get your bootloader to boot your kernel. If it's lilo, you'll have to edit /etc/lilo.conf and add something like

image=/boot/mykernel-2.4.20
read-only

Follow the pattern of the other entries, if they specify a root, you should as well, if they don't, leave it out.

For GRUB, I don't know very much. My best advice would be a "man grub.conf" or looking at the GRUB HOWTO.

If your system uses initrd (you'll see initrd files in /boot) then you have to do a mkinitrd. I think all you should have to do is mkinitrd 2.4.20 /boot/myinitrd-2.4.20 and then specify it in LILO or GRUB, but I don't use initrd.

The kernel comes with these instructions too, under the "Documentation" directory, and in the README also. A self-compiled kernel will allow you to get rid of the kruft that packagers ship, and tune your system for what you want it to do.
Go to the top of the page
 
+Quote Post
Jay-Jay
post Jun 5 2003, 02:59 PM
Post #3


I Eat C Code for Breakfast
****

Group: Members
Posts: 162
Joined: 2-June 03
From: London (UK)
Member No.: 914



Thanks

Sounds very complix! I think i'll be up half the nite trying to do this!

I'll let you know how i get on.

Jay-Jay


--------------------
I have a new toothbrush that had rubber prongs to massage my gums while I brush. How odd! (Query of life)
Go to the top of the page
 
+Quote Post
Hemant
post Jun 5 2003, 03:04 PM
Post #4


RMS is my Hero
******

Group: Support Specialist
Posts: 782
Joined: 6-October 02
From: Trichy,INDIA
Member No.: 29



a few fundamental question,
which distro u r trying..which version of kernel and xfree86 u have..i don't think that compiling the kernel will solve ur problem unless u r using a really old kernel.

though u have talked lot of hardware but just tell me how u tried to fix this x problem.u tried xconfigurator or xfreeconfig or u opted for manual editing of xfreeconfig file.


--------------------
Hemant Kumar
user posted image
hemant@linuxhelp.net
Go to the top of the page
 
+Quote Post
Jay-Jay
post Jun 5 2003, 03:24 PM
Post #5


I Eat C Code for Breakfast
****

Group: Members
Posts: 162
Joined: 2-June 03
From: London (UK)
Member No.: 914



Originally i opted for using

dpkg-reconfigure xserver-xfree86

put once i was aware of what was wrong I manually changed it, and it worked in the sense of getting rid of the

"no screen error"

But now it finds it and has the above error.

Would compiling a kernal sort this problem out?

Jay-Jay


--------------------
I have a new toothbrush that had rubber prongs to massage my gums while I brush. How odd! (Query of life)
Go to the top of the page
 
+Quote Post
andrewjenkins
post Jun 5 2003, 03:38 PM
Post #6


Grub-er
**

Group: Members
Posts: 30
Joined: 5-June 03
Member No.: 930



Probably not. The kernel would allow you to enable MTRRs if they aren't already, which they probably are. Kernel compiling is a good way to explore anyways, but obviously, this X problem is more urgent to you. Sorry I misled you down the kernel path. I'd stick to editing XF86Config until that works before changing the kernel. Try this:

grep "EE" /var/log/XFree86.0.log

This will print out all the error lines from the X logfile. Post them here and maybe somebody can help out.
Go to the top of the page
 
+Quote Post
Jay-Jay
post Jun 5 2003, 03:47 PM
Post #7


I Eat C Code for Breakfast
****

Group: Members
Posts: 162
Joined: 2-June 03
From: London (UK)
Member No.: 914



grep "EE" /var/log/Xfree86.0.log

shows

"
(EE) CIRRUS(0): Cannot use accelerations in less than 8bpp
(EE) CIRRUS(0): I2C Initialization failed"
"

grep "WW" /var/log/XFree86.0.log

shows one for fonts that's i'm not worried about yet and

"
(WW) System lacks support for changing MTRRs
"

Thanks

Jay-Jay


--------------------
I have a new toothbrush that had rubber prongs to massage my gums while I brush. How odd! (Query of life)
Go to the top of the page
 
+Quote Post
andrewjenkins
post Jun 5 2003, 04:12 PM
Post #8


Grub-er
**

Group: Members
Posts: 30
Joined: 5-June 03
Member No.: 930



From kernel docs:
I2C (pronounce: I squared C) is a protocol developed by Philips. It is a
slow two-wire protocol (10-100 kHz), but it suffices for many types of
devices.

I don't think this is important to you (unless you have an I2C keyboard?), so we won't worry about that.

The accelerations one is probably closer - it mentions less than 8bpp. If you're using less than 8bpp, you are either initializing monochrome or 16 color (not 16 bit, buto nly 16 colors). Well, not you. X is deciding that you want less than 8bpp, probably because it can't get your video card to work, so its defaulting to some sort of VGA failsafe setting that's just gonna suck.

have you looked at the XFree86 Cirrus documentation?
X 3.3.6 supports more cards than the 4.0 series, perhaps yours is one of these unsupported cards? If so, you could try going back to X3.3.6 (you can still keep GNOME 2 or KDE or whatever the same). X4 has better support for DRI, AGP, GLX and graphics tablets and the like, but many many people still use X3.

Also, there's a page at berkeley of working Cirrus Logic XF86Configs here. But, these are all for X3.2 or X3.3. You can't just copy and paste because the config format changed between X3 and X4, but you can translate portions pretty easily, assuming that your card wasn't orphaned from X3 to X4.

If X won't support your cirrus card, you can try using it as a framebuffer device. This is how I got my KYRO II card to work. I could get full resolution (1024x768 on my monitor), do Mozilla, XMMS, all of that, but I couldn't ever play quake3. This might be suitable for you, but its a pain, it involves not only kernel compiling but also device modification and some more X tweaking.
Go to the top of the page
 
+Quote Post
Jay-Jay
post Jun 5 2003, 05:02 PM
Post #9


I Eat C Code for Breakfast
****

Group: Members
Posts: 162
Joined: 2-June 03
From: London (UK)
Member No.: 914



I fixed it . . . got yet more errors but i'm nearly there.

All I needed to do was #out the video ram in the XF86Config files.

When I use startx it loads up. Some boxes appears in the top left while they are presumably loading up.

I'm still get errors but the major symptom is that startx hangs properly and i can't ctrl+alt+backspace out.

X loads, but i can't tell if it's hanging or not, i can't switch consoles (alt+1-6, or alt+leftarr/rightarr). But i can ctrl+alt+backspace out.

Any ideas, this is getting simpler and simpler i know but it's really really irratating.

Jay-Jay


--------------------
I have a new toothbrush that had rubber prongs to massage my gums while I brush. How odd! (Query of life)
Go to the top of the page
 
+Quote Post
andrewjenkins
post Jun 5 2003, 05:23 PM
Post #10


Grub-er
**

Group: Members
Posts: 30
Joined: 5-June 03
Member No.: 930



Hmmm. Maybe gnome isn't starting correctly or something. Since you can't switch back to the console to get the errors, you can't see what the problem is. And, since X appears to be loading at least somewhat properly, the error probably isn't in the XFree86.0.log logfile.

If you want to record all the messages that appear on your console, try

startx &> ~/my_x_log

Then, all the output of X (and GNOME/KDE and all the subprograms) will be recorded in ~/my_x_log. If it hangs, wait about 30 seconds, then reboot, you should be able to open my_x_log and see the last thing it was doing before it hung. It might not be X that's hanging - X might be trying to start GNOME and GNOME is misconfigured, so it's hanging there. This happens to me when I don't have /etc/hosts set up properly, but your distro should have done that for you.

It'll probably help to increase X server verbosity. Try opening up /usr/X11R6/bin/startx, you should hopefully see the line:
defaultserverargs=""
Change this to:
defaultserverargs="-v"

This will make X tell you more of what its doing before it hangs. If you don't get interesting results, add another -v right after it, I think you can have up to 5 levels of verbosity, but at some point, you're just seeing crap that won't help at all.
Go to the top of the page
 
+Quote Post
Jay-Jay
post Jun 5 2003, 05:32 PM
Post #11


I Eat C Code for Breakfast
****

Group: Members
Posts: 162
Joined: 2-June 03
From: London (UK)
Member No.: 914



I think one of the problems with X is that I don't think my keyboard is set up properly in the Config . . . thing is, it's stupid I know but I don't know what to put in the config, its a laptop keyboard but other than that I don't know

Jay-Jay


--------------------
I have a new toothbrush that had rubber prongs to massage my gums while I brush. How odd! (Query of life)
Go to the top of the page
 
+Quote Post
andrewjenkins
post Jun 5 2003, 06:27 PM
Post #12


Grub-er
**

Group: Members
Posts: 30
Joined: 5-June 03
Member No.: 930



Unless it's foreign, it shouldn't be too strange. Here's some of my XF86Config (for X4), a Dell Latitude CPxJ laptop:

Section "ServerLayout"
Identifier "Anaconda Configured"
Screen 0 "Screen0" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Mouse1" "SendCoreEvents"
InputDevice "Keyboard0" "CoreKeyboard"
EndSection

...

Section "InputDevice"
Identifier "Keyboard0"
Driver "keyboard"
...
# Option "XkbOptions" "ctrl:swapcaps"
Option "XkbRules" "xfree86"
Option "XkbModel" "pc105"
Option "XkbLayout" "us"
#Option "XkbVariant" ""
#Option "XkbOptions" ""
EndSection

...

Is it possible your mouse isn't set up right? This plagued me for a while - built-in laptop mice have bizarre protocols. This configuration allows me to use the touchpad (as Mouse1) and a hot-pluggable USB mouse (as Mouse0):
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5"
#Option "Emulate3Buttons" "yes"
EndSection


Section "InputDevice"
Identifier "Mouse1"
Driver "mouse"
Option "Device" "/dev/psaux"
Option "Protocol" "NetMousePS/2"
Option "Emulate3Buttons" "no"
# Option "ZAxisMapping" "4 5"
EndSection

Good luck. It seems you're so close.
Go to the top of the page
 
+Quote Post
Jay-Jay
post Jun 5 2003, 06:41 PM
Post #13


I Eat C Code for Breakfast
****

Group: Members
Posts: 162
Joined: 2-June 03
From: London (UK)
Member No.: 914



I'm assuming that it would pick up the fact i'm using a laptop keyboard, which I am. However when I change the setting to "uk" which is where i am, things don't seem to work well. I'm already aware that i got some funny settings as the characters displayed on the console don't match up to those on my keyboard, but i'm assuming thats something to do with the kernal on boot, and I don't know what to change their either.

When i load X up with uk keyboard cfg and three finger it, i get a non fatal error

"
Can't find the file "uk" for symbols
"

The mouse works fine, no problems, moves around the screen nicely anyway. (So I assume it's working okay)

Jay-Jay


--------------------
I have a new toothbrush that had rubber prongs to massage my gums while I brush. How odd! (Query of life)
Go to the top of the page
 
+Quote Post
andrewjenkins
post Jun 5 2003, 06:53 PM
Post #14


Grub-er
**

Group: Members
Posts: 30
Joined: 5-June 03
Member No.: 930



I have very little experience with internationalization (mostly trying to de-internationalize SuSE once). How to setup international keyboard in X Window with Xmodmap and XKB available at TLDP might help with internationalization. If you remove the uk variantness, does X start? Obviously, your keyboard won't work right this way, but then you'd know for sure that i18n is the problem.
Go to the top of the page
 
+Quote Post
Jay-Jay
post Jun 5 2003, 07:04 PM
Post #15


I Eat C Code for Breakfast
****

Group: Members
Posts: 162
Joined: 2-June 03
From: London (UK)
Member No.: 914



I'm guessing that my keyboard layout in X is the same as in the console, there's no reason for it not to be, therefore I can deal with it as it's mostly the same, but if I can't change console i'm still stuck, and I can change console in console, so it's not that.

then i grep (ww) the log file i'm still getting the warning about lacking support for the changing MTRRs, could this still be the problem? I've gotten rid of all the other (ww).

When i grep (ee) i'm still getting an I2C init. failed? Could it be due to that?

Just to say that you're being an absolute star today, helpin' me out like this!

Jay-Jay


--------------------
I have a new toothbrush that had rubber prongs to massage my gums while I brush. How odd! (Query of life)
Go to the top of the page
 
+Quote Post
andrewjenkins
post Jun 5 2003, 07:14 PM
Post #16


Grub-er
**

Group: Members
Posts: 30
Joined: 5-June 03
Member No.: 930



I don't know. Debian says:
The i2c bus is used by many modern motherboards to provide hardware health monitoring data, like temperature and fan speed...
So I don't know why X cares about I2C. In your XF86Config file, in the section titled "Modules" is there a line concerning I2C or MTRRs? If there are, what happens when you add a "#" before them?

MTRRs shouldn't be necessary for X though - maybe accelerated X, but not like this. I can help you add them if that is the problem, I'm just not sure that it is. What happens when you do

cat /proc/mtrr

I get:
[root@x1-6-00-10-7a-69-e3-23 root]# cat /proc/mtrr
reg00: base=0x00000000 ( 0MB), size= 256MB: write-back, count=1
reg01: base=0x10000000 ( 256MB), size= 64MB: write-back, count=1
reg02: base=0xfd000000 (4048MB), size= 8MB: write-combining, count=2

Basically, if you get any output aside from an error, you have MTRRs enabled. It's possible your machine doesn't have MTRRs, even if they're supported in the kernel, your motherboard might just not have them. In this case, X should leave them alone, maybe it refuses?
Go to the top of the page
 
+Quote Post
Jay-Jay
post Jun 5 2003, 07:22 PM
Post #17


I Eat C Code for Breakfast
****

Group: Members
Posts: 162
Joined: 2-June 03
From: London (UK)
Member No.: 914



When I typed in cat /proc/mtrr i got an error, no such file or directory, so i went into the proc directory just to check, and there's nout there that has any connection to mtrr

Jay-Jay


--------------------
I have a new toothbrush that had rubber prongs to massage my gums while I brush. How odd! (Query of life)
Go to the top of the page
 
+Quote Post
andrewjenkins
post Jun 5 2003, 07:26 PM
Post #18


Grub-er
**

Group: Members
Posts: 30
Joined: 5-June 03
Member No.: 930



ok well you either don't have MTRRs or you don't have MTRR support enabled in the kernel.

Try:
dmesg | grep "mtrr"

This will tell you if the kernel has MTRR support. you could try to add in support if it isn't already there by

modprobe mtrr

as root.

If yo udon't get anything from dmesg, and modprobe doesn't work, then it's likely that you don't have MTRR support inthe kernel, so you'll have to recompile the kernel if you want to add MTRR support.
Go to the top of the page
 
+Quote Post
Jay-Jay
post Jun 5 2003, 08:08 PM
Post #19


I Eat C Code for Breakfast
****

Group: Members
Posts: 162
Joined: 2-June 03
From: London (UK)
Member No.: 914



both modprobe and dmesg | grep "mttr" produced nothing.

How hard is it to compile a kernal? I'm happy to give it a go, you only learn by doing or watchin' and as i can't see what your doing i'll have to be doin'!

Thanks

Jay-Jay


--------------------
I have a new toothbrush that had rubber prongs to massage my gums while I brush. How odd! (Query of life)
Go to the top of the page
 
+Quote Post
andrewjenkins
post Jun 5 2003, 08:27 PM
Post #20


Grub-er
**

Group: Members
Posts: 30
Joined: 5-June 03
Member No.: 930



It's not impossibly difficult, probably slightly easier than installing. And, it's something you probably will have to do sooner or later, it'd teach you a whole lot about the process.

The Linux Kernel HOWTO will give you great instructions on how, my previous post has a summary of what your steps are going to be. In the "Processor Type and Features" section of the config, you can enable MTRRs. I'm kind of surprised that your distro doesn't support MTRRs to begin with, and I'm still not sure this will fix the problem. It is something to try though.
Go to the top of the page
 
+Quote Post

2 Pages V   1 2 >
Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 23rd October 2017 - 07:32 PM