Separate kernel/non-kernel addresses in quipper space

Kernel objects are mapped to a quipper space separate from that of the
non-kernel objects.  However this presents a problem when reconstructing
the perf events from mapped addresses.  Samples in the kernel cannot
always be identified by a pid as they might have the pid of a non-kernel
process that is calling into the kernel.

This patch arranges the addresses so that kernel addresses are
distinguishable from non-kernel addresses even when mapped to quipper
space.

BUG=none
TEST=unit tests pass

Change-Id: I50f08e81d063fed9ecc2899eed88db04d28d253e
Signed-off-by: Simon Que <[email protected]>
Reviewed-on: https://gerrit.chromium.org/gerrit/46938
Reviewed-by: Bhaskar Janakiraman <[email protected]>
Reviewed-on: https://gerrit.chromium.org/gerrit/47697
4 files changed