Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit beacf8d6 authored by Lorenzo Colitti's avatar Lorenzo Colitti
Browse files

Don't enable Ethernet on the emulator.

Don't start the Ethernet service on the emulator because it
interferes with qemu's SLIRP emulation, which uses IPv4 over
eth0.

Bug: 15341003
Change-Id: I4041a17b19a4861cae4fbf47ab5e05b007385e19
parent 465c5de4
Loading
Loading
Loading
Loading
+13 −5
Original line number Diff line number Diff line
@@ -349,6 +349,7 @@ public final class SystemServer {
        boolean disableSystemUI = SystemProperties.getBoolean("config.disable_systemui", false);
        boolean disableNonCoreServices = SystemProperties.getBoolean("config.disable_noncore", false);
        boolean disableNetwork = SystemProperties.getBoolean("config.disable_network", false);
        boolean isEmulator = SystemProperties.get("ro.kernel.qemu").equals("1");

        try {
            Slog.i(TAG, "Telephony Registry");
@@ -461,7 +462,7 @@ public final class SystemServer {
            // Skip Bluetooth if we have an emulator kernel
            // TODO: Use a more reliable check to see if this product should
            // support Bluetooth - see bug 988521
            if (SystemProperties.get("ro.kernel.qemu").equals("1")) {
            if (isEmulator) {
                Slog.i(TAG, "No Bluetooh Service (emulator)");
            } else if (mFactoryTestMode == FactoryTest.FACTORY_TEST_LOW_LEVEL) {
                Slog.i(TAG, "No Bluetooth Service (factory test)");
@@ -662,11 +663,18 @@ public final class SystemServer {
                    reportWtf("starting Wi-Fi Scanning Service", e);
                }

                if (!isEmulator) {
                    try {
                        mSystemServiceManager.startService(ETHERNET_SERVICE_CLASS);
                    } catch (Throwable e) {
                        reportWtf("starting Ethernet Service", e);
                    }
                } else {
                    // Don't start the Ethernet service on the emulator because
                    // it interferes with qemu's SLIRP emulation, which uses
                    // IPv4 over eth0. http://b/15341003 .
                    Slog.i(TAG, "Not starting Ethernet service (emulator)");
                }

                try {
                    Slog.i(TAG, "Connectivity Service");