diff --git a/init/property_service.cpp b/init/property_service.cpp index d3cdd437f..cd5933d23 100644 --- a/init/property_service.cpp +++ b/init/property_service.cpp @@ -974,6 +974,17 @@ static std::string ConstructBuildFingerprint(bool legacy) { std::string build_fingerprint = GetProperty("ro.product.brand", UNKNOWN); build_fingerprint += '/'; build_fingerprint += GetProperty("ro.product.name", UNKNOWN); + + // should be set in /product/etc/build.prop + // when we have a dev option device, and we've switched the kernel to 16kb mode + // we use the same system image, but we've switched out the kernel, so make it + // visible at a high level + bool has16KbDevOption = + android::base::GetBoolProperty("ro.product.build.16k_page.enabled", false); + if (has16KbDevOption && getpagesize() == 16384) { + build_fingerprint += "_16kb"; + } + build_fingerprint += '/'; build_fingerprint += GetProperty("ro.product.device", UNKNOWN); build_fingerprint += ':';