On 11/28/22 11:37, Dexuan Cui wrote: >> From: Dave Hansen <dave.hansen@xxxxxxxxx> ... >> How do we know, for instance, that no hypercall using this interface >> will *ever* take the 0x0 physical address as an argument? > > A 0x0 physical address as an argument still works: the 0 is passed > to the hypervisor using GHCI. I believe Hyper-V interprets the 0 as > an error (if the param is needed), and returns an "invalid parameter" > error code to the guest. I don't see any data in the public documentation to support the claim that 0x0 is a special argument for either the input or output GPA parameters. This is despite some actual discussion on things like their alignment requirements[1] and interactions with overlay pages. So, either you are mistaken about that behavior, or it looks like the documentation needs updating. 1. https://learn.microsoft.com/en-us/virtualization/hyper-v-on-windows/tlfs/hypercall-interface