Avoid using SafeCopy on userfaultfd compacted spaces
Userfaultfd doesn't allow faults generating from kernel-space for
unprivileged processes. Therefore, avoid using SafeCopy to fetch
class in fault-handler.
Also add a run-test to cause null-pointer exceptions which exercises
fault-handler.
Bug: 160737021
Test: ART_USE_READ_BARRIER=false art/test/testrunner/testrunner.py -t 2045-uffd-kernelfault
Change-Id: If54bb01d441fab5489289e0ec195896700fac662
(cherry picked from commit f716e21fb87e4fd1c875997cf11882352b9fbab5)
Merged-In: If54bb01d441fab5489289e0ec195896700fac662
7 files changed