Bug 118307

Summary: ATi kernel module refuses to build
Product: [openSUSE] SUSE LINUX 10.0 Reporter: Aristide Aragon <novell>
Component: KernelAssignee: Andreas Gruenbacher <agruen>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: sndirsch
Version: RC 1   
Target Milestone: ---   
Hardware: x86-64   
OS: All   
Whiteboard:
Found By: Beta-Customer Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: Standard outut of rpm
Standard error of rpm (compiler output)

Description Aristide Aragon 2005-09-21 21:37:59 UTC
I'm using SuSE 10 on an HP laptop series zv6000

I tried to install the ATi driver using the ATi installer (as suggested here
ftp://ftp.suse.com/pub/suse/i386/supplementary/X/ATI/ati-installer-HOWTO.html).
I created the RPM wit no probles, but when I try to install it it says it can
not create the kenrel module.
I attach the stdout and stderr of the rpm command
I used:
rpm -Uhv fglrx64_6_8_0_SUSE100-8.16.20-1.x86_64.rpm
Comment 1 Aristide Aragon 2005-09-21 21:38:51 UTC
Created attachment 50577 [details]
Standard outut of rpm
Comment 2 Aristide Aragon 2005-09-21 21:39:53 UTC
Created attachment 50578 [details]
Standard error of rpm (compiler output)
Comment 3 Aristide Aragon 2005-09-21 21:59:07 UTC
I do have the kernel sources installed. I have
kerne-default, -docs, -source, -update-tool
Comment 4 Hubert Mantel 2005-09-22 14:56:17 UTC
The reason of the failure is printed in the very first line of stderr:
asm/ioctl32.h cannot be found. Your kernel sources are not correctly configured.
Make sure the link from include/asm to include/asm-x86_64 is there and it should
work. Btw, it's not a bug in our kernel if some third party software cannot be
compiled. Nevertheless it would be cool if we could create the matching link by
 default. Andreas, do you think this is possible?
Comment 5 Aristide Aragon 2005-09-22 19:28:48 UTC
The file is not there either, there's an ioctl32.h in
/usr/include/linux/ioctl32.h and one in 
/usr/src/linux-2.6.13-8/include/linux/ioctl32.h ; but that's it, a symlink
/usr/include/linux/asm/ioctl didnt solve it

I knot it's technically not a big, but if the module builds elsewhere and not in
SuSE then it's still an error.

I read the driver was going to be offered through YOU, what happened to that idea?
Comment 6 Stefan Dirsch 2005-09-29 14:39:46 UTC
For now apply the following patch:

--- firegl_public.c.orig        2005-08-29 08:05:42.373475921 +0200
+++ firegl_public.c     2005-08-29 08:06:04.176652314 +0200
@@ -121,7 +121,7 @@
 #endif
 
 #ifdef __x86_64__
-#include "asm/ioctl32.h"
+#include "linux/ioctl32.h"
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,2)
 #include "linux/syscalls.h"
 #endif
--- firegl_public.c.orig        2005-08-29 22:27:56.000000000 +0000
+++ firegl_public.c     2005-08-29 22:29:13.000000000 +0000
@@ -1063,9 +1063,9 @@
 
 int ATI_API_CALL firegl_get_user_ptr(u32 *src, void **dst)
 {
-  void *temp=NULL;
+  unsigned long temp;
   int err = get_user(temp, src); 
-  *dst = temp;
+  *dst = (void *) temp;
   return err;
 }
 

This will be fixed for next ATI driver release.

> I read the driver was going to be offered through YOU, what happened to that 
> idea?

We're still working on this. :-)