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

Re: [PATCH v2 4/4] x86: adjustments to guest handle treatment

Hi Jan,

On 21/04/2020 10:13, Jan Beulich wrote:
First of all avoid excessive conversions. copy_{from,to}_guest(), for
example, work fine with all of XEN_GUEST_HANDLE{,_64,_PARAM}().

- do_physdev_op_compat() didn't use the param form for its parameter,
- {hap,shadow}_track_dirty_vram() wrongly used the param form,
- compat processor Px logic failed to check compatibility of native and
   compat structures not further converted.

As this eliminates all users of guest_handle_from_param() and as there's
no real need to allow for conversions in both directions, drop the
macros as well.

I was kind of expecting both guest_handle_from_param() and guest_handle_to_param() to be dropped together. May I ask why you still need guest_handle_to_param()?


  /* Handler for shadow control ops: operations from user-space to enable
   * and disable ephemeral shadow modes (test mode and log-dirty mode) and
--- a/xen/include/xen/acpi.h
+++ b/xen/include/xen/acpi.h
@@ -184,8 +184,8 @@ static inline unsigned int acpi_get_csub
  static inline void acpi_set_csubstate_limit(unsigned int new_limit) { return; 
-int acpi_set_pdc_bits(u32 acpi_id, XEN_GUEST_HANDLE_PARAM(uint32));
+int acpi_set_pdc_bits(u32 acpi_id, XEN_GUEST_HANDLE(uint32));

Do we really need to keep the #ifdef here?

  int arch_acpi_set_pdc_bits(u32 acpi_id, u32 *, u32 mask);


Julien Grall



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