From 9b6a994984891aeb6779886bfecefaecd5b97fb5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maciej=20=C5=BBenczykowski?= Date: Tue, 3 Sep 2024 16:08:35 -0700 Subject: [PATCH] NetBpfLoad: require 64-bit kernel 6.7+ MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Note that this is a no-op for everything before sdk=36+, since V/sdk=35 only supports up to 6.6 LTS anyway. Test: TreeHugger Signed-off-by: Maciej Żenczykowski Change-Id: I701045074dfb7b0c586536634e210318b5af364b --- bpf/loader/NetBpfLoad.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/bpf/loader/NetBpfLoad.cpp b/bpf/loader/NetBpfLoad.cpp index 2762687bdd..495cbab4c1 100644 --- a/bpf/loader/NetBpfLoad.cpp +++ b/bpf/loader/NetBpfLoad.cpp @@ -1460,6 +1460,12 @@ static int doLoad(char** argv, char * const envp[]) { if (!isTV()) return 1; } + // 6.6 is highest version supported by Android V, so this is effectively W+ (sdk=36+) + if (isKernel32Bit() && isAtLeastKernelVersion(6, 7, 0)) { + ALOGE("Android platform with 32 bit kernel version >= 6.7.0 is unsupported"); + return 1; + } + // Various known ABI layout issues, particularly wrt. bpf and ipsec/xfrm. if (isAtLeastV && isKernel32Bit() && isX86()) { ALOGE("Android V requires X86 kernel to be 64-bit.");