WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
NEW
236670
OSAllocatorPosix::tryReserveUncommittedAligned() should not use PROT_NONE on non-linux platforms
https://bugs.webkit.org/show_bug.cgi?id=236670
Summary
OSAllocatorPosix::tryReserveUncommittedAligned() should not use PROT_NONE on ...
Yoshiaki Jitsukawa
Reported
2022-02-15 14:41:04 PST
OSAllocatorPosix::tryReserveUncommittedAligned() should not use PROT_NONE on non-linux platforms. Only on linux PROT_NONE is used for deccommitted pages. That is, protection flags are set on commit() only on Linux.
https://github.com/WebKit/WebKit/blob/9067a50/Source/WTF/wtf/posix/OSAllocatorPOSIX.cpp#L228
However in tryReserveUncommittedAligned() PROT_NONE is used for platforms other than #if PLATFORM(MAC) || USE(APPLE_INTERNAL_SDK), which may result in protection faults because appropriate flags won't be set on commit().
Attachments
Add attachment
proposed patch, testcase, etc.
Basuke Suzuki
Comment 1
2022-02-17 09:25:53 PST
(In reply to Yoshiaki Jitsukawa from
comment #0
)
> OSAllocatorPosix::tryReserveUncommittedAligned() should not use PROT_NONE on > non-linux platforms. > > Only on linux PROT_NONE is used for deccommitted pages. That is, protection > flags are set on commit() only on Linux. >
https://github.com/WebKit/WebKit/blob/9067a50/Source/WTF/wtf/posix/
> OSAllocatorPOSIX.cpp#L228 > > However in tryReserveUncommittedAligned() PROT_NONE is used for platforms > other than > #if PLATFORM(MAC) || USE(APPLE_INTERNAL_SDK), > which may result in protection faults because appropriate flags won't be set > on commit().
Linux implementation is so much depends on Linux memory management way and very different from other port.
Radar WebKit Bug Importer
Comment 2
2022-02-22 14:42:18 PST
<
rdar://problem/89317522
>
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug