On Wed, Jul 02 2025, Magnus Kulke <magnusku...@linux.microsoft.com> wrote:

> On Wed, Jul 02, 2025 at 11:11:41AM +0200, Cornelia Huck wrote:
>> On Tue, Jul 01 2025, Magnus Kulke <magnusku...@linux.microsoft.com> wrote:
>> 
>> > Introduce headers for the Microsoft Hypervisor (MSHV) userspace ABI,
>> > including IOCTLs and structures used to interface with the hypervisor.
>> >
>> > These definitions are based on the upstream Linux MSHV interface and
>> > will be used by the MSHV accelerator backend in later patches.
>> >
>> > Note that for the time being the header `linux-mshv.h` is also being
>> > included to allow building on machines that do not ship the header yet.
>> > The header will be available in kernel 6.15 (at the time of writing
>> > we're at -rc6) we will probably drop it in later revisions of the
>> > patch set.
>> 
>> The right way to handle header updates is to split the linux-header
>> updates into a "dummy" update (that just adds the header) and replace
>> that patch with a proper header update once the changes hit Linux
>> mainline.
>> 
>
> Ah, that's right, the commit message is not accurate any more, I'll change
> it in the next revision. The driver has been released as part of 6.15.
>
> I was following Paolo's advice to include the headers in
> `linux-headers/linux` and add an entry to
> `scripts/update-linux-headers.sh`
>
> https://lists.gnu.org/archive/html/qemu-devel/2025-05/msg04791.html
>
> I might not have completely understood the process though, do you
> suggest to run `update-linux-headers.sh` on a current kernel (the other
> headers seem to be updated from 6.16-rc*, so I assume the latest rc?)
> and include the resulting changes in a seperate commit?

Yes, if you need to use headers imported from Linux, you should add a
separate commit stating the release (rc) you used, and update *all* of
the headers. As you import a new header, I would update the script to
add the header in the same commit.

>
>> I have not looked at the contents of the series otherwise -- but if this
>> is a system header (and not something that defines the kernel<->vmm
>> interface), how do you make sure that your system has that installed?
>> Maybe I'm misunderstanding.
>> 
>
> The kernel header does define the ioctls and ABI for the driver, albeit not
> completely, some hyperv-specific types and defines are shipped as seperate
> `include/hw/hyperv` header files.

I would have hoped that the Linux header would be more complete, but we
have to work with what we get.


Reply via email to