Messages in this thread | | | Date | Thu, 22 Jan 2009 16:14:04 -0800 | From | Jeremy Fitzhardinge <> | Subject | Re: lmbench lat_mmap slowdown with CONFIG_PARAVIRT |
| |
Zachary Amsden wrote: > What about removing the identity functions entirely. They are useless, > really. All that is needed is a patch site filled with nops for Xen to > overwrite, just stuffing the value into the proper registers. For > 64-bit, it can be a simple mov to satisfy the constraints. >
I think it comes to the same thing really. Both end up generating a series of nops with values entering and leaving in well-defined registers. The x86-64 calling convention is a bit awkward because the first arg is in rdi and the ret is rax, so it can't quite be pure nops, or we use a non-standard calling-convention with appropriate thunks to call into C code. I think a mov is a better performance-complexity tradeoff.
>> Also, I just posted patches to get rid of all pvops calls when fetching >> or setting flags in a pte, which I hope will help. >> > > Sounds like it will help. >
...but apparently not.
J
| |