diff options
author | Aleksander Morgado <aleksandermj@chromium.org> | 2024-01-08 10:37:42 +0000 |
---|---|---|
committer | Aleksander Morgado <aleksandermj@chromium.org> | 2024-01-26 12:27:44 +0000 |
commit | 80db88da4d0e0d5037e95a445e96ca99b9232649 (patch) | |
tree | fca58b1afb4bc357781befe4e612d1cb77c173bc /src/mm-error-helpers.h | |
parent | 1655d0e014eb7019cbc51d90006d730d73a275fd (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.h')
0 files changed, 0 insertions, 0 deletions