aboutsummaryrefslogtreecommitdiff
path: root/src/mm-error-helpers.c
diff options
context:
space:
mode:
authorAleksander Morgado <aleksandermj@chromium.org>2024-01-08 10:37:42 +0000
committerAleksander Morgado <aleksandermj@chromium.org>2024-01-26 12:27:44 +0000
commit80db88da4d0e0d5037e95a445e96ca99b9232649 (patch)
treefca58b1afb4bc357781befe4e612d1cb77c173bc /src/mm-error-helpers.c
parent1655d0e014eb7019cbc51d90006d730d73a275fd (diff)
broadband-modem-qmi: keep power operation ongoing until fully finished
The GTask stored in the private modem struct indicates whether a power update operation is ongoing. We should keep this task stored always until just before completing the GTask. We also make sure that any additional step (e.g. disabling DMS event report indications) is included in the power update operation, so that they are correctly synchronized also in the modem. This fix should solve a crash triggered by a DMS event report indication being received while setting up the next power update operation. 0x0000007aa67de878 (libc.so.6 + 0x0007e878) pthread_key_delete 0x0000007aa6799d28 (libc.so.6 + 0x00039d28) gsignal 0x0000007aa6786e2c (libc.so.6 + 0x00026e2c) abort 0x0000007aa6feb188 (libglib-2.0.so.0 - gtestutils.c: 3256) g_assertion_message 0x0000007aa6feb1f8 (libglib-2.0.so.0 - gtestutils.c: 3282) g_assertion_message_expr 0x0000005a58199b7c (ModemManager - mm-broadband-modem-qmi.c: 1926) dms_set_event_report_operating_mode_activate_ready 0x0000007aa6e4b7a0 (libgio-2.0.so.0 - gtask.c: 1232) g_task_return_now 0x0000007aa6e4a6b0 (libgio-2.0.so.0 - gtask.c: 1301) g_task_return 0x0000007aa6b58400 (libqmi-glib.so.5 - qmi-dms.c: 32600) set_event_report_ready 0x0000007aa6e3642c (libgio-2.0.so.0 - gsimpleasyncresult.c: 804) g_simple_async_result_complete 0x0000007aa6e36538 (libgio-2.0.so.0 - gsimpleasyncresult.c: 816) complete_in_idle_cb 0x0000007aa6fc6390 (libglib-2.0.so.0 - gmain.c: 3444) g_main_context_dispatch 0x0000007aa6fc66c4 (libglib-2.0.so.0 - gmain.c: 4238) g_main_context_iterate 0x0000007aa6fc6a34 (libglib-2.0.so.0 - gmain.c: 4438) g_main_loop_run 0x0000005a58119274 (ModemManager - main.c: 221) main 0x0000007aa67870f8 (libc.so.6 + 0x000270f8) __libc_init_first 0x0000007aa67871c8 (libc.so.6 + 0x000271c8) __libc_start_main 0x0000005a58118aec (ModemManager + 0x000a8aec) _start
Diffstat (limited to 'src/mm-error-helpers.c')
0 files changed, 0 insertions, 0 deletions