Project

General

Profile

Actions

Bug #3340

closed

osmo-trx-lms doesn't exit nor recover if device is unplugged

Added by laforge almost 6 years ago. Updated over 5 years ago.

Status:
Resolved
Priority:
High
Assignee:
Category:
LimeSDR
Target version:
-
Start date:
06/13/2018
Due date:
% Done:

100%

Spec Reference:

Description

Especially with USB based devices, it's not completely unlikely that once upon a time there is a bus reset or some other event that makes the device disappear.

The current behavior of osmo-trx-lms is to start spewing error messages, but it will not terminate, nor will it recover after the USB device is re-attached.

Wed Jun 13 15:34:30 2018 DMAIN <0000> LMSDevice.cpp:509 [tid=140361119426304] LMS: Device receive timed out
Wed Jun 13 15:34:30 2018 DMAIN <0000> radioInterface.cpp:319 [tid=140361119426304] Receive error 340
Wed Jun 13 15:34:30 2018 DMAIN <0000> LMSDevice.cpp:507 [tid=140361119426304] chan 0 recv buffer of len 0 expect dc7d50 got 0 (0) diff=ffffffffff2382b0
Wed Jun 13 15:34:30 2018 DMAIN <0000> LMSDevice.cpp:509 [tid=140361119426304] LMS: Device receive timed out
Wed Jun 13 15:34:30 2018 DMAIN <0000> radioInterface.cpp:319 [tid=140361119426304] Receive error 0
Wed Jun 13 15:34:30 2018 DMAIN <0000> LMSDevice.cpp:507 [tid=140361119426304] chan 0 recv buffer of len 0 expect dc7d50 got 0 (0) diff=ffffffffff2382b0
Wed Jun 13 15:34:30 2018 DMAIN <0000> LMSDevice.cpp:509 [tid=140361119426304] LMS: Device receive timed out
Wed Jun 13 15:34:30 2018 DMAIN <0000> radioInterface.cpp:319 [tid=140361119426304] Receive error 0
Wed Jun 13 15:34:30 2018 DMAIN <0000> LMSDevice.cpp:507 [tid=140361119426304] chan 0 recv buffer of len 0 expect dc7d50 got 0 (0) diff=ffffffffff2382b0

I think the easiest would be to exit the program and have systemd respawn it, like we do with other osmocom programs


Related issues

Related to OsmoTRX - Feature #2919: Native LimeSDR supportResolvedpespin02/09/2018

Actions
Actions #1

Updated by laforge almost 6 years ago

Actions #2

Updated by laforge over 5 years ago

  • Priority changed from Normal to High
Actions #3

Updated by pespin over 5 years ago

  • Description updated (diff)
Actions #4

Updated by pespin over 5 years ago

Improved the situation with following patches:

remote: https://gerrit.osmocom.org/#/c/osmo-trx/+/10739 Logger: Disable pthread cancel point inside Logger destructor
remote: https://gerrit.osmocom.org/#/c/osmo-trx/+/10740 cosmetic: Fix trailing whitespace
remote: https://gerrit.osmocom.org/#/c/osmo-trx/+/10741 radioInterface: forward errors from RadioDevice to Transceiver in recv path
remote: https://gerrit.osmocom.org/#/c/osmo-trx/+/10742 lms: Return error on device read timeout
remote: https://gerrit.osmocom.org/#/c/osmo-trx/+/10743 osmo-trx: Add osmo_signal to stop whole transceiver chain correctly on error
remote: https://gerrit.osmocom.org/#/c/osmo-trx/+/10744 radioInterface: Fix variable storing integer return value

So after those patches are applied, when I disconnect the usb plug of the device it will signal that the device is failing and osmo-trx will destroy the transceiver object (and all the other objects behind it) and once it's done, it will end the process.

Actions #5

Updated by pespin over 5 years ago

  • Status changed from New to Feedback
  • % Done changed from 0 to 90
Actions #6

Updated by pespin over 5 years ago

  • Status changed from Feedback to Resolved
  • % Done changed from 90 to 100

Merged, closing.

Actions

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)