Crash downloading from Cobalt 2 from Subsurface mobile

Matt Thompson mathomp at gmail.com
Wed Aug 8 16:17:51 PDT 2018


On Wed, Aug 8, 2018 at 5:23 PM Dirk Hohndel <dirk at hohndel.org> wrote:

> Not a problem - you are simply reminding me that I need to fix this in our
> output :-)
>
> Probably would be good to modify the dive computer dialog to not show the
connection type combo box too...  I mean, as long as you are in there... :D


> > > And it seems to successfully talk
> > > to the Cobalt, able to download the the firmware version (that number
> does
> > > look odd),
> >
> > Indeed. The firmware version reported on the device is 2.460/4
>
> OK, so this was the firmware version, we just need to decode it :-)
> 161218564 is 0x99c0004 so the two words are 0x099c = 2460 and 0x0004 = 4
> Bingo :-)
>
> > > serial number (also looks a bit odd),
> >
> > The serial number is actually (mostly) correct.  As reported on the
> device
> > it is 4515-0833 as opposed to 45150833
>
> So we are talking to your device just fine.
>
> > > first dive and then move on.
> > >
> > > What I'd love to know is why it crashes... nothing in the log indicates
> > > what's going wrong there...
> >
> > Yup.  No other information on screen or anything. Just the Android system
> > dialog telling me it crashed and offering to launch the app again.
>
> Do you have access to adb on a computer? If you can connect to the Cobalt,
> trigger the crash, then connect to a computer and run 'adb logcat' we
> should be able to see a backtrace. That might help us figure out what's
> wrong.
>
> Done.  It looks like it is hitting an assert in libusb after it figures
out there is nothing to do and is trying to close the usb device.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.subsurface-divelog.org/pipermail/subsurface/attachments/20180808/27c3e5ff/attachment.html>
-------------- next part --------------
08-08 18:00:16.794 4249-4249/? I/GCoreUlr: Starting service, intent=Intent { act=com.google.android.location.reporting.ACTION_UPDATE_ACTIVE_STATE cmp=com.google.android.gms/com.google.android.location.reporting.service.DispatchingService (has extras) }, extras=Bundle[{source=PowerModeReceiver}]
08-08 18:00:16.795 785-785/? E/qti_sensors_hal: sendEnableReq:sensor(android.sensor.significant_motion) Sending enable to svc no:40
08-08 18:00:16.852 785-785/? E/qti_sensors_hal: sendCancel:sensor(android.sensor.significant_motion) Sending cancel to svc no:40
08-08 18:00:16.852 4249-4249/? I/GCoreUlr: Starting service, intent=Intent { act=com.google.android.location.reporting.ACTION_UPDATE_ACTIVE_STATE cmp=com.google.android.gms/com.google.android.location.reporting.service.DispatchingService (has extras) }, extras=Bundle[{source=PowerModeReceiver}]
08-08 18:00:16.887 4249-10964/? I/GCoreUlr: DispatchingService.updateActiveState+PowerModeReceiver: Ensuring that reporting is active for [account#-9#]
08-08 18:00:16.936 4249-10964/? I/GCoreUlr: DispatchingService.updateActiveState+PowerModeReceiver: Ensuring that reporting is active for [account#-9#]
08-08 18:00:17.049 790-9174/? I/WifiHAL: event received NL80211_CMD_VENDOR, vendor_id = 0x1374, subcmd = 0xd
08-08 18:00:17.183 18099-18139/? D/NetworkStateUtils: netWorkState=1
08-08 18:00:18.463 3952-3952/? D/HeadsetPhoneState: Enter onSignalStrengthsChanged
    Exit onSignalStrengthsChanged
08-08 18:00:18.745 7181-11715/? D//data/android/subsurface/qt-models/messagehandlermodel.cpp: INFO: "19.618: DCDownloadThread started for Atomic Aquatics Cobalt 2 on FTDI"
08-08 18:00:18.748 7181-11826/? D//data/android/subsurface/qt-models/messagehandlermodel.cpp: INFO: Starting download from  ftdi
    INFO: Starting the thread 0
08-08 18:00:18.751 7181-11826/? D/libusb: [timestamp] [threadID] facility level [function call] <message>
    --------------------------------------------------------------------------------
    [ 0.000010] [00002e32] libusb: debug [libusb_init] created default context
    [ 0.000309] [00002e32] libusb: debug [libusb_init] libusb v1.0.21.11156
    [ 0.000430] [00002e32] libusb: debug [op_init] bulk continuation flag supported
    [ 0.000509] [00002e32] libusb: debug [op_init] zero length packet flag supported
08-08 18:00:18.752 7181-11826/? D/libusb: [ 0.000759] [00002e32] libusb: debug [op_init] sysfs can relate devices
    [ 0.000851] [00002e32] libusb: debug [op_init] sysfs has complete descriptors
    [ 0.001092] [00002e32] libusb: debug [linux_get_device_address] getting address for device: 1-1 detached: 0
    [ 0.001189] [00002e32] libusb: debug [linux_get_device_address] scan 1-1
08-08 18:00:18.753 7181-11826/? D/libusb: [ 0.001978] [00002e32] libusb: debug [linux_get_device_address] bus=1 dev=2
    [ 0.002077] [00002e32] libusb: debug [linux_enumerate_device] busnum 1 devaddr 2 session_id 258
    [ 0.002184] [00002e32] libusb: debug [linux_enumerate_device] allocating new device for 1/2 (session 258)
08-08 18:00:18.754 7181-11826/? D/libusb: [ 0.002674] [00002e32] libusb: debug [linux_get_parent_info] parent_dev usb1 not enumerated yet, enumerating now
    [ 0.002775] [00002e32] libusb: debug [linux_get_device_address] getting address for device: usb1 detached: 0
    [ 0.002842] [00002e32] libusb: debug [linux_get_device_address] scan usb1
    [ 0.003246] [00002e32] libusb: debug [linux_get_device_address] bus=1 dev=1
    [ 0.003338] [00002e32] libusb: debug [linux_enumerate_device] busnum 1 devaddr 1 session_id 257
    [ 0.003623] [00002e32] libusb: debug [linux_enumerate_device] allocating new device for 1/1 (session 257)
08-08 18:00:18.755 7181-11826/? D/libusb: [ 0.004104] [00002e32] libusb: debug [linux_get_parent_info] Dev 0xc1830030 (1-1) has parent 0xc1830080 (usb1) port 1
    [ 0.004218] [00002e32] libusb: debug [linux_get_device_address] getting address for device: usb1 detached: 0
    [ 0.004288] [00002e32] libusb: debug [linux_get_device_address] scan usb1
    [ 0.004583] [00002e32] libusb: debug [linux_get_device_address] bus=1 dev=1
    [ 0.004646] [00002e32] libusb: debug [linux_enumerate_device] busnum 1 devaddr 1 session_id 257
08-08 18:00:18.756 7181-11826/? D/libusb: [ 0.004734] [00002e32] libusb: debug [linux_enumerate_device] session_id 257 already exists
    [ 0.004799] [00002e32] libusb: debug [linux_get_device_address] getting address for device: usb2 detached: 0
    [ 0.004884] [00002e32] libusb: debug [linux_get_device_address] scan usb2
    [ 0.005312] [00002e32] libusb: debug [linux_get_device_address] bus=2 dev=1
    [ 0.005402] [00002e32] libusb: debug [linux_enumerate_device] busnum 2 devaddr 1 session_id 513
    [ 0.005468] [00002e32] libusb: debug [linux_enumerate_device] allocating new device for 2/1 (session 513)
08-08 18:00:18.757 7181-11826/? D/libusb: [ 0.005973] [00002e32] libusb: debug [usbi_add_pollfd] add fd 67 events 1
    [ 0.006099] [00002e32] libusb: debug [libusb_get_device_list] 
08-08 18:00:18.757 7181-11826/? E/libusb: [ 0.006194] [00002e32] libusb: error [linux_netlink_read_message] error receiving message from netlink (9)
08-08 18:00:18.757 7181-11826/? D/libusb: [ 0.006292] [00002e32] libusb: debug [libusb_get_device_descriptor] 
    [ 0.006345] [00002e32] libusb: debug [libusb_get_device_descriptor] 
    [ 0.006395] [00002e32] libusb: debug [libusb_open] open 1.2
08-08 18:00:18.768 7181-11826/? D/libusb: [ 0.017177] [00002e32] libusb: debug [usbi_add_pollfd] add fd 74 events 4
    [ 0.017383] [00002e32] libusb: debug [libusb_claim_interface] interface 0
    [ 0.017509] [00002e32] libusb: debug [libusb_alloc_transfer] transfer 0xc30a687c
    [ 0.017543] [00002e32] libusb: debug [libusb_submit_transfer] transfer 0xc30a687c
    [ 0.017645] [00002e32] libusb: debug [libusb_get_next_timeout] next timeout in 1.999932s
    [ 0.017685] [00002e32] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
08-08 18:00:18.769 7181-11826/? D/libusb: [ 0.017713] [00002e32] libusb: debug [handle_events] poll fds modified, reallocating
    [ 0.017772] [00002e32] libusb: debug [handle_events] poll() 2 fds with timeout in 2000ms
    [ 0.018331] [00002e32] libusb: debug [handle_events] poll() returned 1
    [ 0.018453] [00002e32] libusb: debug [reap_for_handle] urb type=2 status=0 transferred=0
    [ 0.018484] [00002e32] libusb: debug [handle_control_completion] handling completion status 0
    [ 0.018524] [00002e32] libusb: debug [usbi_handle_transfer_completion] transfer 0xc30a687c has callback 0xc82656f4
    [ 0.018581] [00002e32] libusb: debug [sync_transfer_cb] actual_length=0
    [ 0.018615] [00002e32] libusb: debug [libusb_free_transfer] transfer 0xc30a687c
08-08 18:00:18.770 7181-11826/? D/libusb: [ 0.018734] [00002e32] libusb: debug [libusb_alloc_transfer] transfer 0xc30a687c
    [ 0.018757] [00002e32] libusb: debug [libusb_submit_transfer] transfer 0xc30a687c
    [ 0.018781] [00002e32] libusb: debug [submit_bulk_transfer] need 1 urbs for new transfer with length 16
    [ 0.018841] [00002e32] libusb: debug [libusb_get_next_timeout] next timeout in 1.999937s
    [ 0.018865] [00002e32] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
    [ 0.018889] [00002e32] libusb: debug [handle_events] poll() 2 fds with timeout in 2000ms
    [ 0.018919] [00002e32] libusb: debug [handle_events] poll() returned 1
    [ 0.018944] [00002e32] libusb: debug [reap_for_handle] urb type=3 status=0 transferred=16
    [ 0.018966] [00002e32] libusb: debug [handle_bulk_completion] handling completion status 0 of bulk urb 1/1
    [ 0.018987] [00002e32] libusb: debug [handle_bulk_completion] last URB in transfer --> complete!
    [ 0.019007] [00002e32] libusb: debug [usbi_handle_transfer_completion] transfer 0xc30a687c has callback 0xc82656f4
    [ 0.019026] [00002e32] libusb: debug [sync_transfer_cb] actual_length=16
    [ 0.019048] [00002e32] libusb: debug [libusb_free_transfer] transfer 0xc30a687c
08-08 18:00:18.770 7181-11826/? D//data/android/subsurface/core/libdivecomputer.c: INFO: dc_device_open error value of 0
08-08 18:00:18.770 7181-11826/? D//data/android/subsurface/qt-models/messagehandlermodel.cpp: INFO: "19.644: model=Cobalt 2 firmware=161218564 serial=45150833"
08-08 18:00:18.770 7181-11826/? D/libusb: [ 0.019674] [00002e32] libusb: debug [libusb_alloc_transfer] transfer 0xc30a687c
08-08 18:00:18.771 7181-11826/? D/libusb: [ 0.019723] [00002e32] libusb: debug [libusb_submit_transfer] transfer 0xc30a687c
    [ 0.019771] [00002e32] libusb: debug [libusb_get_next_timeout] next timeout in 1.999974s
    [ 0.019795] [00002e32] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
    [ 0.019814] [00002e32] libusb: debug [handle_events] poll() 2 fds with timeout in 2000ms
08-08 18:00:18.791 7181-11826/? D/libusb: [ 0.039858] [00002e32] libusb: debug [handle_events] poll() returned 1
    [ 0.039949] [00002e32] libusb: debug [reap_for_handle] urb type=2 status=0 transferred=0
    [ 0.039966] [00002e32] libusb: debug [handle_control_completion] handling completion status 0
    [ 0.039981] [00002e32] libusb: debug [usbi_handle_transfer_completion] transfer 0xc30a687c has callback 0xc82656f4
    [ 0.039993] [00002e32] libusb: debug [sync_transfer_cb] actual_length=0
    [ 0.040008] [00002e32] libusb: debug [libusb_free_transfer] transfer 0xc30a687c
    [ 0.040032] [00002e32] libusb: debug [libusb_alloc_transfer] transfer 0xc30a687c
    [ 0.040045] [00002e32] libusb: debug [libusb_submit_transfer] transfer 0xc30a687c
    [ 0.040059] [00002e32] libusb: debug [submit_bulk_transfer] need 1 urbs for new transfer with length 8192
    [ 0.040148] [00002e32] libusb: debug [libusb_get_next_timeout] next timeout in 1.999907s
    [ 0.040163] [00002e32] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
    [ 0.040176] [00002e32] libusb: debug [handle_events] poll() 2 fds with timeout in 2000ms
08-08 18:00:18.794 7181-11826/? D/libusb: [ 0.043301] [00002e32] libusb: debug [handle_events] poll() returned 1
    [ 0.043489] [00002e32] libusb: debug [reap_for_handle] urb type=3 status=0 transferred=1740
    [ 0.043507] [00002e32] libusb: debug [handle_bulk_completion] handling completion status 0 of bulk urb 1/1
    [ 0.043521] [00002e32] libusb: debug [handle_bulk_completion] last URB in transfer --> complete!
    [ 0.043538] [00002e32] libusb: debug [usbi_handle_transfer_completion] transfer 0xc30a687c has callback 0xc82656f4
    [ 0.043551] [00002e32] libusb: debug [sync_transfer_cb] actual_length=1740
    [ 0.043578] [00002e32] libusb: debug [libusb_free_transfer] transfer 0xc30a687c
08-08 18:00:18.795 7181-11826/? D//data/android/subsurface/qt-models/messagehandlermodel.cpp: INFO: "19.669: Dive 1: Sun Apr 15, 2018 1:07 PM"
    INFO: "19.669: Already downloaded dive at Sun Apr 15, 2018 1:07 PM"
08-08 18:00:18.796 7181-11826/? D/libusb: [ 0.044729] [00002e32] libusb: debug [libusb_release_interface] interface 0
    [ 0.044806] [00002e32] libusb: debug [libusb_close] 
    [ 0.044833] [00002e32] libusb: debug [usbi_remove_pollfd] remove fd 74
    [ 0.044869] [00002e32] libusb: debug [libusb_exit] 
    [ 0.044881] [00002e32] libusb: debug [libusb_exit] destroying default context
    [ 0.044894] [00002e32] libusb: debug [libusb_get_next_timeout] no URBs, no timeout!
    [ 0.044905] [00002e32] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
    [ 0.044918] [00002e32] libusb: debug [handle_events] poll fds modified, reallocating
    [ 0.044937] [00002e32] libusb: debug [handle_events] poll() 1 fds with timeout in 0ms
    [ 0.044954] [00002e32] libusb: debug [handle_events] poll() returned 0
    [ 0.044966] [00002e32] libusb: debug [libusb_unref_device] destroy device 2.1
    [ 0.044980] [00002e32] libusb: debug [libusb_unref_device] destroy device 1.2
    [ 0.044991] [00002e32] libusb: debug [libusb_unref_device] destroy device 1.1
    [ 0.045003] [00002e32] libusb: debug [usbi_remove_pollfd] remove fd 67
08-08 18:00:18.796 7181-11826/? A/libc: ../../libusb/libusb/os/linux_usbfs.c:500: op_exit: assertion "init_count != 0" failed
08-08 18:00:18.797 7181-11826/? A/libc: Fatal signal 6 (SIGABRT), code -6 in tid 11826 (QtThread), pid 7181 (edivelog.mobile)
08-08 18:00:18.864 11830-11830/? W/crash_dump32: type=1400 audit(0.0:71468): avc: denied { search } for name="org.subsurfacedivelog.mobile" dev="sda13" ino=2408473 scontext=u:r:crash_dump:s0:c512,c768 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=dir permissive=0
08-08 18:00:18.874 11830-11830/? I/chatty: uid=10271(org.subsurfacedivelog.mobile) crash_dump32 identical 23 lines
08-08 18:00:18.874 11830-11830/? W/crash_dump32: type=1400 audit(0.0:71492): avc: denied { search } for name="org.subsurfacedivelog.mobile" dev="sda13" ino=2408473 scontext=u:r:crash_dump:s0:c512,c768 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=dir permissive=0
08-08 18:00:18.920 11830-11830/? I/crash_dump32: obtaining output fd from tombstoned, type: kDebuggerdTombstone
08-08 18:00:18.921 951-951/? I//system/bin/tombstoned: received crash request for pid 7181
08-08 18:00:18.926 11830-11830/? I/crash_dump32: performing dump of process 7181 (target tid = 11826)
08-08 18:00:18.927 11830-11830/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
    Build fingerprint: 'OnePlus/OnePlus5T/OnePlus5T:8.1.0/OPM1.171019.011/1807181208:user/release-keys'
    Revision: '0'
    ABI: 'arm'
    pid: 7181, tid: 11826, name: QtThread  >>> org.subsurfacedivelog.mobile <<<
    signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
08-08 18:00:18.932 11830-11830/? A/DEBUG: Abort message: '../../libusb/libusb/os/linux_usbfs.c:500: op_exit: assertion "init_count != 0" failed'
        r0 00000000  r1 00002e32  r2 00000006  r3 00000008
        r4 00001c0d  r5 00002e32  r6 c16ff80c  r7 0000010c
        r8 00000000  r9 c16ff8cc  sl c50494c0  fp c16ff83c
        ip 00000000  sp c16ff7f8  lr e73f2faf  pc e73ec998  cpsr 20070030
08-08 18:00:18.934 11830-11830/? A/DEBUG: backtrace:
        #00 pc 0001a998  /system/lib/libc.so (abort+63)
        #01 pc 0001abb9  /system/lib/libc.so (__assert2+20)
        #02 pc 0031dd98  /data/app/org.subsurfacedivelog.mobile-ehLum4mZVp9YUvan5L43eA==/lib/arm/libsubsurface-mobile.so
08-08 18:00:19.058 790-9174/? I/WifiHAL: event received NL80211_CMD_VENDOR, vendor_id = 0x1374, subcmd = 0xd
08-08 18:00:19.502 951-951/? E//system/bin/tombstoned: Tombstone written to: /data/tombstones/tombstone_06
08-08 18:00:19.506 1336-11831/? I/chatty: uid=1000 system_server expire 1 line
08-08 18:00:19.515 1336-1425/? I/BootReceiver: Copying /data/tombstones/tombstone_06 to DropBox (SYSTEM_TOMBSTONE)
08-08 18:00:19.524 1336-11831/? W/ActivityManager:   Force finishing activity org.subsurfacedivelog.mobile/org.qtproject.qt5.android.bindings.QtActivity
08-08 18:00:19.534 1336-1401/? I/chatty: uid=1000(system) ActivityManager expire 41 lines
08-08 18:00:19.537 1336-1402/? I/ActivityManager: Showing crash dialog for package org.subsurfacedivelog.mobile u0
08-08 18:00:19.564 1336-11833/? D/DropBoxManagerService: file :: /data/system/dropbox/data_app_native_crash at 2018-08-08-18_00_19_532.txt
08-08 18:00:19.598 1336-1425/? D/DropBoxManagerService: file :: /data/system/dropbox/SYSTEM_TOMBSTONE at 2018-08-08-18_00_19_559.txt.gz
08-08 18:00:19.623 1336-2356/? I/chatty: uid=1000(system) android.anim expire 4 lines
08-08 18:00:19.653 1336-2377/? I/chatty: uid=1000(system) InputDispatcher expire 2 lines
08-08 18:00:19.656 679-679/? I/Zygote: Process 7181 exited due to signal (6)
08-08 18:00:19.657 1336-3245/? I/ActivityManager: Process org.subsurfacedivelog.mobile (pid 7181) has died: fore TOP 
08-08 18:00:19.657 1336-3245/? D/ActivityManager: Process org.subsurfacedivelog.mobile has 0 services
08-08 18:00:19.671 1336-4549/? I/WindowManager: WIN DEATH: Window{8ea148 u0 org.subsurfacedivelog.mobile/org.qtproject.qt5.android.bindings.QtActivity}


More information about the subsurface mailing list