> When does this abort happen? When you stop it?
Output of "time lcd4linux -F -vvv" is
real 0m3.187s
user 0m0.110s
sys 0m0.075s
> Are you shure that serdisplib uses the same wiring than lcd4linux?
Yes, double (and triple) checked that.
> Are you familiar with gdb?
Nope, but I _will_ soon be familiar with it, if that's the only
way to go.
;)
BTW: The Layouts L8x2, L16x2 and L20x2 all work okay - actually
the output is still corrupted, but lcd4linux doesn't abort and
I see something which looks like heavily distorted moving bars.
It's interesting that these layouts also show the glibc free()
error message - after I kill lcd4linux with CTRL+C.
Furthermore I found out in which cases lcd4linux aborts; it only
happens when the content of the selected layout is bigger than
the lcd size (21x8 char).
Two logs attached: First one shows lcd4linux "crashing" with the
"Default" Layout, second one shows lcd4linux _not_ "crashing"
with modified "Default" Layout (DiskBar and Eth0Bar length
reduced to 11).
===log1===
host:/usr/src/lcd4linux# lcd4linux -F -vvv
Version 0.10.1-CVS starting
plugin_cfg.c: Variable minute = '60000' (60000)
plugin_cfg.c: Variable tack = '100' (100)
plugin_cfg.c: Variable tick = '500' (500)
lcd4linux.c: initializing driver T6963
T6963: using model 'generic'
drv_T6963.c: malloc buffer 2 (21*64)=1344
udelay: CPU supports Time Stamp Counter
udelay: CPU runs at 1208.796000 MHz
udelay: using TSC delay loop, 1209 ticks per microsecond
T6963: using ppdev /dev/parports/0
T6963: wiring: DISPLAY:CE - PARPORT:AUTOFD (Pin 14)
T6963: wiring: DISPLAY:CD - PARPORT:INIT (Pin 16)
T6963: wiring: DISPLAY:RD - PARPORT:SLCTIN (Pin 17)
T6963: wiring: DISPLAY:WR - PARPORT:STROBE (Pin 1)
initializing layout 'Default'
lcd4linux.c: starting main loop
*** glibc detected *** free(): invalid next size (fast): 0x0807e0e8 ***
Aborted
===end===
===log2===
host:/usr/src/lcd4linux# lcd4linux -F -vvv
Version 0.10.1-CVS starting
plugin_cfg.c: Variable minute = '60000' (60000)
plugin_cfg.c: Variable tack = '100' (100)
plugin_cfg.c: Variable tick = '500' (500)
lcd4linux.c: initializing driver T6963
T6963: using model 'generic'
drv_T6963.c: malloc buffer 2 (21*64)=1344
udelay: CPU supports Time Stamp Counter
udelay: CPU runs at 1208.796000 MHz
udelay: using TSC delay loop, 1209 ticks per microsecond
T6963: using ppdev /dev/parports/0
T6963: wiring: DISPLAY:CE - PARPORT:AUTOFD (Pin 14)
T6963: wiring: DISPLAY:CD - PARPORT:INIT (Pin 16)
T6963: wiring: DISPLAY:RD - PARPORT:SLCTIN (Pin 17)
T6963: wiring: DISPLAY:WR - PARPORT:STROBE (Pin 1)
initializing layout 'Default'
lcd4linux.c: starting main loop
lcd4linux.c: got signal 2
lcd4linux.c: leaving main loop
T6963: shutting down.
*** glibc detected *** free(): invalid next size (fast): 0x0807e0e8 ***
Aborted
===end===
Greetings,
Christoph Haderer
|