Change in osmo-remsim[master]: remsim-client: Fix the -k/ --keep-running option
laforge has submitted this change. ( https://gerrit.osmocom.org/c/osmo-remsim/+/17188 ) Change subject: remsim-client: Fix the -k/ --keep-running option .. remsim-client: Fix the -k/ --keep-running option When introducing asynchronous USB support in Change-Id Ic18690b3c2cbc5e99de0665c0b68b7555433b3cd, we accidentially broke the --keep-running behavior, where even a disappearing USB device will not terminate the remsim-client process. Change-Id: I19cca9f7953d61058a36856b2fc4c97a3b93e15d --- M src/client/simtrace2-remsim_client.c 1 file changed, 14 insertions(+), 7 deletions(-) Approvals: laforge: Looks good to me, approved Jenkins Builder: Verified diff --git a/src/client/simtrace2-remsim_client.c b/src/client/simtrace2-remsim_client.c index ac78dd4..1af3274 100644 --- a/src/client/simtrace2-remsim_client.c +++ b/src/client/simtrace2-remsim_client.c @@ -96,6 +96,9 @@ void __thread *talloc_asn1_ctx; int asn_debug; +/* should we leave main loop processing? */ +bool g_leave_main = false; + __attribute__((unused)) static int gsmtap_send_sim(const uint8_t *apdu, unsigned int len) { struct gsmtap_hdr *gh; @@ -152,10 +155,11 @@ break; case LIBUSB_TRANSFER_NO_DEVICE: fprintf(stderr, "USB device disappeared\n"); - exit(23); + g_leave_main = true; break; default: - osmo_panic("USB OUT transfer failed, status=%u\n", xfer->status); + fprintf(stderr, "USB OUT transfer failed, status=%u\n", xfer->status); + g_leave_main = true; break; } @@ -577,10 +581,11 @@ break; case LIBUSB_TRANSFER_NO_DEVICE: fprintf(stderr, "USB device disappeared\n"); - exit(23); + g_leave_main = true; break; default: - osmo_panic("USB IN transfer failed, status=%u\n", xfer->status); + fprintf(stderr, "USB IN transfer failed, status=%u\n", xfer->status); + g_leave_main = true; break; } @@ -627,10 +632,11 @@ break; case LIBUSB_TRANSFER_NO_DEVICE: fprintf(stderr, "USB device disappeared\n"); - exit(23); + g_leave_main = true; break; default: - osmo_panic("USB IRQ transfer failed, status=%u\n", xfer->status); + fprintf(stderr, "USB IRQ transfer failed, status=%u\n", xfer->status); + g_leave_main = true; break; } @@ -1092,9 +1098,10 @@ allocate_and_submit_irq(ci); allocate_and_submit_in(ci); - while (1) { + while (!g_leave_main) { osmo_select_main(false); } + g_leave_main = false; libusb_release_interface(transp->usb_devh, 0); -- To view, visit https://gerrit.osmocom.org/c/osmo-remsim/+/17188 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-remsim Gerrit-Branch: master Gerrit-Change-Id: I19cca9f7953d61058a36856b2fc4c97a3b93e15d Gerrit-Change-Number: 17188 Gerrit-PatchSet: 1 Gerrit-Owner: laforge Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-MessageType: merged
Change in osmo-remsim[master]: remsim-client: Fix the -k/ --keep-running option
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-remsim/+/17188 ) Change subject: remsim-client: Fix the -k/ --keep-running option .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-remsim/+/17188 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-remsim Gerrit-Branch: master Gerrit-Change-Id: I19cca9f7953d61058a36856b2fc4c97a3b93e15d Gerrit-Change-Number: 17188 Gerrit-PatchSet: 1 Gerrit-Owner: laforge Gerrit-Reviewer: laforge Gerrit-CC: Jenkins Builder Gerrit-Comment-Date: Sun, 16 Feb 2020 14:44:24 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-remsim[master]: remsim-client: Fix the -k/ --keep-running option
laforge has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-remsim/+/17188 ) Change subject: remsim-client: Fix the -k/ --keep-running option .. remsim-client: Fix the -k/ --keep-running option When introducing asynchronous USB support in Change-Id Ic18690b3c2cbc5e99de0665c0b68b7555433b3cd, we accidentially broke the --keep-running behavior, where even a disappearing USB device will not terminate the remsim-client process. Change-Id: I19cca9f7953d61058a36856b2fc4c97a3b93e15d --- M src/client/simtrace2-remsim_client.c 1 file changed, 14 insertions(+), 7 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-remsim refs/changes/88/17188/1 diff --git a/src/client/simtrace2-remsim_client.c b/src/client/simtrace2-remsim_client.c index ac78dd4..1af3274 100644 --- a/src/client/simtrace2-remsim_client.c +++ b/src/client/simtrace2-remsim_client.c @@ -96,6 +96,9 @@ void __thread *talloc_asn1_ctx; int asn_debug; +/* should we leave main loop processing? */ +bool g_leave_main = false; + __attribute__((unused)) static int gsmtap_send_sim(const uint8_t *apdu, unsigned int len) { struct gsmtap_hdr *gh; @@ -152,10 +155,11 @@ break; case LIBUSB_TRANSFER_NO_DEVICE: fprintf(stderr, "USB device disappeared\n"); - exit(23); + g_leave_main = true; break; default: - osmo_panic("USB OUT transfer failed, status=%u\n", xfer->status); + fprintf(stderr, "USB OUT transfer failed, status=%u\n", xfer->status); + g_leave_main = true; break; } @@ -577,10 +581,11 @@ break; case LIBUSB_TRANSFER_NO_DEVICE: fprintf(stderr, "USB device disappeared\n"); - exit(23); + g_leave_main = true; break; default: - osmo_panic("USB IN transfer failed, status=%u\n", xfer->status); + fprintf(stderr, "USB IN transfer failed, status=%u\n", xfer->status); + g_leave_main = true; break; } @@ -627,10 +632,11 @@ break; case LIBUSB_TRANSFER_NO_DEVICE: fprintf(stderr, "USB device disappeared\n"); - exit(23); + g_leave_main = true; break; default: - osmo_panic("USB IRQ transfer failed, status=%u\n", xfer->status); + fprintf(stderr, "USB IRQ transfer failed, status=%u\n", xfer->status); + g_leave_main = true; break; } @@ -1092,9 +1098,10 @@ allocate_and_submit_irq(ci); allocate_and_submit_in(ci); - while (1) { + while (!g_leave_main) { osmo_select_main(false); } + g_leave_main = false; libusb_release_interface(transp->usb_devh, 0); -- To view, visit https://gerrit.osmocom.org/c/osmo-remsim/+/17188 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-remsim Gerrit-Branch: master Gerrit-Change-Id: I19cca9f7953d61058a36856b2fc4c97a3b93e15d Gerrit-Change-Number: 17188 Gerrit-PatchSet: 1 Gerrit-Owner: laforge Gerrit-MessageType: newchange
Change in osmo-remsim[master]: remsim-client: Fix the -k/ --keep-running option
laforge has removed a vote from this change. ( https://gerrit.osmocom.org/c/osmo-remsim/+/16623 ) Change subject: remsim-client: Fix the -k/ --keep-running option .. Removed Code-Review+2 by laforge -- To view, visit https://gerrit.osmocom.org/c/osmo-remsim/+/16623 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-remsim Gerrit-Branch: master Gerrit-Change-Id: I67a3a5941434f09f7099c2cdb19c126cea305a73 Gerrit-Change-Number: 16623 Gerrit-PatchSet: 5 Gerrit-Owner: laforge Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-MessageType: deleteVote
Change in osmo-remsim[master]: remsim-client: Fix the -k/ --keep-running option
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-remsim/+/16623 ) Change subject: remsim-client: Fix the -k/ --keep-running option .. Set Ready For Review -- To view, visit https://gerrit.osmocom.org/c/osmo-remsim/+/16623 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-remsim Gerrit-Branch: master Gerrit-Change-Id: I67a3a5941434f09f7099c2cdb19c126cea305a73 Gerrit-Change-Number: 16623 Gerrit-PatchSet: 5 Gerrit-Owner: laforge Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Comment-Date: Sat, 15 Feb 2020 19:12:52 + Gerrit-HasComments: No Gerrit-Has-Labels: No Gerrit-MessageType: comment
Change in osmo-remsim[master]: remsim-client: Fix the -k/ --keep-running option
Hello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-remsim/+/16623 to look at the new patch set (#2). Change subject: remsim-client: Fix the -k/ --keep-running option .. remsim-client: Fix the -k/ --keep-running option When introducing asynchronous USB support in Change-Id Ic18690b3c2cbc5e99de0665c0b68b7555433b3cd, we accidentially broke the --keep-running behavior, where even a disappearing USB device will not terminate the remsim-client process. Change-Id: I67a3a5941434f09f7099c2cdb19c126cea305a73 --- M configure.ac M src/Makefile.am M src/bankd/bankd.h A src/client/Makefile.am R src/client/client.h R src/client/remsim_client.c R src/client/simtrace2-remsim_client.c M src/rspro_client_fsm.c M src/rspro_client_fsm.h 9 files changed, 58 insertions(+), 30 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-remsim refs/changes/23/16623/2 -- To view, visit https://gerrit.osmocom.org/c/osmo-remsim/+/16623 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-remsim Gerrit-Branch: master Gerrit-Change-Id: I67a3a5941434f09f7099c2cdb19c126cea305a73 Gerrit-Change-Number: 16623 Gerrit-PatchSet: 2 Gerrit-Owner: laforge Gerrit-Reviewer: Jenkins Builder Gerrit-MessageType: newpatchset
Change in osmo-remsim[master]: remsim-client: Fix the -k/ --keep-running option
laforge has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-remsim/+/16623 ) Change subject: remsim-client: Fix the -k/ --keep-running option .. remsim-client: Fix the -k/ --keep-running option When introducing asynchronous USB support in Change-Id Ic18690b3c2cbc5e99de0665c0b68b7555433b3cd, we accidentially broke the --keep-running behavior, where even a disappearing USB device will not terminate the remsim-client process. Change-Id: I67a3a5941434f09f7099c2cdb19c126cea305a73 --- M src/simtrace2-remsim_client.c 1 file changed, 14 insertions(+), 7 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-remsim refs/changes/23/16623/1 diff --git a/src/simtrace2-remsim_client.c b/src/simtrace2-remsim_client.c index ac78dd4..1af3274 100644 --- a/src/simtrace2-remsim_client.c +++ b/src/simtrace2-remsim_client.c @@ -96,6 +96,9 @@ void __thread *talloc_asn1_ctx; int asn_debug; +/* should we leave main loop processing? */ +bool g_leave_main = false; + __attribute__((unused)) static int gsmtap_send_sim(const uint8_t *apdu, unsigned int len) { struct gsmtap_hdr *gh; @@ -152,10 +155,11 @@ break; case LIBUSB_TRANSFER_NO_DEVICE: fprintf(stderr, "USB device disappeared\n"); - exit(23); + g_leave_main = true; break; default: - osmo_panic("USB OUT transfer failed, status=%u\n", xfer->status); + fprintf(stderr, "USB OUT transfer failed, status=%u\n", xfer->status); + g_leave_main = true; break; } @@ -577,10 +581,11 @@ break; case LIBUSB_TRANSFER_NO_DEVICE: fprintf(stderr, "USB device disappeared\n"); - exit(23); + g_leave_main = true; break; default: - osmo_panic("USB IN transfer failed, status=%u\n", xfer->status); + fprintf(stderr, "USB IN transfer failed, status=%u\n", xfer->status); + g_leave_main = true; break; } @@ -627,10 +632,11 @@ break; case LIBUSB_TRANSFER_NO_DEVICE: fprintf(stderr, "USB device disappeared\n"); - exit(23); + g_leave_main = true; break; default: - osmo_panic("USB IRQ transfer failed, status=%u\n", xfer->status); + fprintf(stderr, "USB IRQ transfer failed, status=%u\n", xfer->status); + g_leave_main = true; break; } @@ -1092,9 +1098,10 @@ allocate_and_submit_irq(ci); allocate_and_submit_in(ci); - while (1) { + while (!g_leave_main) { osmo_select_main(false); } + g_leave_main = false; libusb_release_interface(transp->usb_devh, 0); -- To view, visit https://gerrit.osmocom.org/c/osmo-remsim/+/16623 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-remsim Gerrit-Branch: master Gerrit-Change-Id: I67a3a5941434f09f7099c2cdb19c126cea305a73 Gerrit-Change-Number: 16623 Gerrit-PatchSet: 1 Gerrit-Owner: laforge Gerrit-MessageType: newchange