... or so I hope. This series continues the attempt to deal with the ovmf change putting the shared info page at a very high address (which is now planned to get reverted there, but the general problem doesn't go away by them doing so). There are further issues with truncated value, which are being dealt with here. But there are also not directly related changes, when I simply spotted things that aren't very likely to be right the way they are. And then there are also adjustments to the underlying hypervisor implementation, with the goal of making the returned data more useful to the consumers.
With these changes in place, a 1Gb guest which has "inflated" itself by putting a page right below the 16Tb boundary migrates successfully, albeit the process takes from some 20 minutes to over half an hour on my test system. In v2, besides integrating 2 patches that were previously sent, there's one new patch and otherwise review feedback addressed (albeit there wasn't any for a number of patches). 01: libxl/x86: check return value of SHADOW_OP_SET_ALLOCATION domctl 02: libxc: split xc_logdirty_control() from xc_shadow_control() 03: libxenguest: deal with log-dirty op stats overflow 04: libxenguest: short-circuit "all-dirty" handling 05: libxenguest: avoid allocating unused deferred-pages bitmap 06: libxenguest: complete loops in xc_map_domain_meminfo() 07: libxenguest: guard against overflow from too large p2m when checkpointing 08: libxenguest: fix off-by-1 in colo-secondary-bitmap merging 09: libxenguest: restrict PV guest size 10: libxc: simplify HYPERCALL_BUFFER() 11: x86/paging: supply more useful log-dirty page count 12: x86/mm: update log-dirty bitmap when manipulating P2M 13: SUPPORT.md: write down restriction of 32-bit tool stacks Jan