Nijun Gong bbf4e9cd00 cnss2: wait and cancel dms work before dms deinit
During cnss unload or error quit, cnss_dms_deinit() is called to
perform dms client deinit. When dms sever quit, modem also send event
to cnss to schedule dms client restart with dms_del_server(). The two
processes are asynchronous so qmi_handle_release() may be entered
twice and cause qmi->sock to be used after free.

To avoid this race condition, call cnss_cancel_dms_work() before
cnss_dms_deinit() to guarantee the two processes not run concurrently.

Change-Id: I291c1d0bdead190549dcbbb2c4b7aa65a68196d7
CRs-Fixed: 3875961
2024-07-25 04:09:49 -07:00
2023-05-11 13:09:21 -07:00
Description
Aucune description fournie
226 MiB
Langue
C 98.7%
C++ 0.9%
Makefile 0.3%
Starlark 0.1%