Re: [PATCH 12/15] hyperv: move VMBus connection ids to uapi

From: Stephen Hemminger
Date: Mon Jan 02 2017 - 14:40:45 EST


On Wed, 28 Dec 2016 20:09:44 +0300
Roman Kagan <rkagan@xxxxxxxxxxxxx> wrote:

> On Wed, Dec 21, 2016 at 07:54:11PM +0000, KY Srinivasan wrote:
> >
> >
> > > -----Original Message-----
> > > From: Stephen Hemminger [mailto:stephen@xxxxxxxxxxxxxxxxxx]
> > > Sent: Wednesday, December 21, 2016 10:03 AM
> > > To: Christoph Hellwig <hch@xxxxxxxxxxxxx>
> > > Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>; Roman Kagan
> > > <rkagan@xxxxxxxxxxxxx>; Radim KrÄmÃÅ <rkrcmar@xxxxxxxxxx>; KY
> > > Srinivasan <kys@xxxxxxxxxxxxx>; Vitaly Kuznetsov
> > > <vkuznets@xxxxxxxxxx>; kvm@xxxxxxxxxxxxxxx; Denis V . Lunev
> > > <den@xxxxxxxxxx>; Haiyang Zhang <haiyangz@xxxxxxxxxxxxx>;
> > > x86@xxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Ingo Molnar
> > > <mingo@xxxxxxxxxx>; H. Peter Anvin <hpa@xxxxxxxxx>;
> > > devel@xxxxxxxxxxxxxxxxxxxxxx; Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> > > Subject: Re: [PATCH 12/15] hyperv: move VMBus connection ids to uapi
> > >
> > > On Wed, 21 Dec 2016 09:58:36 -0800
> > > Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote:
> > >
> > > > On Wed, Dec 21, 2016 at 09:50:49AM -0800, Stephen Hemminger wrote:
> > > > > Lastly, there is licensing issues on headers. It would be good to have any
> > > > > userspace ABI headers licensed with a more liberal license so that BSD
> > > and DPDK drivers
> > > > > could use them directly. Right now each one reinvents.
> > > >
> > > > Microsoft could easily solves this problem by offering a suitably
> > > > liberally licensed header documenting the full HyperV guest protocol
> > > > that Linux and other projects could use.
> > >
> > > The issue is if same header file mixes kernel and userspace API stuff.
> > >
> > > Once the files are arranged right, I will submit trivial change to comments
> > > to indicate the liberal licensing of userspace API headers.
> >
> > Let us take this one step at a time. I know for a fact that not all the guest host
> > protocols on Hyper-V are guaranteed to be stable. Some of the protocols are part of
> > the published MSFT standards such RNDIS and these obviously are guaranteed to be
> > stable. For the rest it is less clear. The fact that we need to ensure compatibility of existing
> > Windows guests tells me that any host side changes will be versioned and the hosts will always
> > support older guests.
> >
> > I would like to minimize what we include in the uapi header; especially when MSFT has made no guarantees
> > with regards how they may be evolved. I will also work on getting some clarity on both stability and
> > under what license we would expose the uapi header.
>
> Am I correct assuming that QEMU is currently the only user of
> arch/x86/include/uapi/asm/hyperv.h?
>
> Then I think we're fine withdrawing it from uapi as a whole and letting
> QEMU pull it in through its header-harvesting scripts (as does now
> anyway). This would lift all licensing and longterm API stability
> expectations.
>
> Roman.

Thanks, that prevents lots of problems.
That is how I handle iproute2 as well.