From 389443cedadb2312571712ed37ba0dde2e4fe102 Mon Sep 17 00:00:00 2001 From: Remi NGUYEN VAN Date: Fri, 15 Mar 2019 08:21:27 +0900 Subject: Initialize the NetworkStack before WiFi The NetworkStack needs to be marked as start requested before any client can use it from the system server, so it knows to queue requests until it actually comes up. This fixes a bug introduced in commit: I93315ad31925bd436e21d1eabb21d5967e6aae60 where a client trying to use the network stack in the system server before ActivityManager.systemReady() could block and eventually timeout, resulting in a null INetworkStackConnector. Test: booted, WiFi working Bug: 128620654 Change-Id: Ieca2657373eba78195b387fb266fa0424fce8ada --- services/java/com/android/server/SystemServer.java | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'services/java/com') diff --git a/services/java/com/android/server/SystemServer.java b/services/java/com/android/server/SystemServer.java index d33d7f57df9a..4125b9243719 100644 --- a/services/java/com/android/server/SystemServer.java +++ b/services/java/com/android/server/SystemServer.java @@ -1118,6 +1118,14 @@ public final class SystemServer { mSystemServiceManager.startService(ClipboardService.class); traceEnd(); + traceBeginAndSlog("InitNetworkStackClient"); + try { + NetworkStackClient.getInstance().init(); + } catch (Throwable e) { + reportWtf("initializing NetworkStackClient", e); + } + traceEnd(); + traceBeginAndSlog("StartNetworkManagementService"); try { networkManagement = NetworkManagementService.create(context); -- cgit v1.2.3-59-g8ed1b