Package: fglrx-legacy-modules-dkms
Version: 8.97.100.7-4
Severity: important
uname -a
Linux space 3.14-2-686-pae #1 SMP Debian 3.14.13-2 (2014-07-24) i686
GNU/Linux
Dear Maintainer,
The module unfortunately doesn't compile on Linux-3.14.
This problem may be extensible to some lower Linux versions
I've attached a patch that fixes the build errors and now I can finally
run fglrx-legacy.
Patch based on commits created by Krzysztof Kolasa
from https://github.com/kolasa/fglrx-13.25
Regards, Eli
diff -uprN fglrx-8.97.100.7/firegl_public.h fglrx-8.97.100.7-b/firegl_public.h
--- fglrx-8.97.100.7/firegl_public.h 2013-01-15 22:33:27.000000000 +0100
+++ fglrx-8.97.100.7-b/firegl_public.h 2014-08-13 09:27:55.000000000 +0200
@@ -231,8 +231,11 @@ typedef struct {
*/
typedef int KCL_TYPE_Pid; /** Process identifier */
typedef int KCL_TYPE_Tgid; /** Thread Group identifier */
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 12, 0)
typedef int KCL_TYPE_Uid; /** User identifier */
-
+#else
+typedef kuid_t KCL_TYPE_Uid; /** User identifier */
+#endif
/** Atomic variables
* This type is defined using struct to make sure compiled code will
* always refer to the memory containing the atomic variable (prevent
diff -uprN fglrx-8.97.100.7/kcl_acpi.c fglrx-8.97.100.7-b/kcl_acpi.c
--- fglrx-8.97.100.7/kcl_acpi.c 2013-07-23 17:14:36.000000000 +0200
+++ fglrx-8.97.100.7-b/kcl_acpi.c 2014-08-13 09:27:55.000000000 +0200
@@ -776,7 +776,11 @@ unsigned int ATI_API_CALL KCL_ACPI_GetHa
{
#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,12)
#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)
- pInfo->video_handle = pInfo->pcidev->dev.acpi_node.handle;
+ #if LINUX_VERSION_CODE < KERNEL_VERSION(3,13,0)
+ pInfo->video_handle = pInfo->pcidev->dev.acpi_node.handle;
+ #else
+ pInfo->video_handle = pInfo->pcidev->dev.acpi_node.companion;
+ #endif
#elif LINUX_VERSION_CODE > KERNEL_VERSION(2,6,19)
pInfo->video_handle = pInfo->pcidev->dev.archdata.acpi_handle;
#else
---------------------------------------
Selecting previously unselected package fglrx-legacy-modules-dkms.
(Leyendo la base de datos ... 182500 ficheros o directorios instalados actualmente.)
Desempaquetando fglrx-legacy-modules-dkms (de .../fglrx-legacy-modules-dkms_8.97.100.7-4_i386.deb) ...
Configurando fglrx-legacy-modules-dkms (8.97.100.7-4) ...
Loading new fglrx-8.97.100.7 DKMS files...
First Installation: checking all kernels...
Building only for 3.14-2-686-pae
Building initial module for 3.14-2-686-pae
Error! Bad return status for module build on kernel: 3.14-2-686-pae (i686)
Consult /var/lib/dkms/fglrx/8.97.100.7/build/make.log for more information.
Presione Enter para continuar.
---------------------------------------
dkms build -m fglrx/8.97.100.7
Kernel preparation unnecessary for this kernel. Skipping...
Building module:
cleaning build area....
make KERNELRELEASE=3.14-2-686-pae -C /lib/modules/3.14-2-686-pae/build M=/var/lib/dkms/fglrx/8.97.100.7/build......
cleaning build area....
DKMS: build completed.
---------------------------------------
DKMS make.log for fglrx-8.97.100.7 for kernel 3.14-2-686-pae (i686)
mié ago 13 08:41:03 CEST 2014
make: se ingresa al directorio `/usr/src/linux-headers-3.14-2-686-pae'
LD /var/lib/dkms/fglrx/8.97.100.7/build/built-in.o
CC [M] /var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.o
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c: In function âfiregl_debug_proc_read_wrapâ:
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c:532:5: warning: passing argument 2 of âfiregl_debug_proc_readâ makes pointer from integer without a cast [enabled by default]
return firegl_debug_proc_read(m->buf, m->from, m->index, m->size, m->size - m->count, data);
^
In file included from /var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c:194:0:
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.h:373:25: note: expected âchar **â but argument is of type âsize_tâ
extern int ATI_API_CALL firegl_debug_proc_read(char* buf, char** start, kcl_off_t offset, int len, int* eof, void* data);
^
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c:532:5: warning: passing argument 5 of âfiregl_debug_proc_readâ makes pointer from integer without a cast [enabled by default]
return firegl_debug_proc_read(m->buf, m->from, m->index, m->size, m->size - m->count, data);
^
In file included from /var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c:194:0:
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.h:373:25: note: expected âint *â but argument is of type âsize_tâ
extern int ATI_API_CALL firegl_debug_proc_read(char* buf, char** start, kcl_off_t offset, int len, int* eof, void* data);
^
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c: At top level:
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c:617:3: warning: initialization from incompatible pointer type [enabled by default]
.write = firegl_debug_proc_write_wrap,
^
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c:617:3: warning: (near initialization for âfiregl_debug_fops.writeâ) [enabled by default]
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c: In function âKCL_GetEffectiveUidâ:
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c:1633:5: error: incompatible types when returning type âkuid_tâ but âKCL_TYPE_Uidâ was expected
return current_euid();
^
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c:1637:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
make[3]: *** [/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.o] Error 1
make[2]: *** [_module_/var/lib/dkms/fglrx/8.97.100.7/build] Error 2
make[1]: *** [sub-make] Error 2
make: *** [all] Error 2
make: se sale del directorio `/usr/src/linux-headers-3.14-2-686-pae'
DKMS make.log for fglrx-8.97.100.7 for kernel 3.14-2-686-pae (i686)
mié ago 13 09:42:56 CEST 2014
make: se ingresa al directorio `/usr/src/linux-headers-3.14-2-686-pae'
LD /var/lib/dkms/fglrx/8.97.100.7/build/built-in.o
CC [M] /var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.o
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c: In function âfiregl_debug_proc_read_wrapâ:
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c:532:5: warning: passing argument 2 of âfiregl_debug_proc_readâ makes pointer from integer without a cast [enabled by default]
return firegl_debug_proc_read(m->buf, m->from, m->index, m->size, m->size - m->count, data);
^
In file included from /var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c:194:0:
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.h:376:25: note: expected âchar **â but argument is of type âsize_tâ
extern int ATI_API_CALL firegl_debug_proc_read(char* buf, char** start, kcl_off_t offset, int len, int* eof, void* data);
^
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c:532:5: warning: passing argument 5 of âfiregl_debug_proc_readâ makes pointer from integer without a cast [enabled by default]
return firegl_debug_proc_read(m->buf, m->from, m->index, m->size, m->size - m->count, data);
^
In file included from /var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c:194:0:
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.h:376:25: note: expected âint *â but argument is of type âsize_tâ
extern int ATI_API_CALL firegl_debug_proc_read(char* buf, char** start, kcl_off_t offset, int len, int* eof, void* data);
^
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c: At top level:
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c:617:3: warning: initialization from incompatible pointer type [enabled by default]
.write = firegl_debug_proc_write_wrap,
^
/var/lib/dkms/fglrx/8.97.100.7/build/firegl_public.c:617:3: warning: (near initialization for âfiregl_debug_fops.writeâ) [enabled by default]
CC [M] /var/lib/dkms/fglrx/8.97.100.7/build/kcl_acpi.o
/var/lib/dkms/fglrx/8.97.100.7/build/kcl_acpi.c: In function âKCL_ACPI_GetHandlesâ:
/var/lib/dkms/fglrx/8.97.100.7/build/kcl_acpi.c:779:59: error: âstruct acpi_dev_nodeâ has no member named âhandleâ
pInfo->video_handle = pInfo->pcidev->dev.acpi_node.handle;
^
make[3]: *** [/var/lib/dkms/fglrx/8.97.100.7/build/kcl_acpi.o] Error 1
make[2]: *** [_module_/var/lib/dkms/fglrx/8.97.100.7/build] Error 2
make[1]: *** [sub-make] Error 2
make: *** [all] Error 2
make: se sale del directorio `/usr/src/linux-headers-3.14-2-686-pae'