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

Re: [PATCH V2 11/23] xen/ioreq: Move x86's io_completion/io_req fields to struct vcpu




On 20.10.20 13:55, Paul Durrant wrote:

Hi Paul.

Sorry for the late response.

-----Original Message-----
From: Oleksandr Tyshchenko <olekstysh@xxxxxxxxx>
Sent: 15 October 2020 17:44
To: xen-devel@xxxxxxxxxxxxxxxxxxxx
Cc: Oleksandr Tyshchenko <oleksandr_tyshchenko@xxxxxxxx>; Paul Durrant 
<paul@xxxxxxx>; Jan Beulich
<jbeulich@xxxxxxxx>; Andrew Cooper <andrew.cooper3@xxxxxxxxxx>; Roger Pau Monné
<roger.pau@xxxxxxxxxx>; Wei Liu <wl@xxxxxxx>; George Dunlap 
<george.dunlap@xxxxxxxxxx>; Ian Jackson
<iwj@xxxxxxxxxxxxxx>; Julien Grall <julien@xxxxxxx>; Stefano Stabellini 
<sstabellini@xxxxxxxxxx>; Jun
Nakajima <jun.nakajima@xxxxxxxxx>; Kevin Tian <kevin.tian@xxxxxxxxx>; Julien 
Grall
<julien.grall@xxxxxxx>
Subject: [PATCH V2 11/23] xen/ioreq: Move x86's io_completion/io_req fields to 
struct vcpu

From: Oleksandr Tyshchenko <oleksandr_tyshchenko@xxxxxxxx>

The IOREQ is a common feature now and these fields will be used
on Arm as is. Move them to common struct vcpu as a part of new
struct vcpu_io. Also move enum hvm_io_completion to xen/sched.h
and remove "hvm" prefixes.

This patch completely removes layering violation in the common code.

Signed-off-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@xxxxxxxx>
CC: Julien Grall <julien.grall@xxxxxxx>

---
Please note, this is a split/cleanup/hardening of Julien's PoC:
"Add support for Guest IO forwarding to a device emulator"

***
I was thinking that it may be better to place these two fields
into struct vcpu directly (without intermediate "io" struct).
I think, this way the code which operates with these fields
would become cleaner. Another possible option would be either
to rename "io" struct (I failed to think of a better name) or
to drop(replace?) duplicating "io" prefixes from these fields.
Just drop the 'io_' prefix from the field names.

Will drop. This would look like indeed better.


Thank you.


--
Regards,

Oleksandr Tyshchenko




 


Rackspace

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