New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 641088 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Last visit > 30 days ago
Closed: Feb 2017
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug



Sign in to add a comment

perf: perf can not handle text in hugepages.

Project Member Reported by yunlian@chromium.org, Aug 25 2016

Issue description

perf could not symbolize text section that are mapped in hugepage.
This could impact the AFDO profile collection process.
 
Summary: perf: perf can not handle text in hugepages. (was: perf: perf could not handle text in hugepages.)
Owner: yunlian@chromium.org
Project Member

Comment 3 by bugdroid1@chromium.org, Aug 28 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/chromite/+/1c8d9ab13cffe4d329ef7c10e581a33b54a60716

commit 1c8d9ab13cffe4d329ef7c10e581a33b54a60716
Author: Yunlian Jiang <yunlian@chromium.org>
Date: Thu Aug 25 20:16:07 2016

Disable hugepages for lumpy-chrome-pfq bot.

We enabled hugepage for chrome text section for better performance.
It turns out perf could not symbolize the symbols in the hugepage.
To get better AFDO profile, we need to disable hugepage for AFDO
profile generation stage.

BUG= chromium:641088 
TEST=the transparent_hugepage use flag is disabled.
     run_test inside cbuildbot directory passes.
Change-Id: I981bc5f7f74a6451ef1e7e30317a9b73072756f8
Reviewed-on: https://chromium-review.googlesource.com/376158
Commit-Ready: Luis Lozano <llozano@chromium.org>
Tested-by: Luis Lozano <llozano@chromium.org>
Tested-by: Yunlian Jiang <yunlian@chromium.org>
Reviewed-by: Luis Lozano <llozano@chromium.org>

[modify] https://crrev.com/1c8d9ab13cffe4d329ef7c10e581a33b54a60716/cbuildbot/config_dump.json
[modify] https://crrev.com/1c8d9ab13cffe4d329ef7c10e581a33b54a60716/cbuildbot/chromeos_config.py

Project Member

Comment 4 by bugdroid1@chromium.org, Dec 29 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/chromite/+/dd065cce19c447acff7d571eb47dc46233273052

commit dd065cce19c447acff7d571eb47dc46233273052
Author: Ting-Yuan Huang <laszio@chromium.org>
Date: Wed Dec 28 22:36:32 2016

samus-pre-flight-branch: disable hugepage when profiling

AutoFDO doesn't work well with perf.data collected on hugepage
enabled processes.

BUG= chromium:641088 
TEST=chromeos_config_unittest

Change-Id: Ifb52fadf53e6bf40883fe5ab30fe1615e28cfbc7
Reviewed-on: https://chromium-review.googlesource.com/424189
Commit-Ready: Ting-Yuan Huang <laszio@chromium.org>
Tested-by: Ting-Yuan Huang <laszio@chromium.org>
Reviewed-by: Yunlian Jiang <yunlian@chromium.org>

[modify] https://crrev.com/dd065cce19c447acff7d571eb47dc46233273052/cbuildbot/config_dump.json
[modify] https://crrev.com/dd065cce19c447acff7d571eb47dc46233273052/cbuildbot/chromeos_config.py

Labels: Merge-Request-56

Comment 7 by dimu@chromium.org, Jan 3 2017

Labels: -Merge-Request-56 Merge-Approved-56 Hotlist-Merge-Approved
Your change meets the bar and is auto-approved for M56 (branch: 2924)
Project Member

Comment 8 by sheriffbot@chromium.org, Jan 9 2017

This issue has been approved for a merge. Please merge the fix to any appropriate branches as soon as possible!

If all merges have been completed, please remove any remaining Merge-Approved labels from this issue.

Thanks for your time! To disable nags, add the Disable-Nags label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Project Member

Comment 9 by bugdroid1@chromium.org, Jan 10 2017

Labels: merge-merged-release-R56-9000.B
The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/chromite/+/aafbba163f9f9fa880606e27268637d08a6a1e10

commit aafbba163f9f9fa880606e27268637d08a6a1e10
Author: Ting-Yuan Huang <laszio@chromium.org>
Date: Wed Dec 28 22:36:32 2016

samus-pre-flight-branch: disable hugepage when profiling

AutoFDO doesn't work well with perf.data collected on hugepage
enabled processes.

BUG= chromium:641088 
TEST=chromeos_config_unittest

Change-Id: Ifb52fadf53e6bf40883fe5ab30fe1615e28cfbc7
Reviewed-on: https://chromium-review.googlesource.com/424189
Commit-Ready: Ting-Yuan Huang <laszio@chromium.org>
Tested-by: Ting-Yuan Huang <laszio@chromium.org>
Reviewed-by: Yunlian Jiang <yunlian@chromium.org>
(cherry picked from commit dd065cce19c447acff7d571eb47dc46233273052)
Reviewed-on: https://chromium-review.googlesource.com/424613
Reviewed-by: Ting-Yuan Huang <laszio@chromium.org>
Commit-Queue: Ting-Yuan Huang <laszio@chromium.org>
Trybot-Ready: Ting-Yuan Huang <laszio@chromium.org>

[modify] https://crrev.com/aafbba163f9f9fa880606e27268637d08a6a1e10/cbuildbot/config_dump.json
[modify] https://crrev.com/aafbba163f9f9fa880606e27268637d08a6a1e10/cbuildbot/chromeos_config.py

Labels: -Hotlist-Merge-Approved -Merge-Approved-56
Merged to release-R56-9000.B

Removing *-Approved-*
Project Member

Comment 11 by bugdroid1@chromium.org, Feb 10 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/c61574a58a4761246eb0234868d18461315e7eaa

commit c61574a58a4761246eb0234868d18461315e7eaa
Author: Yunlian Jiang <yunlian@google.com>
Date: Fri Feb 10 04:48:48 2017

perf: fix hugepage text section problem.

ChromeOS' hugepage implementation replaces some segments
with anonymous private pages, which is a restriction of current
implementation in Linux kernel at the time of writing. Thus, perf
can no longer symbolize addresses from those text segments replaced by
hugepages.

This patch tries to recover the mappings. Because hugepages are always
inserted in between some .text sections, it tries to infer the names and
offsets of the segments, by looking at segments immediately precede and
succeed them.

For example, a text segment before hugepage optimization
  02001000-03002000 r-xp /opt/google/chrome/chrome

can be broken into
  02001000-02200000 r-xp /opt/google/chrome/chrome
  02200000-03000000 r-xp
  03000000-03002000 r-xp /opt/google/chrome/chrome

BUG= chromium:641088 
TEST=the mmap from perf report adds the hugepage chrome text section
     to chrome binary

Change-Id: I4e84d33a14d4bf2b75ca6ba0f1bb0ddc8a9447eb
Reviewed-on: https://chromium-review.googlesource.com/390488
Commit-Ready: Yunlian Jiang <yunlian@chromium.org>
Tested-by: Yunlian Jiang <yunlian@chromium.org>
Reviewed-by: Sonny Rao <sonnyrao@chromium.org>

[rename] https://crrev.com/c61574a58a4761246eb0234868d18461315e7eaa/dev-util/perf/perf-3.18-r3.ebuild
[modify] https://crrev.com/c61574a58a4761246eb0234868d18461315e7eaa/dev-util/perf/perf-3.18.ebuild
[add] https://crrev.com/c61574a58a4761246eb0234868d18461315e7eaa/dev-util/perf/files/3.18-Fix-hugepage-text.patch

Status: Fixed (was: Started)
Status: Verified (was: Fixed)

Sign in to add a comment