Summary: |
segfault in qmi-proxy |
Product: |
libqmi
|
Reporter: |
Albert Diserholt <albert.diserholt> |
Component: |
libqmi | Assignee: |
Dan Williams <dcbw> |
Status: |
RESOLVED
FIXED
|
QA Contact: |
|
Severity: |
normal
|
|
|
Priority: |
medium
|
CC: |
aleksander
|
Version: |
unspecified | |
|
Hardware: |
x86 (IA32) | |
|
OS: |
Linux (All) | |
|
Whiteboard: |
|
i915 platform:
|
|
i915 features:
|
|
Attachments: |
Quick fix.
|
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.
Created attachment 97226 [details] Quick fix. qmi-proxy can segfault due to a race condition when a new request has just been accepted, but the device not yet opened, and a device closing. [10 Apr 2014, 08:53:05] [Debug] client connection open... [10 Apr 2014, 08:53:05] [Debug] valid request to open connection to QMI device file: /dev/cdc-wdm1 [10 Apr 2014, 08:53:05] [Debug] client connection closed [10 Apr 2014, 08:53:05] -Error ** qmi_device_get_path: assertion `QMI_IS_DEVICE (self)' failed Program received signal SIGSEGV, Segmentation fault. 0xb7ab3724 in strcmp () from /lib/i386-linux-gnu/libc.so.6 (gdb) bt #0 0xb7ab3724 in strcmp () from /lib/i386-linux-gnu/libc.so.6 #1 0xb7d648a3 in g_str_equal () from /lib/i386-linux-gnu/libglib-2.0.so.0 #2 0xb7bc8278 in get_n_clients_with_device (device=0x805ba58, self=0x8055000) at qmi-proxy.c:146 #3 connection_close (client=client@entry=0x80555a0) at qmi-proxy.c:168 #4 0xb7bc8977 in connection_readable_cb (socket=0x8060a88, condition=17, client=0x80555a0) at qmi-proxy.c:564 #5 0xb7ee630b in ?? () from /usr/lib/i386-linux-gnu/libgio-2.0.so.0 #6 0xb7d746d3 in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0 #7 0xb7d74a70 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0 #8 0xb7d74ecb in g_main_loop_run () from /lib/i386-linux-gnu/libglib-2.0.so.0 #9 0x08048e7b in main (argc=1, argv=0xbffffdd4) at qmi-proxy.c:212