Re: [PATCH 2/7] x86/hyper-v: fast hypercall implementation

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

 



Vitaly Kuznetsov <vkuznets@xxxxxxxxxx> writes:

> Jork Loeser <Jork.Loeser@xxxxxxxxxxxxx> writes:
>

[snip]

>
>>> +	}
>>> +#else
>>> +	{
>>> +		u32 hv_status_hi, hv_status_lo;
>>> +
>>> +		__asm__ __volatile__ ("call *%6"
>>> +				      : "=d"(hv_status_hi),
>>> +					"=a"(hv_status_lo) :
>>> +					"d" (control.as_uint32_hi),
>>> +					"a" (control.as_uint32_lo),
>>> +					"c" ((u32)input1),
>>> +					"b" ((u32)(input1 >> 32)),
>>> +					"m" (hv_hypercall_pg)
>>> +				      : "cc");
>>> +
>>> +		return hv_status_lo | ((u64)hv_status_hi << 32);
>>> +	}
>>> +#endif
>> Please clobber ECX, EDI and ESI for x86. Clobber memory as well?
>
> ECX is already in listed in inputs (lower part of input1) so it's
> automatically clobbered. I'll add EDI and ESI to clobbers here, thanks!

Oh, I see what you mean - hypervisor is allowed to write to ecx too, we
need to pass it with '+'. Will do, thanks!

-- 
  Vitaly
_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel



[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux