On 04/07/18 10:16, Jan Beulich wrote: > >> @@ -325,6 +325,13 @@ typedef struct xen_cpuid_leaf { >> } xen_cpuid_leaf_t; >> DEFINE_XEN_GUEST_HANDLE(xen_cpuid_leaf_t); >> >> +typedef struct xen_msr_entry { >> + uint32_t idx; >> + uint32_t flags; /* Reserved MBZ. */ > ... it remains unclear in this patch whose responsibility it is to clear this > field. I wonder whether copy_msr_to_buffer() should make sure of this.
copy_msr_to_buffer() does explicitly zero this field. > + const xen_msr_entry_t ent = { .idx = idx, .val = val }; guarantees that the flags field is 0. FWIW, an earlier version of this series has an AVAILABLE bit specified in the flags field, but attempting to the marshalling code work sensibly is why I eventually decided to write c/s 2df1d2ba132ff "x86/msr: Drop {MISC_ENABLES,PLATFORM_INFO}.available" as an alternative fix for the problem. ~Andrew _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel