WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
NEW
196959
DOMMatrixReadOnly and WebKitCSSMatrix should have padding to make TransformationMatrix 16byte aligned
https://bugs.webkit.org/show_bug.cgi?id=196959
Summary
DOMMatrixReadOnly and WebKitCSSMatrix should have padding to make Transformat...
Yusuke Suzuki
Reported
2019-04-15 23:37:56 PDT
This issue is found in IsoHeap extension patch[1]. [1]:
https://bugs.webkit.org/show_bug.cgi?id=196837
Attachments
Patch
(45.63 KB, patch)
2019-04-16 00:21 PDT
,
Yusuke Suzuki
no flags
Details
Formatted Diff
Diff
Patch
(45.63 KB, patch)
2019-04-16 00:24 PDT
,
Yusuke Suzuki
no flags
Details
Formatted Diff
Diff
Patch
(51.70 KB, patch)
2019-04-16 01:27 PDT
,
Yusuke Suzuki
no flags
Details
Formatted Diff
Diff
Patch
(51.94 KB, patch)
2019-04-16 01:34 PDT
,
Yusuke Suzuki
no flags
Details
Formatted Diff
Diff
Patch
(51.91 KB, patch)
2019-04-16 01:37 PDT
,
Yusuke Suzuki
ews-watchlist
: commit-queue-
Details
Formatted Diff
Diff
Archive of layout-test-results from ews202 for win-future
(12.95 MB, application/zip)
2019-04-16 06:30 PDT
,
EWS Watchlist
no flags
Details
Show Obsolete
(4)
View All
Add attachment
proposed patch, testcase, etc.
Yusuke Suzuki
Comment 1
2019-04-15 23:53:41 PDT
Related to IsoHeap.
Yusuke Suzuki
Comment 2
2019-04-16 00:21:15 PDT
Created
attachment 367505
[details]
Patch
Yusuke Suzuki
Comment 3
2019-04-16 00:24:27 PDT
Created
attachment 367506
[details]
Patch
Yusuke Suzuki
Comment 4
2019-04-16 00:26:39 PDT
Comment on
attachment 367506
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=367506&action=review
> Source/WebCore/css/DOMMatrixReadOnly.h:152 > + std::aligned_storage<sizeof(TransformationMatrix), 8>::type m_storage;
aligned_storage just adds alignment information, not adding appropriate padding. So we need to have a padding manually.
https://en.cppreference.com/w/cpp/types/aligned_storage
Typical aligned_storage implementation. ``` template<std::size_t Len, std::size_t Align /* default alignment not implemented */> struct aligned_storage { struct type { alignas(Align) unsigned char data[Len]; }; }; ```
Yusuke Suzuki
Comment 5
2019-04-16 00:43:10 PDT
Let's extract this storage part as PaddedAlignedStorage.
Yusuke Suzuki
Comment 6
2019-04-16 01:27:45 PDT
Created
attachment 367512
[details]
Patch
Yusuke Suzuki
Comment 7
2019-04-16 01:34:25 PDT
Created
attachment 367513
[details]
Patch
Yusuke Suzuki
Comment 8
2019-04-16 01:35:48 PDT
The patch becomes not so much related to bmalloc. Remove bmalloc keyword.
Yusuke Suzuki
Comment 9
2019-04-16 01:37:14 PDT
Created
attachment 367514
[details]
Patch
Yusuke Suzuki
Comment 10
2019-04-16 01:39:07 PDT
Comment on
attachment 367514
[details]
Patch Still considering
EWS Watchlist
Comment 11
2019-04-16 06:30:30 PDT
Comment on
attachment 367514
[details]
Patch
Attachment 367514
[details]
did not pass win-ews (win): Output:
https://webkit-queues.webkit.org/results/11885059
New failing tests: js/dom/custom-constructors.html
EWS Watchlist
Comment 12
2019-04-16 06:30:41 PDT
Created
attachment 367532
[details]
Archive of layout-test-results from ews202 for win-future The attached test failures were seen while running run-webkit-tests on the win-ews. Bot: ews202 Port: win-future Platform: CYGWIN_NT-6.1-2.10.0-0.325-5-3-x86_64-64bit
Ahmad Saleem
Comment 13
2022-08-19 09:42:50 PDT
This patch was adding new WTF - PaddedAlignedStorage.h Also modifying this, which is not modified:
https://github.com/WebKit/WebKit/blob/64f843f962fd4b62b95fb3c3c53127b6f526fbcd/Source/WTF/wtf/StdLibExtras.h#L89
https://github.com/WebKit/WebKit/blob/64f843f962fd4b62b95fb3c3c53127b6f526fbcd/Source/WTF/wtf/StdLibExtras.h#L107
In DOMMatrix.cpp, it is still referring old (some examples below):
https://github.com/WebKit/WebKit/blob/edb309e77f7aa09b0799c4508214dbbf75ae0117/Source/WebCore/css/DOMMatrix.cpp#L142
https://github.com/WebKit/WebKit/blob/edb309e77f7aa09b0799c4508214dbbf75ae0117/Source/WebCore/css/DOMMatrix.cpp#L129
https://github.com/WebKit/WebKit/blob/edb309e77f7aa09b0799c4508214dbbf75ae0117/Source/WebCore/css/DOMMatrix.cpp#L151
_________
rniwa@webkit.org
- These above are just few examples, is this needed anymore? Thanks!
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