[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] linux-2.6.18/x86: replace order-based range checking of M2P table by linear one

>>> On 25.07.11 at 16:19, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> wrote:
> On Mon, Jul 25, 2011 at 11:05:22AM +0100, Jan Beulich wrote:
>> The order-based approach is not only less efficient (requiring a shift
>> and a compare, typical generated code looking like this
>>      mov     eax, [machine_to_phys_order]
>>      mov     ecx, eax
>>      shr     ebx, cl
>>      test    ebx, ebx
>>      jnz     ...
>> whereas a direct check requires just a compare, like in
>>      cmp     ebx, [machine_to_phys_nr]
>>      jae     ...
>> ), but also slightly dangerous in the 32-on-64 case - the element
>> address calculation can wrap if the next power of two boundary is
>> sufficiently far away from the actual upper limit of the table, and
>> hence can result in user space addresses being accessed (with it being
>> unknown what may actually be mapped there).
> You wouldn't have a patch for upstream Linux for this?

I can try to port this over, but it'll take some time until I can get to
this (certainly not before returning from the summit).


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.