LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   fglrx 8.14.13 + 2.6.12.2 (https://www.linuxquestions.org/questions/slackware-14/fglrx-8-14-13-2-6-12-2-a-340747/)

xushi 07-06-2005 06:52 PM

fglrx 8.14.13 + 2.6.12.2
 
I think its easier to start a new post regarding this matter...

sh make.sh fails. And the patches given to us in the previous posts don't work. The first one is successful, but the second one has 6 out of 8 errors in its patching..

Anyway, without the patches, these are the errors i'd get
Code:

root@xushitop:/lib/modules/fglrx/build_mod# sh make.sh
ATI module generator V 2.0
==========================
initializing...
cleaning...
patching 'highmem.h'...
assuming new VMA API since we do have kernel 2.6.x...
doing Makefile based build for kernel 2.6.x and higher
make -C /lib/modules/2.6.12.2/build SUBDIRS=/lib/modules/fglrx/build_mod/2.6.x modules
make[1]: Entering directory `/usr/src/linux-2.6.12.2'
  CC [M]  /lib/modules/fglrx/build_mod/2.6.x/agp3.o
  CC [M]  /lib/modules/fglrx/build_mod/2.6.x/nvidia-agp.o
  CC [M]  /lib/modules/fglrx/build_mod/2.6.x/agpgart_be.o
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c: In function `agp_find_supported_device':
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7136: error: structure has no member named `slot_name'
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7156: error: structure has no member named `slot_name'
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7161: error: structure has no member named `slot_name'
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7187: error: structure has no member named `slot_name'
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7207: error: structure has no member named `slot_name'
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7227: error: structure has no member named `slot_name'
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7232: error: structure has no member named `slot_name'
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c: In function `__fgl_agp_init':
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7613: warning: `pm_register' is deprecated (declared at include/linux/pm.h:106)
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c: In function `__fgl_agp_cleanup':
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7623: warning: `pm_unregister_all' is deprecated (declared at include/linux/pm.h:116)
make[2]: *** [/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.o] Error 1
make[1]: *** [_module_/lib/modules/fglrx/build_mod/2.6.x] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.12.2'
make: *** [kmod_build] Error 2
build failed with return value 2
root@xushitop:/lib/modules/fglrx/build_mod#

Any comments appreciated =)
Thanks.

MMYoung 07-08-2005 04:09 AM

Have you tried the new ATI installer, ati-driver-installer-8.14.13.run? It even has a "gui" if you run it from a root terminal in X. I always had the same problem you describe, but the new installer works like the nvidia installer. I tried it and it worked like a charm.

Later,
MMYoung

xushi 07-08-2005 04:22 AM

Hmm, i tried it, it said it installed successfully, and i rebooted. But afterwards, its as if nothing had happened or was installed. I tried to modprobe fglrx manually but it said fglrx was not found. I tried to search for it, couldn't find it.

Hmm, when you tried it, was it on 2.6.12.2 ?

xushi 07-08-2005 04:33 AM

Alright, i just ran the installer again, and again, it said everything was successful, but i checked its log this time, and i get the same error

From /usr/share/fglrx/fglrx-install.log

Code:

[Message] Kernel Module : Trying to install a precompiled kernel module.
[Message] Kernel Module : Precompiled kernel module version mismatched.
[Message] Kernel Module : Found kernel module build environment, generating kernel module now.
ATI module generator V 2.0
==========================
initializing...
cleaning...
patching 'highmem.h'...
assuming new VMA API since we do have kernel 2.6.x...
doing Makefile based build for kernel 2.6.x and higher
make -C /lib/modules/2.6.12.2/build SUBDIRS=/lib/modules/fglrx/build_mod/2.6.x modules
make[1]: Entering directory `/usr/src/linux-2.6.12.2'
  CC [M]  /lib/modules/fglrx/build_mod/2.6.x/agp3.o
  CC [M]  /lib/modules/fglrx/build_mod/2.6.x/nvidia-agp.o
  CC [M]  /lib/modules/fglrx/build_mod/2.6.x/agpgart_be.o
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c: In function `agp_find_supported_device':
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7136: error: structure has no member named `slot_name'
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7156: error: structure has no member named `slot_name'
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7161: error: structure has no member named `slot_name'
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7187: error: structure has no member named `slot_name'
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7207: error: structure has no member named `slot_name'
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7227: error: structure has no member named `slot_name'
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7232: error: structure has no member named `slot_name'
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c: In function `__fgl_agp_init':
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7613: warning: `pm_register' is deprecated (declared at include/linux/pm.h:106)
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c: In function `__fgl_agp_cleanup':
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7623: warning: `pm_unregister_all' is deprecated (declared at include/linux/pm.h:116)
make[2]: *** [/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.o] Error 1
make[1]: *** [_module_/lib/modules/fglrx/build_mod/2.6.x] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.12.2'
make: *** [kmod_build] Error 2
build failed with return value 2
[Error] Kernel Module : Failed to compile kernel module - please consult readme.


keefaz 07-08-2005 06:29 AM

You're not alone :p
http://www.linuxquestions.org/questi...hreadid=335524

xushi 07-08-2005 07:52 AM

Heh.. sounds too confusing..

MMYoung 07-08-2005 10:00 AM

Quote:

Originally posted by xushi
Hmm, when you tried it, was it on 2.6.12.2 ?
Nope, 2.6.11.5. I was just fixin' to compile the 2.6.12.2 kernel, might just wait a while now.

Later,
MMYoung

xushi 07-12-2005 03:55 AM

Still no luck. I'm thinking if its worth downgrading to 2.6.11.x or not. Although i've seen/read about alot of improvements in 2.6.12 that i wouldn't mind keeping. =/

xushi 07-12-2005 04:05 AM

Hmm, i got this patch from the net (forgot the direct link). It allows me to compile with warnings, but will not allow me to insert the module.

edit: here's the patch
http://xushi.co.uk/xushi/sv/ati/

sh make.sh (second time. To get rid of all the other non important warnings).
Code:

root@xushitop:/lib/modules/fglrx/build_mod# sh make.sh
ATI module generator V 2.0
==========================
initializing...
cleaning...
patching 'highmem.h'...
assuming new VMA API since we do have kernel 2.6.x...
doing Makefile based build for kernel 2.6.x and higher
make -C /lib/modules/2.6.12.2/build SUBDIRS=/lib/modules/fglrx/build_mod/2.6.x modules
make[1]: Entering directory `/usr/src/linux-2.6.12.2'
  Building modules, stage 2.
  MODPOST
*** Warning: "inter_module_get" [/lib/modules/fglrx/build_mod/2.6.x/fglrx.ko] undefined!
make[1]: Leaving directory `/usr/src/linux-2.6.12.2'
build succeeded with return value 0
duplicating results into driver repository...
done.
==============================
You must change your working directory to /lib/modules/fglrx
and then call ./make_install.sh in order to install the built module.
==============================
root@xushitop:/lib/modules/fglrx/build_mod#

modprobing

Code:

root@xushitop:/lib/modules/fglrx# modprobe fglrx
FATAL: Error inserting fglrx (/lib/modules/2.6.12.2/kernel/drivers/char/drm/fglrx.ko): Unknown symbol in module, or unknown parameter (see dmesg)

Same error with sh make_install.sh

dmesg
Code:

fglrx: module license 'Proprietary. (C) 2002 - ATI Technologies, Starnberg, GERMANY' taints kernel.
fglrx: Unknown symbol inter_module_get
fglrx: Unknown symbol inter_module_get


EDIT
=========
========

Reading around, i'm told by another thread, to fix that error, i must
Quote:

The other problem is caused by firegl_public.c. It uses the function inter_module_get, you'll have to replace it with the function inter_module_get_request. But inter_module_get_request accepts 2 parameters, inter_module_get appears 3 times in the file. The first time it has to be changed to inter_module_get_request(x,y), the second inter_module_get_request("drm","drm") and the last to inter_module_get_request("drm_agp","drm_agp"). And that's is it
http://www.linuxquestions.org/questi...74#post1710874


After editing them, and sh make.sh again, more errors.. ugh
Code:

root@xushitop:/lib/modules/fglrx/build_mod# sh make.sh
ATI module generator V 2.0
==========================
initializing...
cleaning...
patching 'highmem.h'...
assuming new VMA API since we do have kernel 2.6.x...
doing Makefile based build for kernel 2.6.x and higher
make -C /lib/modules/2.6.12.2/build SUBDIRS=/lib/modules/fglrx/build_mod/2.6.x modules
make[1]: Entering directory `/usr/src/linux-2.6.12.2'
  CC [M]  /lib/modules/fglrx/build_mod/2.6.x/firegl_public.o
In file included from /lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:125:
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.h:56:48: warning: backslash and newline separated by space
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.h:57:6: warning: backslash and newline separated by space
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.h:58:41: warning: backslash and newline separated by space
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:350:90: missing terminating " character
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function `firegl_stub_putminor':
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:508: warning: `inter_module_put' is deprecated (declared at include/linux/module.h:568)
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:510: warning: `inter_module_unregister' is deprecated (declared at include/linux/module.h:565)
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function `firegl_stub_register':
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:530: warning: `inter_module_register' is deprecated (declared at include/linux/module.h:564)
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:549: error: syntax error before ';' token
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:557: error: `drm_stub' undeclared (first use in this function)
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:557: error: (Each undeclared identifier is reported only once
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:557: error: for each function it appears in.)
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:561: warning: `inter_module_put' is deprecated (declared at include/linux/module.h:568)
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: At top level:
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:570: error: syntax error before "else"
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function `__ke_verify_area':
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1438: warning: `verify_area' is deprecated (declared at include/asm/uaccess.h:105)
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: At top level:
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2647: warning: initialization from incompatible pointer type
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2865: warning: initialization from incompatible pointer type
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2868: warning: initialization from incompatible pointer type
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2869: warning: initialization from incompatible pointer type
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2870: warning: initialization from incompatible pointer type
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2872: warning: initialization from incompatible pointer type
make[2]: *** [/lib/modules/fglrx/build_mod/2.6.x/firegl_public.o] Error 1
make[1]: *** [_module_/lib/modules/fglrx/build_mod/2.6.x] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.12.2'
make: *** [kmod_build] Error 2
build failed with return value 2
root@xushitop:/lib/modules/fglrx/build_mod#

The line in the code is in bold
Code:

firegl_drm_stub_info_t *drm_stub = NULL;
           
        // the registering of the module's device has failed
        // because there was already some other drm module loaded.
        __KE_DEBUG("register_chrdev() failed with -EBUSY\n");
       
        // we now do try to attach to the existing module stub
        // for getting some more detailed info about the servicing code behind.
                drm_stub = DRM_MODULE_GET;
        if (!drm_stub)
        {
            __KE_ERROR("Unable to the open some already present DRM kernel module!\n");
            return -1;
        }

And if anyone tells me to disable DRM, please make up your mind. Every month i get people telling to enable it with supporting arguments, and then to disable it with supporting arguments :p


EDIT 2:
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:350:90: missing terminating " character

oops.. that's my fault :D
it compiles and installs now.. will keep you all updated as for the performance :D

xushi 07-12-2005 04:37 AM

Alright, they compile and all, but when i startx, i get the error,

(EE) Failed to load module "fglrx" (module requirement mismatch, 0)

And sorry for the many posts.. just trying to be as detailed as i can be.

Edit:

FS! how could i do something as silly as this,
# ls /download/ati
fglrx_4_1_0-8.14.13-1.i386.tgz

I'll sort it out once and for all, and make a better thread with all instructions needed.

maginotjr 07-12-2005 12:58 PM

whats the advantage of this fglrx if I dont play games???

Will anything be faster (that I could realy notice? not just a feel ms)

MMYoung 07-12-2005 01:04 PM

Probably won't see "much" of an increase in anything, other than programs that take advantage of 3D rendering.

Later,
MMYoung

xushi 07-12-2005 01:14 PM

Quote:

Originally posted by maginotjr
whats the advantage of this fglrx if I dont play games???

Will anything be faster (that I could realy notice? not just a feel ms)

Nothing but trouble, especially keeping it working with every kernel upgrade. If you're not going to play games, then just stick to the 'radeon' drivers instead.

MMYoung 07-12-2005 01:37 PM

Quote:

Originally posted by xushi
Nothing but trouble, especially keeping it working with every kernel upgrade. If you're not going to play games, then just stick to the 'radeon' drivers instead.
Yeah, it'll be nice if and when ATI ever gets to the same level of Linux support that you see with Nvidia. I've already got them working with the 2.6.11.5 kernel I'm running so I'll leave them as is, but when I do make the move to 2.6.12.x, I'll just use the XOrg ati drivers, to heck with all this crap.

Next time I'll buy an Nvidia card and a TV Capture card and not worry with the ATI All-In-WonderIfTheyWillEverWorkInLinux ;) .

Later,
MMYoung

xushi 07-12-2005 01:45 PM

Firstly, download the latest fglrx driver from ati.com. Make sure you download the fglrx driver, and not the large installer. And make sure you choose the correct one depending on which X you are using :) (xorg most probably).

Then, delete your old one, if unsure how,
rm -fr /lib/modules/fglrx

convert the new ones to tgz and install them
rpm2tgz fglrx_6_8_0-8.14.13-1.i386.rpm
rm fglrx_6_8_0-8.14.13-1.i386.rpm

installpkg fglrx_6_8_0-8.14.13-1.i386.tgz


Next, download the following patches
http://www.tux3d.org/fglrx/Patches/K...2/good-tested/
If you're on x64 (Slamd64), then you will need the last patch. Otherwise, all you slackware users download the first three only.

Then, change directory into /lib/module/fglrx/build_mod and install the patches
cd /lib/modules/fglrx/build_mod
cp /download/ati/*.patch /lib/modules/fglrx/build_mod

patch -p1 < fglrx-2.6-agpgart.patch
patch -p1 < fglrx-2.6.12-new-agpgart.patch
patch -p1 < fglrx-2.6.12-inter_module_get.patch


Here's an output
Code:

root@xushitop:/lib/modules/fglrx/build_mod# patch -p1 < fglrx-2.6-agpgart.patch
missing header for unified diff at line 3 of patch
can't find file to patch at input line 3
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|--- agpgart_be.c      2005-03-28 17:20:42.000000000 +0300
|+++ agpgart_be.c.new  2005-03-28 17:21:54.000000000 +0300
--------------------------
File to patch: agpgart_be.c
patching file agpgart_be.c
Hunk #1 succeeded at 7067 (offset -14 lines).
Hunk #3 succeeded at 7153 (offset -14 lines).
Hunk #5 succeeded at 7204 (offset -14 lines).
root@xushitop:/lib/modules/fglrx/build_mod#

Code:

root@xushitop:/lib/modules/fglrx/build_mod# patch -p1 < fglrx-2.6.12-inter_module_get.patch
missing header for unified diff at line 3 of patch
can't find file to patch at input line 3
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|--- firegl_public.c    2005-03-28 18:51:58.000000000 +0300
|+++ firegl_public.c.new        2005-03-28 19:05:11.000000000 +0300
--------------------------
File to patch: firegl_public.c
patching file firegl_public.c
Hunk #1 succeeded at 340 (offset -1 lines).
root@xushitop:/lib/modules/fglrx/build_mod#

Code:

root@xushitop:/lib/modules/fglrx/build_mod# patch -p1 < fglrx-2.6.12-new-agpgart.patch
patching file firegl_public.c
Hunk #1 succeeded at 997 (offset -5 lines).
Hunk #3 succeeded at 2940 (offset -5 lines).
root@xushitop:/lib/modules/fglrx/build_mod#

Now all patching is complete. We can start the installation.

sh make.sh
Code:

root@xushitop:/lib/modules/fglrx/build_mod# sh make.sh
ATI module generator V 2.0
==========================
initializing...
cleaning...
patching 'highmem.h'...
assuming new VMA API since we do have kernel 2.6.x...
doing Makefile based build for kernel 2.6.x and higher
make -C /lib/modules/2.6.12.2/build SUBDIRS=/lib/modules/fglrx/build_mod/2.6.x modules
make[1]: Entering directory `/usr/src/linux-2.6.12.2'
  CC [M]  /lib/modules/fglrx/build_mod/2.6.x/agp3.o
  CC [M]  /lib/modules/fglrx/build_mod/2.6.x/nvidia-agp.o
  CC [M]  /lib/modules/fglrx/build_mod/2.6.x/agpgart_be.o
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c: In function `__fgl_agp_init':
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7613: warning: `pm_register' is deprecated (declared at include/linux/pm.h:106)
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c: In function `__fgl_agp_cleanup':
/lib/modules/fglrx/build_mod/2.6.x/agpgart_be.c:7623: warning: `pm_unregister_all' is deprecated (declared at include/linux/pm.h:116)
  CC [M]  /lib/modules/fglrx/build_mod/2.6.x/i7505-agp.o
  CC [M]  /lib/modules/fglrx/build_mod/2.6.x/firegl_public.o
In file included from /lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:125:
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.h:56:48: warning: backslash and newline separated by space
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.h:57:6: warning: backslash and newline separated by space
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.h:58:41: warning: backslash and newline separated by space
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function `firegl_stub_putminor':
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:508: warning: `inter_module_put' is deprecated (declared at include/linux/module.h:568)
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:510: warning: `inter_module_unregister' is deprecated (declared at include/linux/module.h:565)
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function `firegl_stub_register':
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:530: warning: `inter_module_register' is deprecated (declared at include/linux/module.h:564)
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:561: warning: `inter_module_put' is deprecated (declared at include/linux/module.h:568)
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function `__ke_verify_area':
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1446: warning: `verify_area' is deprecated (declared at include/asm/uaccess.h:105)
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: At top level:
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2655: warning: initialization from incompatible pointer type
  LD [M]  /lib/modules/fglrx/build_mod/2.6.x/fglrx.o
  Building modules, stage 2.
  MODPOST
  CC      /lib/modules/fglrx/build_mod/2.6.x/fglrx.mod.o
  LD [M]  /lib/modules/fglrx/build_mod/2.6.x/fglrx.ko
make[1]: Leaving directory `/usr/src/linux-2.6.12.2'
build succeeded with return value 0
duplicating results into driver repository...
done.
==============================
You must change your working directory to /lib/modules/fglrx
and then call ./make_install.sh in order to install the built module.
==============================
root@xushitop:/lib/modules/fglrx/build_mod#

Apparently its normal to get such warnings... Anyway, moving on,

cd ../
sh make_install.sh

Code:

root@xushitop:/lib/modules/fglrx/build_mod# cd ..   
root@xushitop:/lib/modules/fglrx# sh make_install.sh
- creating symlink
- recreating module dependency list
- trying a sample load of the kernel module
done.
root@xushitop:/lib/modules/fglrx#

Finally, i was recommended by another thread to edit /etc/X11/xorg.conf and modify:
Option "KernelModuleParm" "agplock=0" # AGP locked user pages: disabled

But i'm not sure about it. I'll do some further testing and keep you updated.

Thats it. Reboot, and run fglrxconfig for a new xorg.conf, or load up your fglrx settings in xorg.conf manually... And enjoy.


All times are GMT -5. The time now is 01:36 AM.