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

Re: [Xen-devel] [PATCH 3/3] x86/HVM: hvmemul_cmpxchg() should also use known_gla()



>>> On 13.11.18 at 11:34, <Paul.Durrant@xxxxxxxxxx> wrote:
>>  -----Original Message-----
>> From: Jan Beulich [mailto:JBeulich@xxxxxxxx]
>> Sent: 13 November 2018 10:15
>> To: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxxx>
>> Cc: Andrew Cooper <Andrew.Cooper3@xxxxxxxxxx>; Paul Durrant
>> <Paul.Durrant@xxxxxxxxxx>; Wei Liu <wei.liu2@xxxxxxxxxx>
>> Subject: [PATCH 3/3] x86/HVM: hvmemul_cmpxchg() should also use
>> known_gla()
>> 
>> To be consistent with the write and rmw cases the mapping approach
>> should not be used when the guest linear address translation is known.
>> This in particular excludes the discard-write case from bypassing the
>> emulation path. This also means that now EFLAGS should actually get
>> properly updated, despite the discarded write portion of the memory
>> access.
>> 
>> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
> 
> Reviewed-by: Paul Durrant <paul.durrant@xxxxxxxxxx>

Thanks.

>> ---
>> Without "make hvmemul_map_linear_addr() honor p2m_ioreq_server" this
>> also helps the p2m_ioreq_server case.
>> 
>> TBD: While hvmemul_do_io() takes care of p2m_ioreq_server, I don't see
>>      it taking care of p2m_is_discard_write() types. Am I overlooking
>>      something?
> 
> If such an access gets to hvmemul_do_io() I would have thought it should 
> fall through to the null_handler case, which will sink the write.

Ah, right - that indeed works without special casing the type(s).

Jan



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

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