Opened 9 years ago

Closed 9 years ago

#4033 closed defect (wontfix)

Crash (webif + newcamd server + cccam client)

Reported by: reporter Owned by:
Priority: major Component: General
Severity: medium Keywords:
Cc: Sensitive: no

Description

Revision

10070

Issue Description

Crash

When the issue occurs

Sometimes, random

How the issue is reproducable

Using newcamd server, cccam client, parallel webif activity

Fri Dec  5 10:28:58 2014
OSCam cardserver v1.20-unstable_svn, build r10070 (i486-linux-gnu)
FATAL: Signal 11: Segmentation Fault. Logged StackTrace:

[Thread debugging using libthread_db enabled]
[New Thread 0xb76a56b0 (LWP 12350)]
[New Thread 0xb7476b90 (LWP 13700)]
[New Thread 0xb7623b90 (LWP 12491)]
[New Thread 0xb72f2b90 (LWP 12400)]
[New Thread 0xb746ab90 (LWP 12399)]
[New Thread 0xb7496b90 (LWP 12368)]
[New Thread 0xb74abb90 (LWP 12367)]
[New Thread 0xb74b7b90 (LWP 12366)]
[New Thread 0xb74c3b90 (LWP 12365)]
[New Thread 0xb74cfb90 (LWP 12364)]
[New Thread 0xb74dbb90 (LWP 12363)]
[New Thread 0xb74e7b90 (LWP 12362)]
[New Thread 0xb74f3b90 (LWP 12361)]
[New Thread 0xb74ffb90 (LWP 12360)]
[New Thread 0xb760bb90 (LWP 12359)]
[New Thread 0xb7617b90 (LWP 12358)]
[New Thread 0xb762fb90 (LWP 12356)]
[New Thread 0xb763bb90 (LWP 12355)]
[New Thread 0xb7647b90 (LWP 12354)]
[New Thread 0xb7653b90 (LWP 12353)]
[New Thread 0xb765fb90 (LWP 12352)]
[New Thread 0xb766bb90 (LWP 12351)]
0xb7833424 in __kernel_vsyscall ()
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb777bce7 in poll () from /lib/i686/cmov/libc.so.6
#2  0x08113f5b in main (argc=) at oscam.c:928

Thread 22 (Thread 0xb766bb90 (LWP 12351)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb7819352 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/i686/cmov/libpthread.so.0
#2  0x0811055c in sleepms_on_cond (mutex=0x8167af0, cond=0x8167ac0, msec=60000)
    at oscam-time.c:261
#3  0x081071cc in log_list_thread () at oscam-log.c:769
#4  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#5  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 21 (Thread 0xb765fb90 (LWP 12352)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb7819352 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/i686/cmov/libpthread.so.0
#2  0x0811055c in sleepms_on_cond (mutex=0x8167a70, cond=0x8167a40, msec=1000)
    at oscam-time.c:261
#3  0x0810631a in garbage_collector () at oscam-garbage.c:145
#4  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#5  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 20 (Thread 0xb7653b90 (LWP 12353)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb781c2d8 in accept () from /lib/i686/cmov/libpthread.so.0
#2  0x080ad381 in http_server (UNUSED_d=0x0) at module-webif.c:7871
#3  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#4  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 19 (Thread 0xb7647b90 (LWP 12354)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb7819352 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/i686/cmov/libpthread.so.0
#2  0x0811055c in sleepms_on_cond (mutex=0x816a910, cond=0x816a8e0, msec=1000)
    at oscam-time.c:261
#3  0x081133e4 in reader_check () at oscam.c:1057
#4  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#5  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 18 (Thread 0xb763bb90 (LWP 12355)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb7819352 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/i686/cmov/libpthread.so.0
#2  0x0811055c in sleepms_on_cond (mutex=0x81670ac, cond=0x81670e0, msec=97)
    at oscam-time.c:261
#3  0x08103158 in cw_process () at oscam-ecm.c:235
#4  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#5  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 17 (Thread 0xb762fb90 (LWP 12356)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb781c8b6 in nanosleep () from /lib/i686/cmov/libpthread.so.0
#2  0x0811066c in cs_sleepms (msec=3076715356) at oscam-time.c:135
#3  0x08068b08 in chkcache_process () at module-cacheex.c:131
#4  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#5  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 16 (Thread 0xb7617b90 (LWP 12358)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb777bce7 in poll () from /lib/i686/cmov/libc.so.6
#2  0x08110ed4 in work_thread (ptr=0xb75004a8) at oscam-work.c:174
#3  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#4  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 15 (Thread 0xb760bb90 (LWP 12359)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb777bce7 in poll () from /lib/i686/cmov/libc.so.6
#2  0x08110ed4 in work_thread (ptr=0xb75063c0) at oscam-work.c:174
#3  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#4  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 14 (Thread 0xb74ffb90 (LWP 12360)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb777bce7 in poll () from /lib/i686/cmov/libc.so.6
#2  0x08110ed4 in work_thread (ptr=0xb75025d0) at oscam-work.c:174
#3  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#4  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 13 (Thread 0xb74f3b90 (LWP 12361)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb777bce7 in poll () from /lib/i686/cmov/libc.so.6
#2  0x08110ed4 in work_thread (ptr=0xb7502600) at oscam-work.c:174
#3  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#4  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 12 (Thread 0xb74e7b90 (LWP 12362)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb777bce7 in poll () from /lib/i686/cmov/libc.so.6
#2  0x08110ed4 in work_thread (ptr=0xb750c090) at oscam-work.c:174
#3  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#4  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 11 (Thread 0xb74dbb90 (LWP 12363)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb777bce7 in poll () from /lib/i686/cmov/libc.so.6
#2  0x08110ed4 in work_thread (ptr=0xb750dff8) at oscam-work.c:174
#3  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#4  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 10 (Thread 0xb74cfb90 (LWP 12364)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb777bce7 in poll () from /lib/i686/cmov/libc.so.6
#2  0x08110ed4 in work_thread (ptr=0xb750df68) at oscam-work.c:174
#3  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#4  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 9 (Thread 0xb74c3b90 (LWP 12365)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb777bce7 in poll () from /lib/i686/cmov/libc.so.6
#2  0x08110ed4 in work_thread (ptr=0xb750df98) at oscam-work.c:174
#3  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#4  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 8 (Thread 0xb74b7b90 (LWP 12366)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb777bce7 in poll () from /lib/i686/cmov/libc.so.6
#2  0x08110ed4 in work_thread (ptr=0xb750dfc8) at oscam-work.c:174
#3  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#4  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 7 (Thread 0xb74abb90 (LWP 12367)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb777bce7 in poll () from /lib/i686/cmov/libc.so.6
#2  0x08110ed4 in work_thread (ptr=0xb7511d88) at oscam-work.c:174
#3  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#4  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 6 (Thread 0xb7496b90 (LWP 12368)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb777bce7 in poll () from /lib/i686/cmov/libc.so.6
#2  0x08110ed4 in work_thread (ptr=0xb7511db8) at oscam-work.c:174
#3  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#4  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 5 (Thread 0xb746ab90 (LWP 12399)):
#0  0x0806daf0 in get_matching_card (cl=0xb7506470, cur_er=0xb7359228,
    chk_only=1 '\001') at module-cccam.c:1273
#1  0x08073774 in cc_available (rdr=0x9a4a360, checktype=0, er=0xb7359228)
    at module-cccam.c:4350
#2  0x080ec4d5 in matching_reader (er=0xb7359228, rdr=0x9a4a360)
    at oscam-chk.c:797
#3  0x08102101 in get_cw (client=0x9ac2f10, er=0xb7359228) at oscam-ecm.c:2377
#4  0x0809a2e3 in newcamd_server (client=0x9ac2f10,
    mbuf=0x9ac6ff8 ">>>BINARY BLOB<<<", len=148)
    at module-newcamd.c:1109
#5  0x081113c7 in work_thread (ptr=0x9a858e8) at oscam-work.c:322
#6  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#7  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 4 (Thread 0xb72f2b90 (LWP 12400)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb777bce7 in poll () from /lib/i686/cmov/libc.so.6
#2  0x08110ed4 in work_thread (ptr=0x9a96540) at oscam-work.c:174
#3  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#4  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 3 (Thread 0xb7623b90 (LWP 12491)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb781c0bb in read () from /lib/i686/cmov/libpthread.so.0
#2  0x080c699a in process_request (f=0x9a8ed40, in=2189467914)
    at module-webif.c:7060
#3  0x080c9b76 in serve_process (conn=0x9a859c8) at module-webif.c:7727
#4  0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#5  0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 2 (Thread 0xb7476b90 (LWP 13700)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb774164b in waitpid () from /lib/i686/cmov/libc.so.6
#2  0xb76df45b in ?? () from /lib/i686/cmov/libc.so.6
#3  0xb76df802 in system () from /lib/i686/cmov/libc.so.6
#4  0xb781d4bd in system () from /lib/i686/cmov/libpthread.so.0
#5  0x08111eec in cs_dumpstack (sig=11) at oscam.c:566
#6  0x081134a8 in cs_exit (sig=11) at oscam.c:638
#7  <signal handler called>
#8  0x0806ce94 in cccam_client_extended_mode (cl=0x9b09760)
    at module-cccam.c:4484
#9  0x0810c645 in reader_get_type_desc (rdr=0x9a40c28, extended=1)
    at oscam-reader.c:488
#10 0x080eed0e in client_get_proto (cl=0x9ad0548) at oscam-client.c:82
#11 0x080c436a in send_oscam_status (vars=0x9b04fe0, params=0xb7475e30,
    apicall=2) at module-webif.c:4593
#12 0x080c5dbe in send_oscam_api (vars=0x9b04fe0, f=0x9a66ec0,
    params=0xb7475e30, keepalive=0xb74763bb "", apicall=1 '\001',
    extraheader=0xb7476154 "Authentication-Info: nextnonce=\"3a910a7874d68bcb9aed0f8fdf50dd66\"") at module-webif.c:6501
#13 0x080c8406 in process_request (f=0x9a66ec0, in=250628274)
    at module-webif.c:7565
#14 0x080c9b76 in serve_process (conn=0x9a8c748) at module-webif.c:7727
#15 0xb78154c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#16 0xb778655e in clone () from /lib/i686/cmov/libc.so.6

Thread 1 (Thread 0xb76a56b0 (LWP 12350)):
#0  0xb7833424 in __kernel_vsyscall ()
#1  0xb777bce7 in poll () from /lib/i686/cmov/libc.so.6
#2  0x08113f5b in main (argc=) at oscam.c:928
#0  0xb7833424 in __kernel_vsyscall ()

Change History (1)

comment:1 by Aeon, 9 years ago

Resolution: wontfix
Status: newclosed

I looked at the code.
Looks like a multi-threading problem.
Nothing I can do at the moment, but it will be fixed once oscam is multi-threading safe.

Note: See TracTickets for help on using tickets.