On 19.07.2019 17:56, Andrew Cooper wrote: > On 16/07/2019 17:36, Jan Beulich wrote: >> At the same time restrict its scope to just the single source file >> actually using it, and abstract accesses by introducing a union of >> pointers. (A union of the actual table entries is not used to make it >> impossible to [wrongly, once the 128-bit form gets added] perform >> pointer arithmetic / array accesses on derived types.) >> >> Also move away from updating the entries piecemeal: Construct a full new >> entry, and write it out. >> >> Signed-off-by: Jan Beulich <jbeul...@suse.com> > > I'm still not entirely convinced by extra union and containerof(), but > the result looks correct.
And I'm still open to going the other way, if you're convinced that in update_intremap_entry() this struct irte_basic basic = { .flds = { .remap_en = true, .int_type = int_type, .dm = dest_mode, .dest = dest, .vector = vector, } }; (and similarly then for the 128-bit form, and of course .flds inserted at other use sites) is overall better than the current variant. > Acked-by: Andrew Cooper <andrew.coop...@citrix.com> Thanks, Jan _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel