-
Notifications
You must be signed in to change notification settings - Fork 1.7k
[libpas] Implement primary support for MTE but disabled #51952
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[libpas] Implement primary support for MTE but disabled #51952
Conversation
|
EWS run on previous version of this PR (hash c50fd4f) |
c50fd4f to
b72d9b4
Compare
|
EWS run on previous version of this PR (hash b72d9b4) |
b72d9b4 to
ee954d3
Compare
|
EWS run on previous version of this PR (hash ee954d3)
|
danlliu
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
r=me
ee954d3 to
ef56726
Compare
|
EWS run on previous version of this PR (hash ef56726) |
ef56726 to
96ceae2
Compare
|
EWS run on current version of this PR (hash 96ceae2)
|
https://bugs.webkit.org/show_bug.cgi?id=299488 rdar://161273712 Reviewed by Daniel Liu As announced on September 9th, the SoCs used in the next generation of iPhones will include support for ARM'S Memory Tagging Extension functionality. As part of Apple's MIE (Memory Integrity Enforcement) feature, libpas should thus implement support for MTE and related memory-safety functionality to ensure that WebKit is up to par with the new memory safety standards set by the rest of the system. In particular, this patch ensures that when possible we allocate memory with backing MTE tag pages and tag allocations made within them prior to returning allocation memory to the caller. Not all memory can be tagged this way: in particular, objects >= 32K and objects which may be referenced via compact pointers cannot be MTE tagged. There are other exceptions as well, depending on process/object-type/platform. It also implements a variety of hardening strategies to further strengthen the feature and prevent certain well-known kinds of attacks. To begin with, we will land this feature disabled behind PAS_USE_OPENSOURCE_MTE. A later patch will enable it in stages. Canonical link: https://commits.webkit.org/301336@main
96ceae2 to
86ccfc6
Compare
|
Committed 301336@main (86ccfc6): https://commits.webkit.org/301336@main Reviewed commits have been landed. Closing PR #51952 and removing active labels. |
86ccfc6
96ceae2
🧪 win-tests