Re: pilot-link issues

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 9 Nov 2005, Yuandan Zhang wrote:



You can open a terminal as that user and run
my experience is that you press hotsync, with 1-2 seconds issue this
command
pilot-xfer -L -p /tmp/pilot
good luck

1) run pilot-xfer before pressing hotsync button in my case generates output:

# pilot-xfer -L -p /dev/ttyUSB0
   WARNING: You are using deprecated options. Use these instead:

       --rom instead of -F, --Flash
       --with-os instead of -O, --OsFlash
       --illegal instead of -I, --Illegal
       --list --rom instead of -L, --List, --Listall

*** buffer overflow detected ***: pilot-xfer terminated
======= Backtrace: =========
/lib/libc.so.6(__chk_fail+0x41)[0x98dc15]
/lib/libc.so.6(__ptsname_r_chk+0x0)[0x98e254]
/usr/lib/libpisock.so.9[0x7a92f4f]
/usr/lib/libpisock.so.9(pi_bind+0x54)[0x7a9643c]
pilot-xfer[0x804ee6b]
pilot-xfer[0x804dc97]
/lib/libc.so.6(__libc_start_main+0xdf)[0x8c450f]
pilot-xfer[0x804a151]
======= Memory map: ========
0060a000-0060b000 r-xp 0060a000 00:00 0          [vdso]
0061b000-00622000 r-xp 00000000 fd:01 1394957    /usr/lib/libpopt.so.0.0.0
00622000-00623000 rwxp 00007000 fd:01 1394957    /usr/lib/libpopt.so.0.0.0
007a8000-007c1000 r-xp 00000000 fd:01 671853     /lib/ld-2.3.90.so
007c1000-007c2000 r-xp 00018000 fd:01 671853     /lib/ld-2.3.90.so
007c2000-007c3000 rwxp 00019000 fd:01 671853     /lib/ld-2.3.90.so
008af000-009d4000 r-xp 00000000 fd:01 673299     /lib/libc-2.3.90.so
009d4000-009d6000 r-xp 00125000 fd:01 673299     /lib/libc-2.3.90.so
009d6000-009d8000 rwxp 00127000 fd:01 673299     /lib/libc-2.3.90.so
009d8000-009da000 rwxp 009d8000 00:00 0
00b7e000-00b87000 r-xp 00000000 fd:01 673313     /lib/libgcc_s-4.0.2-20051007.so.1
00b87000-00b88000 rwxp 00009000 fd:01 673313     /lib/libgcc_s-4.0.2-20051007.so.1
07a70000-07aa2000 r-xp 00000000 fd:01 1393267    /usr/lib/libpisock.so.9.0.0
07aa2000-07aa6000 rwxp 00031000 fd:01 1393267    /usr/lib/libpisock.so.9.0.0
08048000-08052000 r-xp 00000000 fd:01 1345495    /usr/bin/pilot-xfer
08052000-08054000 rw-p 00009000 fd:01 1345495    /usr/bin/pilot-xfer
09c77000-09c98000 rw-p 09c77000 00:00 0          [heap]
b7fbd000-b7fbf000 rw-p b7fbd000 00:00 0
bfbc9000-bfbde000 rw-p bfbc9000 00:00 0          [stack]

gdb back trace on above shows:

(gdb) bt
#0  0x00916402 in __kernel_vsyscall ()
#1  0x001397e8 in raise () from /lib/libc.so.6
#2  0x0013af58 in abort () from /lib/libc.so.6
#3  0x0016ea3a in __libc_message () from /lib/libc.so.6
#4  0x001efc15 in __chk_fail () from /lib/libc.so.6
#5  0x001f0254 in __realpath_chk () from /lib/libc.so.6
#6  0x07a92f4f in pi_serial_bind (ps=0x884b760, addr=0xbf8087ea, addrlen=258) at /usr/include/bits/stdlib.h:35
#7  0x07a9643c in pi_bind (pi_sd=6, port=0x884b720 "/dev/ttyUSB0") at socket.c:1063
#8  0x0804ee6b in plu_connect () at userland.c:57
#9  0x0804dc97 in main (argc=4, argv=0xbf8091e4) at pilot-xfer.c:2511
#10 0x0012650f in __libc_start_main () from /lib/libc.so.6
#11 0x0804a151 in _start ()

So probably something aroud pilot-xfer.c:2511 is broken.

I was repor this on Fedora bugzilla (it was closed without fixing this as
not repeateable).
Anyone observes simillar effect ?

2) strace output shows that pilot-xfer tries connect with pilot using only 9600b/s:

open("/dev/ttyUSB0", O_RDWR|O_NONBLOCK) = 6
ioctl(6, SNDCTL_TMR_TIMEBASE or TCGETS, {B9600 -opost -isig -icanon -echo ...}) = 0
ioctl(6, SNDCTL_TMR_TIMEBASE or TCGETS, {B9600 -opost -isig -icanon -echo ...}) = 0
ioctl(6, SNDCTL_TMR_START or TCSETS, {B9600 -opost -isig -icanon -echo ...}) = 0
ioctl(6, SNDCTL_TMR_TIMEBASE or TCGETS, {B9600 -opost -isig -icanon -echo ...}) = 0
fcntl64(6, F_GETFL)                     = 0x802 (flags O_RDWR|O_NONBLOCK)
fcntl64(6, F_SETFL, O_RDWR)             = 0
dup2(6, 4)                              = 4
close(6)                                = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 21), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f51000
write(1, "\n", 1 )                       = 1
write(1, " Listening for incoming connec"..., 56 Listening for incoming connection on /dev/ttyUSB0... ) = 56
ioctl(4, SNDCTL_TMR_TIMEBASE or TCGETS, {B9600 -opost -isig -icanon -echo ...}) = 0
ioctl(4, SNDCTL_TMR_STOP or TCSETSW, {B9600 -opost -isig -icanon -echo ...}) = 0
                                      ^^^^^
I supose this is root of all problems (IIRC older working version pilot-link
was using 115200b/s on my Visor connected via USB cradle).

After timeout in strace output is emmited only repeating:

select(5, [4], NULL, NULL, NULL)        = 1 (in [4])
read(4, "", 10)                         = 0

And seems pilot-xfer do not handles correctly situation when device disapears from USB bus.

kloczek
--
-----------------------------------------------------------
*Ludzie nie mają problemów, tylko sobie sami je stwarzają*
-----------------------------------------------------------
Tomasz Kłoczko, sys adm @zie.pg.gda.pl|*e-mail: kloczek@xxxxxxxxxxxxxxxxxx*

[Index of Archives]     [Current Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux