gnokii-users
[Top][All Lists]
Advanced

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

gnokii segfaults on amd64 with stir4200


From: Gerard Pille
Subject: gnokii segfaults on amd64 with stir4200
Date: Mon, 11 Oct 2004 12:15:03 +0200

Hallo,

I've got my Nokia 6210 connected by infrared via a stir4200 usb
dongle.

It gets discovered when I "irattach irda0 -s", and irdadump shows it.

The connection is killed when I use irdaping ("invalid speed -1" says
stir4200), minicom or gnokii.  Only seyon allows me to communicate,
send sms, the works.  After a killed connection, I have to rmmod
uhci_hcd and modprobe it again, sometimes I have to "reboot" the
Nokia.

Since I rebuilt stir4200.ko with debugging, gnokii is a bit more
talkative (before I only got the PHONET message).  I find
.gnokii-errors and a segfault in /var/log/messages.

Message sent: 0x1b / 0x0006
00 01 00 03 01 32                               |      2          
Message received: 0x1b / 0x0037
01 1c 00 04 00 56 20 30 33 2e 30 31 0a 32 31 2d |      V 03.01 21-
30 38 2d 30 30 0a 4e 50 45 2d 33 0a 28 63 29 20 | 08-00 NPE-3 (c) 
4e 4d 50 2e 00 24 00 17 09 48 00 23 9e d4 00 10 | NMP. $   H #    
29 28 00 01 00 08 38                            | )(    8         
Message sent: 0x40 / 0x0004
00 01 64 01                                     |   d             
Message received: 0x40 / 0x000c
01 01 64 03 01 4c 0d 01 01 01 1b 58             |   d  L     X    
Message sent: 0x1b / 0x0004
00 01 00 01                                     |                 
Message sent: 0x1b / 0x0006
00 01 00 03 01 32                               |      2          
Message received: 0x1b / 0x0014
01 1c 00 02 34 34 39 32 31 34 32 30 39 34 37 32 |     449214209472
38 39 39 00                                     | 899             
Message received: 0x1b / 0x0037
01 1c 00 04 00 56 20 30 33 2e 30 31 0a 32 31 2d |      V 03.01 21-
30 38 2d 30 30 0a 4e 50 45 2d 33 0a 28 63 29 20 | 08-00 NPE-3 (c) 
4e 4d 50 2e 00 24 00 17 09 48 00 23 9e d4 00 10 | NMP. $   H #    
29 28 00 01 00 08 38                            | )(    8         
Message sent: 0x95ca64f2 / 0x0000
00 00 01 00 03 01 Message sent: 0x95ca64f2 / 0x0000
00 00 01 00 03 01 Message sent: 0x95ca64f2 / 0x0000
00 00 01 00 03 01 Message sent: 0x95ca64f2 / 0x0000
00 00 01 00 03 01 Message sent: 0x95b954f2 / 0x0000
00 00 01 00 03 01 Message sent: 0x95b954f2 / 0x0000
00 00 01 00 03 01 Message sent: 0x95b954f2 / 0x0000
00 00 01 00 03 01 Message sent: 0x95b954f2 / 0x0000
00 00 01 00 03 01 Message sent: 0x95b954f2 / 0x0000
00 00 01 00 03 01 Message sent: 0x95b954f2 / 0x0000
00 00 01 00 03 01 Message sent: 0x95b954f2 / 0x0000
00 00 01 00 03 01 Message sent: 0x95b954f2 / 0x0000
00 00 01 00 03 01 


gnokii[2979]: segfault at 000000000001fb01 rip 0000002a95b4d770 rsp
0000007fbfff6238 error 4

This is on Debian alioth x86_64 pure.

Any ideas would be very well come ;-)

Thanks,

Gerard

strace shows that gnokii tries to mmap a couple of Gb, which fails
with
ENOMEM:

execve("/usr/local/bin/gnokii", ["gnokii", "--identify"], [/* 19 vars
*/]) = 0
uname({sys="Linux", node="ghp-targa.local.ghp", ...}) = 0
brk(0)                                  = 0x522000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x2a9556a000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.preload", O_RDONLY)    = -1 ENOENT (No such file or
directory)
open("/usr/local/lib/tls/x86_64/libXpm.so.4", O_RDONLY) = -1 ENOENT
(No such file or directory)
stat("/usr/local/lib/tls/x86_64", 0x7fbffff250) = -1 ENOENT (No such
file or directory)
open("/usr/local/lib/tls/libXpm.so.4", O_RDONLY) = -1 ENOENT (No such
file or directory)
stat("/usr/local/lib/tls", 0x7fbffff250) = -1 ENOENT (No such file or
directory)
open("/usr/local/lib/x86_64/libXpm.so.4", O_RDONLY) = -1 ENOENT (No
such file or directory)
stat("/usr/local/lib/x86_64", 0x7fbffff250) = -1 ENOENT (No such file
or directory)
open("/usr/local/lib/libXpm.so.4", O_RDONLY) = -1 ENOENT (No such file
or directory)
stat("/usr/local/lib", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=47326, ...}) = 0
mmap(NULL, 47326, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2a9556b000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/usr/X11R6/lib64/libXpm.so.4", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>address@hidden"...,
640) = 640
fstat(3, {st_mode=S_IFREG|0644, st_size=65720, ...}) = 0
mmap(NULL, 1112656, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x2a9566c000
mprotect(0x2a9567a000, 1055312, PROT_NONE) = 0
mmap(0x2a9576c000, 65536, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0) = 0x2a9576c000
close(3)                                = 0
open("/usr/local/lib/libX11.so.6", O_RDONLY) = -1 ENOENT (No such file
or directory)
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/usr/X11R6/lib64/libX11.so.6", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>address@hidden"...,
640) = 640
fstat(3, {st_mode=S_IFREG|0644, st_size=893680, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x2a9577c000
mmap(NULL, 1943488, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x2a9577d000
mprotect(0x2a95845000, 1124288, PROT_NONE) = 0
mmap(0x2a9587d000, 892928, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x2a9587d000
mmap(0x2a95957000, 1984, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2a95957000
close(3)                                = 0
open("/usr/local/lib/libgnokii.so.2", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0X\1\0\0"...,
640) = 640
fstat(3, {st_mode=S_IFREG|0755, st_size=1979197, ...}) = 0
mmap(NULL, 1563008, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x2a95958000
mprotect(0x2a959c5000, 1116544, PROT_NONE) = 0
mmap(0x2a95a58000, 503808, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x2a95a58000
mmap(0x2a95ad3000, 10624, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2a95ad3000
close(3)                                = 0
open("/usr/local/lib/libc.so.6", O_RDONLY) = -1 ENOENT (No such file
or directory)
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`\324\1\0"...,
640) = 640
fstat(3, {st_mode=S_IFREG|0644, st_size=1294400, ...}) = 0
mmap(NULL, 2353800, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x2a95ad6000
mprotect(0x2a95bf8000, 1165960, PROT_NONE) = 0
mmap(0x2a95cd6000, 241664, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 3, 0x100000) = 0x2a95cd6000
mmap(0x2a95d11000, 14984, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2a95d11000
close(3)                                = 0
open("/usr/local/lib/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file
or directory)
open("/usr/local/lib/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file
or directory)
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/lib/libdl.so.2", O_RDONLY)       = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\36\0\0"...,
640) = 640
fstat(3, {st_mode=S_IFREG|0644, st_size=12072, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x2a95d15000
mmap(NULL, 1058728, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x2a95d16000
mprotect(0x2a95d19000, 1046440, PROT_NONE) = 0
mmap(0x2a95e16000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0) = 0x2a95e16000
close(3)                                = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x2a95e19000
arch_prctl(0x1002, 0x2a95e19090)        = 0
munmap(0x2a9556b000, 47326)             = 0
brk(0)                                  = 0x522000
brk(0x543000)                           = 0x543000
brk(0)                                  = 0x543000
open("/root/.gnokii-errors", O_WRONLY|O_APPEND|O_CREAT, 0666) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=572, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x2a9556b000
fstat(3, {st_mode=S_IFREG|0644, st_size=572, ...}) = 0
lseek(3, 572, SEEK_SET)                 = 572
open("/usr/lib/locale/locale-archive", O_RDONLY) = -1 ENOENT (No such
file or directory)
open("/usr/share/locale/locale.alias", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=2539, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x2a9556c000
read(4, "# Locale name alias data base.\n#"..., 4096) = 2539
read(4, "", 4096)                       = 0
close(4)                                = 0
munmap(0x2a9556c000, 4096)              = 0
open("/usr/lib/locale/nl_BE/LC_IDENTIFICATION", O_RDONLY) = -1 ENOENT
(No such file or directory)
open("/usr/lib/locale/nl/LC_IDENTIFICATION", O_RDONLY) = -1 ENOENT (No
such file or directory)
write(2, "GNOKII Version 0.6.3\n", 21)  = 21
open("/root/.gnokiirc", O_RDONLY)       = -1 ENOENT (No such file or
directory)
write(2, "Couldn\'t open /root/.gnokiirc co"..., 43) = 43
open("/etc/gnokiirc", O_RDONLY)         = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=4672, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x2a9556c000
read(4, "# This is a sample ~/.gnokiirc f"..., 4096) = 4096
read(4, "or $VAR substitutions in your ch"..., 4096) = 576
read(4, "", 4096)                       = 0
write(2, "LOG: debug mask is 0x1\n", 23) = 23
open("/var/lock/LCK..ircomm0", O_RDONLY) = 5
read(5, "     15771 gnokii\n", 127)     = 18
close(5)                                = 0
kill(15771, SIG_0)                      = -1 ESRCH (No such process)
write(2, "Lockfile /var/lock/LCK..ircomm0 "..., 58) = 58
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigaction(SIGCHLD, NULL, {SIG_DFL}, 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
nanosleep({1, 0}, {1, 0})               = 0
unlink("/var/lock/LCK..ircomm0")        = 0
open("/var/lock/LCK..ircomm0", O_WRONLY|O_CREAT|O_EXCL, 0644) = 5
getpid()                                = 15773
write(5, "     15773 gnokii\n", 18)     = 18
close(5)                                = 0
write(2, "phone instance config:\n", 23) = 23
write(2, "model: 6210\n", 12)           = 12
write(2, "port_device: /dev/ircomm0\n", 26) = 26
write(2, "connection_type: 4\n", 19)    = 19
write(2, "init_length: 0\n", 15)        = 15
write(2, "serial_baudrate: 115200\n", 24) = 24
write(2, "serial_write_usleep: 1000\n", 26) = 26
write(2, "hardware_handshake: 0\n", 22) = 22
write(2, "require_dcd: 0\n", 15)        = 15
write(2, "smsc_timeout: 100\n", 18)     = 18
write(2, "connect_script: \n", 17)      = 17
write(2, "disconnect_script: \n", 20)   = 20
write(2, "rfcomm_cn: 1\n", 13)          = 13
write(2, "Connecting\n", 11)            = 11
write(2, "Serial device: opening device /d"..., 43) = 43
socket(PF_IRDA, SOCK_STREAM, 0)         = 5
getsockopt(5, SOL_IRDA, 1, "\1\0\0\0:!\220\231\0\0N\315Nokia
6210\0\0\0\0\0\0\0\0\0"..., [22901452817039400]) = 0
write(2, "Nokia 6210\tcd4e0000\n", 20)  = 20
close(5)                                = 0
socket(PF_IRDA, SOCK_STREAM, 0)         = 5
connect(5, {sa_family=AF_IRDA, sa_data="\377\225\0\0N\315Nokia:Ph"},
36) = 0
write(2, "Getting model...\n", 17)      = 17
write(2, "Message sent: ", 14)          = 14
write(3, "Message sent: ", 14)          = 14
write(2, "0x1b / 0x0006", 13)           = 13
write(3, "0x00 / 0x95e19090", 17)       = 17
write(2, "\n", 1)                       = 1
write(3, "\n", 1)                       = 1
write(2, "00 ", 3)                      = 3
write(3, "5220f0 ", 7)                  = 7
write(2, "01 ", 3)                      = 3
write(3, "00 ", 3)                      = 3
write(2, "00 ", 3)                      = 3
write(3, "01 ", 3)                      = 3
write(2, "03 ", 3)                      = 3
write(3, "00 ", 3)                      = 3
write(2, "01 ", 3)                      = 3
write(3, "03 ", 3)                      = 3
write(2, "32 ", 3)                      = 3
write(3, "01 ", 3)                      = 3
write(2, "                              | "..., 48) = 48
mmap(NULL, 1780379648, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = -1 ENOMEM (Cannot allocate memory)
brk(0)                                  = 0x543000
brk(0x6a72c000)                         = 0x543000
mmap(NULL, 1780514816, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = -1 ENOMEM (Cannot allocate memory)
mmap(NULL, 2097152, PROT_NONE,
MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x2b6a209000
munmap(0x2b6a209000, 1011712)           = 0
munmap(0x2b6a400000, 36864)             = 0
mprotect(0x2b6a300000, 135168, PROT_READ|PROT_WRITE) = 0
mmap(NULL, 1780379648, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = -1 ENOMEM (Cannot allocate memory)
write(2, "\n", 1)                       = 1
write(3, "\n", 1)                       = 1
sendto(5, "\24\0\f\33\0\6\0\1\0\3\0012", 12, 0, NULL, 0) = 12
select(6, [5], NULL, NULL, {0, 100000}) = 1 (in [5], left {0, 15000})
recvfrom(5, "\24\f\0\33\0007\1\34\0\4\0V 05.56\n25-01-02\nNPE-"...,
255, 0, NULL, NULL) = 61
write(2, "Message received: ", 18)      = 18
write(3, "Message received: ", 18)      = 18
write(2, "0x1b / 0x0037", 13)           = 13
write(3, "0x00 / 0x95e19090", 17)       = 17
write(2, "\n", 1)                       = 1
write(3, "\n", 1)                       = 1
write(2, "01 ", 3)                      = 3
write(3, "5220f0 ", 7)                  = 7
write(2, "1c ", 3)                      = 3
write(3, "01 ", 3)                      = 3
write(2, "00 ", 3)                      = 3
write(3, "1c ", 3)                      = 3
write(2, "04 ", 3)                      = 3
write(3, "00 ", 3)                      = 3
write(2, "00 ", 3)                      = 3
write(3, "04 ", 3)                      = 3
write(2, "56 ", 3)                      = 3
write(3, "00 ", 3)                      = 3
write(2, "20 ", 3)                      = 3
write(3, "05 ", 3)                      = 3
write(2, "30 ", 3)                      = 3
write(3, "06 ", 3)                      = 3
write(2, "35 ", 3)                      = 3
write(3, "07 ", 3)                      = 3
write(2, "2e ", 3)                      = 3
write(3, "08 ", 3)                      = 3
write(2, "35 ", 3)                      = 3
write(3, "09 ", 3)                      = 3
write(2, "36 ", 3)                      = 3
write(3, "0a ", 3)                      = 3
write(2, "0a ", 3)                      = 3
write(3, "0b ", 3)                      = 3
write(2, "32 ", 3)                      = 3
write(3, "0a ", 3)                      = 3
write(2, "35 ", 3)                      = 3
write(3, "0d ", 3)                      = 3
write(2, "2d ", 3)                      = 3
write(3, "0e ", 3)                      = 3
write(2, "|      V 05.56 25-", 18)      = 18
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++


The firmware has been upgraded.

Gerard H. Pille




reply via email to

[Prev in Thread] Current Thread [Next in Thread]