Commits


Rebecca Silberstein authored and The Android Automerger committed b1af7c8fa17
NativeDaemonConnector: add waitForCallbacks method Add a method that allows callers to wait until all unsolicited responses received from the native daemon during a command are processed. When commands are issued to a native daemon (such as netd) through the NativeDaemonConnector we block until the command response is received. Any responses or events that are a side-effect (considered "unsolicited") of the command are placed in a Message and handled as callbacks. The order of their processing is not guaranteed and, as we have seen from bugreports, can be handled several seconds later - causing the SoftAP that was just set up to be torn down because a late interface down/removed is indistinguishable from a new interface down/removed. This CL adds a method that first checks to make sure callback thread is not the same thread as used for the blocking call. The new waitForCallbacks method uses a CountDownLatch to force the calling thread to wait until all unsolicited responses received from the native daemon during the execution of the command are handled. The wifiFirmwareReload method is also updated to use the new waitForCallbacks method. BUG: 27857665 Change-Id: I3e22978f720b1cbf57fbb64ad4fea73f8c2d408a