[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH for-4.14 v3] mm: fix public declaration of struct xen_mem_acquire_resource
On 26.06.2020 17:39, Roger Pau Monne wrote: > XENMEM_acquire_resource and it's related structure is currently inside > a __XEN__ or __XEN_TOOLS__ guarded section to limit it's scope to the > hypervisor or the toolstack only. This is wrong as the hypercall is > already being used by the Linux kernel at least, and as such needs to > be public. > > Also switch the usage of uint64_aligned_t to plain uint64_t, as > uint64_aligned_t is only to be used by the toolstack. Doing such > change will reduce the size of the structure on 32bit x86 by 4bytes, > since there will be no padding added after the frame_list handle. > > This is fine, as users of the previous layout will allocate 4bytes of > padding that won't be read by Xen, and users of the new layout won't > allocate those, which is also fine since Xen won't try to access them. > > Note that the structure already has compat handling, and such handling > will take care of copying the right size (ie: minus the padding) when > called from a 32bit x86 context. This is true for the compat code both > before and after this patch, since the structures in the memory.h > compat header are subject to a pragma pack(4), which already removed > the trailing padding that would otherwise be introduced by the > alignment of the frame field to 8 bytes. > > Fixes: 3f8f12281dd20 ('x86/mm: add HYPERVISOR_memory_op to acquire guest > resources') > Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx> Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |