Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(161)

Issue 1849183004: MIPS32r2: Fix Chromium runtime crash (Closed)

Created:
4 years, 8 months ago by lmilko
Modified:
4 years, 6 months ago
Reviewers:
bsalomon, mtklein, reed1
CC:
reviews_skia.org, gordana.cmiljanovic_imgtec.com, petar.jovanovic
Base URL:
https://chromium.googlesource.com/skia.git@master
Target Ref:
refs/heads/master
Project:
skia
Visibility:
Public.

Description

MIPS32r2: Fix Chromium runtime crash Crash is caused by ldxc1 instruction, which traps when double values are not aligned on 8-byte boundaries. Problem was tracked to SkChunkAlloc which produces pointers aligned on 4-byte boundaries leading to misalignment. This change makes sure that SkChunkAlloc will produce pointers that are aligned to 8 bytes. Appropriate tests are added to tests/MemsetTest.cpp TEST=Build Chromium with Clang and run on MIPS32r2 platform TEST=./out/Debug/dm --match Memset BUG=130022 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1849183004 Committed: https://skia.googlesource.com/skia/+/401e77cfe126eea1a12bd81410871fdb80739283

Patch Set 1 #

Patch Set 2 : Added alignment tests and dox #

Patch Set 3 : Putting back new line #

Patch Set 4 : Changed test #

Total comments: 4

Patch Set 5 : Addressed comments #

Total comments: 2

Patch Set 6 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+47 lines, -14 lines) Patch
M gyp/common_conditions.gypi View 1 1 chunk +11 lines, -7 lines 0 comments Download
M include/core/SkChunkAlloc.h View 1 2 1 chunk +11 lines, -0 lines 0 comments Download
M src/core/SkChunkAlloc.cpp View 1 2 3 4 7 chunks +8 lines, -7 lines 0 comments Download
M tests/MemsetTest.cpp View 1 2 3 4 5 3 chunks +17 lines, -0 lines 0 comments Download

Messages

Total messages: 27 (7 generated)
lmilko
Please take a look
4 years, 8 months ago (2016-04-01 12:45:35 UTC) #3
lmilko
On 2016/04/01 12:45:35, lmilko wrote: > Please take a look ping
4 years, 8 months ago (2016-04-08 11:57:07 UTC) #4
lmilko
+bsalomon Please take a look.
4 years, 8 months ago (2016-04-14 13:19:08 UTC) #6
bsalomon
I'm not very familiar with this code, defer to reed@ or mtklein@
4 years, 8 months ago (2016-04-19 14:43:41 UTC) #8
lmilko
Ping.
4 years, 7 months ago (2016-05-06 15:54:55 UTC) #9
reed1
Seems fine. 1. Can you also augment some of the testing in tests/MemsetTest.cpp to try ...
4 years, 7 months ago (2016-05-06 18:25:36 UTC) #10
lmilko
Comments addressed, please take a look.
4 years, 7 months ago (2016-05-10 11:51:01 UTC) #12
lmilko
On 2016/05/10 11:51:01, lmilko wrote: > Comments addressed, please take a look. PING
4 years, 7 months ago (2016-05-18 09:44:54 UTC) #13
lmilko
On 2016/05/18 09:44:54, lmilko wrote: > On 2016/05/10 11:51:01, lmilko wrote: > > Comments addressed, ...
4 years, 7 months ago (2016-05-25 12:54:08 UTC) #14
reed1
Not sure the unittest for chunkalloc needs to pull in headers from pathops. Shouldn't it ...
4 years, 7 months ago (2016-05-25 14:31:52 UTC) #15
lmilko
PTAL
4 years, 7 months ago (2016-05-26 09:40:03 UTC) #16
lmilko
On 2016/05/26 09:40:03, lmilko wrote: > PTAL @reed Can you please take a look.
4 years, 6 months ago (2016-06-01 07:53:51 UTC) #17
reed1
https://codereview.chromium.org/1849183004/diff/60001/src/core/SkChunkAlloc.cpp File src/core/SkChunkAlloc.cpp (right): https://codereview.chromium.org/1849183004/diff/60001/src/core/SkChunkAlloc.cpp#newcode176 src/core/SkChunkAlloc.cpp:176: return ptr; I think this is the single point ...
4 years, 6 months ago (2016-06-01 13:45:27 UTC) #18
lmilko
Please take a look. https://codereview.chromium.org/1849183004/diff/60001/src/core/SkChunkAlloc.cpp File src/core/SkChunkAlloc.cpp (right): https://codereview.chromium.org/1849183004/diff/60001/src/core/SkChunkAlloc.cpp#newcode176 src/core/SkChunkAlloc.cpp:176: return ptr; On 2016/06/01 13:45:27, ...
4 years, 6 months ago (2016-06-01 14:48:06 UTC) #19
reed1
https://codereview.chromium.org/1849183004/diff/80001/tests/MemsetTest.cpp File tests/MemsetTest.cpp (right): https://codereview.chromium.org/1849183004/diff/80001/tests/MemsetTest.cpp#newcode93 tests/MemsetTest.cpp:93: for (int i = 0; i < 16; i++) ...
4 years, 6 months ago (2016-06-01 14:56:12 UTC) #20
lmilko
https://codereview.chromium.org/1849183004/diff/80001/tests/MemsetTest.cpp File tests/MemsetTest.cpp (right): https://codereview.chromium.org/1849183004/diff/80001/tests/MemsetTest.cpp#newcode93 tests/MemsetTest.cpp:93: for (int i = 0; i < 16; i++) ...
4 years, 6 months ago (2016-06-01 16:43:52 UTC) #21
lmilko
On 2016/06/01 16:43:52, lmilko wrote: > https://codereview.chromium.org/1849183004/diff/80001/tests/MemsetTest.cpp > File tests/MemsetTest.cpp (right): > > https://codereview.chromium.org/1849183004/diff/80001/tests/MemsetTest.cpp#newcode93 > ...
4 years, 6 months ago (2016-06-03 08:25:49 UTC) #22
reed1
lgtm
4 years, 6 months ago (2016-06-03 19:38:02 UTC) #23
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1849183004/100001
4 years, 6 months ago (2016-06-05 20:00:16 UTC) #25
commit-bot: I haz the power
4 years, 6 months ago (2016-06-05 20:14:26 UTC) #27
Message was sent while issue was closed.
Committed patchset #6 (id:100001) as
https://skia.googlesource.com/skia/+/401e77cfe126eea1a12bd81410871fdb80739283

Powered by Google App Engine
This is Rietveld 408576698