This is an archive of the discontinued LLVM Phabricator instance.

[PowerPC][msan] Update msan to handle changed memory layouts in newer kernels
ClosedPublic

Authored by seurer on Nov 9 2017, 11:53 AM.

Details

Summary

[PowerPC][msan] Update msan to handle changed memory layouts in newer kernels

In more recent Linux kernels (including those with 47 bit VMAs) the layout of
virtual memory for powerpc64 changed causing the memory sanitizer to not
work properly. This patch adjusts a bit mask in the memory sanitizer to work
on the newer kernels while continuing to work on the older ones as well.

This is the non-runtime part of the patch and finishes it. ref: r317802

Tested on several 4.x and 3.x kernel releases.

Diff Detail

Event Timeline

seurer created this revision.Nov 9 2017, 11:53 AM
nemanjai accepted this revision.Nov 22 2017, 6:05 AM

LGTM.
I am far from an expert on this, but the modification seems to make perfect sense. Perhaps @eugenis can have a look as well, but if not, I'd say that we should go ahead with this since:

  • It seems to make perfect sense (and shouldn't affect 46 and 45 bit VMA kernels)
  • You've tested it on multiple kernels
  • It's been up for review for around two weeks
  • This is blocking us from running on 47 bit VMA kernels
This revision is now accepted and ready to land.Nov 22 2017, 6:05 AM
eugenis accepted this revision.Nov 22 2017, 11:22 AM

Sorry I missed this patch.

nemanjai closed this revision.Nov 30 2017, 1:19 AM

It appears to me that this was committed in https://reviews.llvm.org/rL318045.
@seurer If I'm wrong about this, please reopen/commit.