Re: [patch 13/26] Xen-paravirt_ops: Consistently wrap paravirt ops callsites to make them patchable

Jeremy Fitzhardinge
2007-03-20T01:49:54Z

Zachary Amsden wrote:
> Jeremy Fitzhardinge wrote:
>> If we then work out in each direction and see matched push/pops,
>> then we know what registers can be trashed in the call. This also
>> allows us to determine the callsite size, and therefore how much space
>> we need for inlining.
>>
>
> No, that is a very dangerous suggestion. You absolutely *cannot* do
> this safely without explicitly marking the start EIP of this code.
> You *must* use metadata to do that. It is never safe to disassemble
> backwards or "rewind" EIP for x86 code.

What do you mean the instruction before is "mov $0x52515000,%eax"?

Yeah, you're right. Oh well.

J