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

Issue 2257323002: Disable CFI on a few src/cc methods for perf reasons. (Closed)

Created:
4 years, 4 months ago by krasin
Modified:
4 years, 3 months ago
Reviewers:
danakj, krasin1
CC:
chromium-reviews, cc-bugs_chromium.org, chrishtr
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Disable CFI on a few src/cc methods for perf reasons. While we have not observed CFI to slowdown real-world use cases, there are a few blink_perf microbenchmarks, which are somewhat affected by the change. This change removes CFI protection from the methods which contribute the most to the slowdown. Eventually, when a proposed optimization in Clang is implemented (https://crbug.com/638056), these attributes would be possible to remove from all/most of the methods. BUG=638056, 634139 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel Committed: https://crrev.com/825ce48757eb1ec0428fe573262614635d25cb7f Cr-Commit-Position: refs/heads/master@{#414916}

Patch Set 1 #

Total comments: 2

Patch Set 2 : sync #

Unified diffs Side-by-side diffs Delta from patch set Stats (+17 lines, -0 lines) Patch
M base/compiler_specific.h View 1 chunk +9 lines, -0 lines 0 comments Download
M cc/base/contiguous_container.h View 1 chunk +1 line, -0 lines 0 comments Download
M cc/blink/web_layer_impl.cc View 1 chunk +1 line, -0 lines 0 comments Download
M cc/playback/display_item_list.cc View 2 chunks +2 lines, -0 lines 0 comments Download
M cc/playback/drawing_display_item.cc View 2 chunks +2 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_host.cc View 1 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 28 (12 generated)
krasin
Hi Dana, please, review this small CL. It turns of Control Flow Integrity checks on ...
4 years, 4 months ago (2016-08-19 00:29:42 UTC) #4
danakj
How would someone adding a new method know whether it should get this attribute or ...
4 years, 4 months ago (2016-08-23 01:39:02 UTC) #5
krasin1
On 2016/08/23 01:39:02, danakj wrote: > How would someone adding a new method know whether ...
4 years, 4 months ago (2016-08-23 02:31:42 UTC) #6
krasin1
Also, if we removed all the methods from the blacklist (added for perf reasons), we'll ...
4 years, 4 months ago (2016-08-23 02:36:43 UTC) #7
krasin1
On 2016/08/23 02:36:43, krasin1 wrote: > Also, if we removed all the methods from the ...
4 years, 4 months ago (2016-08-23 02:37:47 UTC) #8
krasin1
On 2016/08/23 02:37:47, krasin1 wrote: > On 2016/08/23 02:36:43, krasin1 wrote: > > Also, if ...
4 years, 3 months ago (2016-08-26 21:14:56 UTC) #9
danakj
LGTM
4 years, 3 months ago (2016-08-26 22:14:45 UTC) #10
danakj
I guess it's better to have these in the code than in a file if ...
4 years, 3 months ago (2016-08-26 22:16:00 UTC) #11
danakj
https://codereview.chromium.org/2257323002/diff/1/cc/base/contiguous_container.h File cc/base/contiguous_container.h (right): https://codereview.chromium.org/2257323002/diff/1/cc/base/contiguous_container.h#newcode133 cc/base/contiguous_container.h:133: DISABLE_CFI_PERF One question tho I didn't understand, why is ...
4 years, 3 months ago (2016-08-26 22:18:12 UTC) #12
krasin1
I also hope that we only remove these attributes (one by one) instead of adding ...
4 years, 3 months ago (2016-08-26 22:20:01 UTC) #13
krasin1
On 2016/08/26 22:18:12, danakj wrote: > https://codereview.chromium.org/2257323002/diff/1/cc/base/contiguous_container.h > File cc/base/contiguous_container.h (right): > > https://codereview.chromium.org/2257323002/diff/1/cc/base/contiguous_container.h#newcode133 > ...
4 years, 3 months ago (2016-08-26 22:23:31 UTC) #14
krasin1
https://codereview.chromium.org/2257323002/diff/1/cc/base/contiguous_container.h File cc/base/contiguous_container.h (right): https://codereview.chromium.org/2257323002/diff/1/cc/base/contiguous_container.h#newcode133 cc/base/contiguous_container.h:133: DISABLE_CFI_PERF On 2016/08/26 22:18:12, danakj wrote: > One question ...
4 years, 3 months ago (2016-08-26 22:27:42 UTC) #16
danakj
On Fri, Aug 26, 2016 at 3:23 PM, <krasin@chromium.org> wrote: > On 2016/08/26 22:18:12, danakj ...
4 years, 3 months ago (2016-08-26 22:41:41 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2257323002/20001
4 years, 3 months ago (2016-08-26 22:47:31 UTC) #24
commit-bot: I haz the power
Committed patchset #2 (id:20001)
4 years, 3 months ago (2016-08-27 11:01:28 UTC) #26
commit-bot: I haz the power
4 years, 3 months ago (2016-08-27 11:04:21 UTC) #28
Message was sent while issue was closed.
Patchset 2 (id:??) landed as
https://crrev.com/825ce48757eb1ec0428fe573262614635d25cb7f
Cr-Commit-Position: refs/heads/master@{#414916}

Powered by Google App Engine
This is Rietveld 408576698