Fix the deadlock issue for eSIM.
EuiccCard only allows one caller to open logical channel at the same time, and would reject the second caller if the logical channel is already open. For eSIM operations, getting profile list and sending notifications are done asynchronously and can happen at random time. This would cause race condition for other normal eSIM operations and thus cause failures. We've made the LPA caller to call EuiccCard sequentially to solve the problem. But requestEmbeddedSubscriptionInfoListRefresh inside delete would cause deadlock issue in LPA. Therefore, we should call just call requestEmbeddedSubscriptionInfoListRefresh asynchronously and trigger the callback to return. Also, log the exception in EuiccCardController for better debugging. Bug: 78365287 Test: test on phone Change-Id: Iaffa1bd17e0e3d898eac11337095ede9ef544aa1
Loading
Please register or sign in to comment