From 71c50c7304fd4c69dedfed68d13ed7b2ed1894ad Mon Sep 17 00:00:00 2001 From: Eric Biggers Date: Fri, 7 Jul 2023 23:29:00 +0000 Subject: [PATCH] Fix logspam due to missing /vendor/etc/public.libraries.txt On Cuttlefish, a warning "Failed to read public libraries file" followed by a stack trace is logged at boot time due to /vendor/etc/public.libraries.txt not existing. However, this file only exists when the silicon vendor chooses to provide additional libraries accessible to apps, according to https://source.android.com/docs/core/permissions/namespaces_libraries#adding-additional-native-libraries Therefore, catch the FileNotFoundException and just log a debug message. Bug: 290402890 Test: booted Cuttlefish and verified the warning is gone Change-Id: I8c21ccb5603fe1f3d523ce762ccc2f7191d74938 --- services/core/java/com/android/server/SystemConfig.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/services/core/java/com/android/server/SystemConfig.java b/services/core/java/com/android/server/SystemConfig.java index 7fae31c0bb4b0..bca2d60761d1f 100644 --- a/services/core/java/com/android/server/SystemConfig.java +++ b/services/core/java/com/android/server/SystemConfig.java @@ -1827,6 +1827,9 @@ public class SystemConfig { soname, soname, new String[0], true); mSharedLibraries.put(entry.name, entry); } + } catch (FileNotFoundException e) { + // Expected for /vendor/etc/public.libraries.txt on some devices + Slog.d(TAG, listFile + " does not exist"); } catch (IOException e) { Slog.w(TAG, "Failed to read public libraries file " + listFile, e); }