Thanks! On Friday, September 19, 2025 at 4:33:33 AM UTC-4 Ben Noordhuis wrote:
> Yes, 16k on x64 and arm64 android. > > On Tue, Sep 16, 2025 at 6:53 PM 'Mati Cohen' via v8-users > <[email protected]> wrote: > > > > I'm willing to recompile the latest stable version. I am looking at > build_config.h and for it's using the following implementation: > > > > #if (defined(V8_OS_MACOS) && defined(V8_HOST_ARCH_ARM64)) || \ > > (defined(V8_OS_ANDROID) && \ > > (defined(V8_HOST_ARCH_ARM64) || defined(V8_HOST_ARCH_X64))) || \ > > defined(V8_HOST_ARCH_LOONG64) || defined(V8_HOST_ARCH_MIPS64) || \ > > defined(V8_OS_IOS) > > // Android 64 bit has experimental support for 16kB pages. > > // MacOS & iOS on arm64 uses 16kB pages. > > // LOONG64 and MIPS64 also use 16kB pages. > > constexpr int kMinimumOSPageSize = 16 * 1024; > > #elif defined(V8_OS_LINUX) && !defined(V8_OS_ANDROID) && \ > > (defined(V8_HOST_ARCH_ARM64) || defined(V8_HOST_ARCH_PPC64)) > > // Linux on arm64 (excluding android) and PPC64 can be configured for up > to 64kB > > // pages. > > constexpr int kMinimumOSPageSize = 64 * 1024; > > #else > > // Everything else uses 4kB pages. > > constexpr int kMinimumOSPageSize = 4 * 1024; > > #endif > > > > Sorry for my ignorance, but does it mean that all Android devices with > arm64-v8a and x86_64 architectures will use a size of 16KB. Is this > correct? I am trying to understand if there are devices with arm64-v8a and > x86_64 architectures which still use 4KB for page sizes. > > > > Thanks, > > Matias. > > > > On Saturday, September 13, 2025 at 7:17:56 AM UTC-4 Ben Noordhuis wrote: > >> > >> Assuming recompiling is not a problem for you: just edit > >> build_config.h and change it to 16k. > >> > >> IIRC, stdout and stderr are not normally hooked up to anything on > >> Android but it should be possible to freopen them to a log file. > >> > >> On Fri, Sep 12, 2025 at 4:15 PM 'Matias Cohen' via v8-users > >> <[email protected]> wrote: > >> > > >> > Thanks Ben. > >> > > >> > Yeah, that’s strange. I also noticed that SetDataReadOnly didn’t > exist in 10.4.132. Moreover, the V8_FATAL exception that is raised was > added even later. Maybe my records about 10.4.132 are wrong, but I am sure > that we built v8 last time in August 2022, so I can’t explain it. > >> > > >> > Android Studio don’t show any error message more than the stacktrace > I already shared. > >> > > >> > My guess is that kMinimumOSPageSize was still 4KB for Android back > then when I built v8 (yet I can’t explain why SetDataReadOnly is part of > the stacktrace). > >> > > >> > Is there any way for me to overwrite kMinimumOSPageSize from > “outside” v8, just to test if that makes a difference? > >> > > >> > Thanks! > >> > > >> > > On Sep 12, 2025, at 5:20 AM, Ben Noordhuis <[email protected]> > wrote: > >> > > > >> > > On Fri, Sep 12, 2025 at 8:26 AM 'Mati Cohen' via v8-users > >> > > <[email protected]> wrote: > >> > >> > >> > >> Hi, > >> > >> > >> > >> My app is using v8 to run a JS environment. Last time I built v8 > was about 3 years ago by pointing to 10.4.132. > >> > >> > >> > >> As per Google policy, my app needs to support 16 KB page size and > I've been checking all my dependencies to meet that criteria. > >> > >> > >> > >> Apparently, based on my checks, my v8 build does support it and I > managed to run the app on my device. > >> > >> However, v8 is crashing as soon as I call V8::Initialize(); with > the following stack trace: > >> > >> > >> > >> /base.apk!liben8.so (offset 0x8ad8000) (v8::base::OS::Abort()+28) > >> > >> /base.apk!liben8.so (offset 0x8ad8000) (V8_Fatal(char const*, > ...)+376) > >> > >> /base.apk!liben8.so (offset 0x8ad8000) > (v8::base::OS::SetDataReadOnly(void*, unsigned long)+52) > >> > >> /base.apk!liben8.so (offset 0x8ad8000) > (v8::internal::V8::Initialize()+1552) > >> > >> /base.apk!liben8.so (offset 0x8ad8000) (v8::V8::Initialize(int)+28) > >> > >> /base.apk!liben8.so (offset 0x8ad8000) > (Runtime::Runtime(_JNIEnv*)+172) > >> > >> > >> > >> As explained at > https://www.google.com/url?q=https://developer.android.com/guide/practices/page-sizes%23check-code&source=gmail-imap&ust=1758273654000000&usg=AOvVaw2eBFhXRa0E0P-iWsikoJCW, > > I was trying to look for references to PAGE_SIZE and 4096 to see if I was > setting up something wrong, but I didn't find anything. > >> > >> > >> > >> Does anyone have any knowledge about this? > >> > >> Thanks a lot, > >> > >> Mati > >> > > > >> > > V8 doesn't use PAGE_SIZE, it uses sysconf(_SC_PAGESIZE). > >> > > > >> > > You mention 10.4.132 but that stack trace is from a different > version, > >> > > isn't it? Because SetDataReadOnly didn't exist back then. > >> > > > >> > > It crashes when trying to mprotect(PROT_READ) the command line > flags, > >> > > v8_flags. v8_flags is aligned to kMinimumOSPageSize and that > _should_ > >> > > be 16k on Android but you'll want to double-check that. It's defined > >> > > in src/base/build_config.h. > >> > > > >> > > What error message did V8 print? > >> > > > >> > > -- > >> > > -- > >> > > v8-users mailing list > >> > > [email protected] > >> > > > https://www.google.com/url?q=http://groups.google.com/group/v8-users&source=gmail-imap&ust=1758273654000000&usg=AOvVaw3Vi2w6FFQXBkM9c-JZXWPp > >> > > --- > >> > > You received this message because you are subscribed to a topic in > the Google Groups "v8-users" group. > >> > > To unsubscribe from this topic, visit > https://www.google.com/url?q=https://groups.google.com/d/topic/v8-users/7XDxoIaXdV4/unsubscribe&source=gmail-imap&ust=1758273654000000&usg=AOvVaw0flrzsS8NN-9t4czOPfrqp > . > >> > > To unsubscribe from this group and all its topics, send an email to > [email protected]. > >> > > To view this discussion visit > https://www.google.com/url?q=https://groups.google.com/d/msgid/v8-users/CAHQurc-SN0whK9Y3U8%253DSEdMPOVJLfhQ7fVPcqUi_kAjDJywGeQ%2540mail.gmail.com&source=gmail-imap&ust=1758273654000000&usg=AOvVaw0W3G7qAhJMvkfEdoop6uqR > . > >> > > >> > -- > >> > -- > >> > v8-users mailing list > >> > [email protected] > >> > http://groups.google.com/group/v8-users > >> > --- > >> > You received this message because you are subscribed to the Google > Groups "v8-users" group. > >> > To unsubscribe from this group and stop receiving emails from it, > send an email to [email protected]. > >> > To view this discussion visit > https://groups.google.com/d/msgid/v8-users/D27EC591-82E7-43AB-B309-D7D01E9B3123%40encircleapp.com > . > > > > -- > > -- > > v8-users mailing list > > [email protected] > > http://groups.google.com/group/v8-users > > --- > > You received this message because you are subscribed to the Google > Groups "v8-users" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to [email protected]. > > To view this discussion visit > https://groups.google.com/d/msgid/v8-users/759c5f1b-0824-4a79-917a-07acab42f7aan%40googlegroups.com > . > -- -- v8-users mailing list [email protected] http://groups.google.com/group/v8-users --- You received this message because you are subscribed to the Google Groups "v8-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/d/msgid/v8-users/41b7bf29-619b-4207-9d93-9030be46708an%40googlegroups.com.
