Dienstag, 24. April 2007
reese: df_gears verursacht kernel-Fehler
df_gears macht einen Kernel-Fehler:
Apr 24 13:00:19 reese kernel: matroxfb: cannot set xres to 720, rounded up to 736
Apr 24 13:00:19 reese kernel: matroxfb: cannot set xres to 400, rounded up to 416
Apr 24 13:00:19 reese kernel: c0165763
Apr 24 13:00:19 reese kernel: PREEMPT
Apr 24 13:00:19 reese kernel: Modules linked in: mga matroxfb_base matroxfb_DAC1064 matroxfb_accel cfbcopyarea cfbimgblt cfbfillrect matroxfb_Ti3026 matroxfb_g450 g450_pll matroxfb_misc snd_mixer_oss snd rfcomm l2cap bluetooth capability commoncap ipv6 ext2 dm_snapshot dm_mirror dm_mod comedi_rt_timer kcomedilib ni_pcimio comedi_fc mite 8255 comedi ni_tio rtai_fifos rtai_lxrt rtai_hal i810_audio ac97_codec soundcore ac97 intel_agp agpgart psmouse mousedev evdev e100 mii rtc ext3 jbd mbcache ide_generic piix ide_disk ide_core unix
Apr 24 13:00:19 reese kernel: CPU: 0
Apr 24 13:00:19 reese kernel: EIP: 0060:[<c0165763>] Tainted: GF
Apr 24 13:00:19 reese kernel: EFLAGS: 00010202 (2.6.8rtai)
Apr 24 13:00:19 reese kernel: EIP is at chrdev_open+0x8a/0x2f7
Apr 24 13:00:19 reese kernel: eax: d850e000 ebx: ef167a00 ecx: c01656d9 edx: 89f2ac67
Apr 24 13:00:19 reese kernel: esi: 00000001 edi: 00000000 ebp: e8844594 esp: d850ff10
Apr 24 13:00:19 reese kernel: ds: 007b es: 007b ss: 0068
Apr 24 13:00:19 reese kernel: Process df_gears (pid: 18182, threadinfo=d850e000 task=cfd8d7b0)
Apr 24 13:00:19 reese kernel: Stack: 00000000 000000d0 c016c64c d850ff60 ca0b2480 e8844594 eff4ff00 00000001
Apr 24 13:00:19 reese kernel: c015a8da e8844594 ca0b2480 00000002 bffff750 ed069000 d850e000 c015a794
Apr 24 13:00:19 reese kernel: e88411f4 eff4ff00 00000002 d850ff60 e88411f4 eff4ff00 bffff670 00000202
Apr 24 13:00:19 reese kernel: Call Trace:
Apr 24 13:00:19 reese kernel: [<c016c64c>] open_namei+0xa5/0x655
Apr 24 13:00:19 reese kernel: [<c015a8da>] dentry_open+0x144/0x28f
Apr 24 13:00:19 reese kernel: [<c015a794>] filp_open+0x62/0x64
Apr 24 13:00:19 reese kernel: [<c0144405>] kmem_cache_alloc+0x35/0x57
Apr 24 13:00:19 reese kernel: [<c015aa69>] get_unused_fd+0x44/0x110
Apr 24 13:00:19 reese kernel: [<c015ac76>] sys_open+0x5b/0x8b
Apr 24 13:00:19 reese kernel: [<c010623e>] sysenter_past_esp+0x5f/0x84
Apr 24 13:00:19 reese kernel: Code: 83 3a 02 0f 84 2a 01 00 00 ff 82 00 01 00 00 a1 14 ff 2c c0
Apr 24 13:00:19 reese kernel: <6>note: df_gears[18182] exited with preempt_count 1


Ich versuche mal, dfb neu zu compilieren.

DirectFB/autogen ist durchgelaufen.
make steigt aus:

...
gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../include -I../../lib -I../../include -I../../lib -DDATADIR=\"/usr/local/share/directfb-0.9.25\" -DMODULEDIR=\"/usr/local/lib/directfb-0.9.25\" -D_REENTRANT -Wall -O3 -ffast-math -pipe -D_GNU_SOURCE -Werror-implicit-function-declaration -MT system.lo -MD -MP -MF .deps/system.Tpo -c system.c -fPIC -DPIC -o .libs/system.o
system.c:47: error: expected declaration specifiers or '...' before 'gettid'
system.c:62: warning: type defaults to 'int' in declaration of '_syscall0'
system.c:62: error: expected ',' or ';' before 'pid_t'
make[3]: *** [system.lo] Error 1
make[3]: Leaving directory `/home/devel/directfb/DirectFB/lib/direct'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/devel/directfb/DirectFB/lib'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/devel/directfb/DirectFB'
make: *** [all] Error 2


Doch noch die aktuelle Version aus dem cvs geholt:
cvs -d :pserver:anonymous@git.directfb.org:/git/directfb/core/DirectFB.git co -d DirectFB master


Mit der geht es leider auch nicht:
gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../include -I../../lib -I../../include -I../../lib -DDATADIR=\"/usr/local/share/directfb-0.9.25\" -DMODULEDIR=\"/usr/local/lib/directfb-0.9.25\" -D_REENTRANT -Wall -O3 -ffast-math -pipe -D_GNU_SOURCE -Werror-implicit-function-declaration -MT system.lo -MD -MP -MF .deps/system.Tpo -c system.c -fPIC -DPIC -o .libs/system.o
system.c:47: error: expected declaration specifiers or '...' before 'gettid'
system.c:62: warning: type defaults to 'int' in declaration of '_syscall0'
system.c:62: error: expected ',' or ';' before 'pid_t'
make[3]: *** [system.lo] Error 1
make[3]: Leaving directory `/home/devel/directfb/DirectFB/lib/direct'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/devel/directfb/DirectFB/lib'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/devel/directfb/DirectFB'
make: *** [all] Error 2

... comment

 
make durchgelaufen
So, den make-Fehler habe ich jetzt weg bekommen. Ich habe die system.c mit der aktuellen Version von http://git.directfb.org/?p=core/DirectFB.git;a=blob;f=lib/direct/system.c;h=8dd3f125d6e757073a0916c27577581c19b83bfb;hb=master ersetzt. Die schien besser mit dem neuen reese-System zu harmonieren.

... link  


... comment
 
GELÖST: df_gears macht Kernel-Fehler
Im STartscript stand ein rmmod -f.
Die dfb-module bzw. der Kernel haben das gewalttätige Entfernen offfenbar nicht vertragen.

... link  


... comment