Messages in this thread | | | Date | Mon, 18 May 2015 16:06:47 -0700 | From | Dave Hansen <> | Subject | Re: [PATCH 09/19] x86, mpx: trace entry to bounds exception paths |
| |
On 05/18/2015 01:58 PM, Thomas Gleixner wrote: > On Fri, 8 May 2015, Dave Hansen wrote: >> > This patch adds a trace point for the case where we are >> > passing the exception up to userspace with a signal. >> > >> > We are also explicit that we're printing out the inverse of >> > the 'upper' that we encounter. If you want to filter, for >> > instance, you need to ~ the value first. > Confused. What is the point of printing the complement of upper?
If a pointer's range is
0x1000 -> 0x2000
it is stored in the bounds table as (32-bits here for brevity):
lower: 0x00001000 upper: 0xffffdfff
That is so that an all 0's entry:
lower: 0x00000000 upper: 0x00000000
corresponds to the "init" bounds which store a *range* of:
0x00000000 -> 0xffffffff
The 'upper' stored in the table is gibberish to print by itself, so we print ~upper to get the *actual*, logical value.
| |