From: Wei Liu <wei.liu@kernel.org>
To: Greg KH <gregkh@linuxfoundation.org>
Cc: Nuno Das Neves <nunodasneves@linux.microsoft.com>,
linux-hyperv@vger.kernel.org, linux-kernel@vger.kernel.org,
x86@kernel.org, linux-arm-kernel@lists.infradead.org,
linux-arch@vger.kernel.org, patches@lists.linux.dev,
mikelley@microsoft.com, kys@microsoft.com, wei.liu@kernel.org,
haiyangz@microsoft.com, decui@microsoft.com,
apais@linux.microsoft.com, Tianyu.Lan@microsoft.com,
ssengar@linux.microsoft.com, mukeshrathor@microsoft.com,
stanislav.kinsburskiy@gmail.com, jinankjain@linux.microsoft.com,
vkuznets@redhat.com, tglx@linutronix.de, mingo@redhat.com,
bp@alien8.de, dave.hansen@linux.intel.com, hpa@zytor.com,
will@kernel.org, catalin.marinas@arm.com
Subject: Re: [PATCH v4 13/15] uapi: hyperv: Add mshv driver headers defining hypervisor ABIs
Date: Sat, 30 Sep 2023 22:01:58 +0000 [thread overview]
Message-ID: <ZRia1uyFfEkSqmXw@liuwe-devbox-debian-v2> (raw)
In-Reply-To: <2023093057-eggplant-reshoot-8513@gregkh>
On Sat, Sep 30, 2023 at 08:09:19AM +0200, Greg KH wrote:
> On Fri, Sep 29, 2023 at 11:01:39AM -0700, Nuno Das Neves wrote:
> > These must be in uapi because they will be used in the mshv ioctl API.
> >
> > Version numbers for each file:
> > hvhdk.h 25212
> > hvhdk_mini.h 25294
> > hvgdk.h 25125
> > hvgdk_mini.h 25294
>
> what are version numbers?
These are internal version numbers for the hypervisor headers. We keep
track of them so that we can detect if there are any breakages in the
ABI, and thus either ask them to be fixed or we come up with ways to
maintain compatibility. People outside of Microsoft don't need to worry
about this. If you don't think this information belongs in the commit
message, we can drop it.
>
> > These are unstable interfaces and as such must be compiled independently
> > from published interfaces found in hyperv-tlfs.h.
>
> uapi files can NOT be unstable, that's the opposite of an api :(
>
You made a few suggestions in the past. Nuno responded here:
https://lore.kernel.org/linux-hyperv/1692309711-5573-1-git-send-email-nunodasneves@linux.microsoft.com/T/#m3dd8035e381a1344acd7f570c3f5921b7415bedb
> > Signed-off-by: Nuno Das Neves <nunodasneves@linux.microsoft.com>
> > Acked-by: Wei Liu <wei.liu@kernel.org>
> > ---
> > include/uapi/hyperv/hvgdk.h | 41 +
> > include/uapi/hyperv/hvgdk_mini.h | 1076 ++++++++++++++++++++++++
> > include/uapi/hyperv/hvhdk.h | 1342 ++++++++++++++++++++++++++++++
> > include/uapi/hyperv/hvhdk_mini.h | 160 ++++
> > 4 files changed, 2619 insertions(+)
> > create mode 100644 include/uapi/hyperv/hvgdk.h
> > create mode 100644 include/uapi/hyperv/hvgdk_mini.h
> > create mode 100644 include/uapi/hyperv/hvhdk.h
> > create mode 100644 include/uapi/hyperv/hvhdk_mini.h
> >
> > diff --git a/include/uapi/hyperv/hvgdk.h b/include/uapi/hyperv/hvgdk.h
> > new file mode 100644
> > index 000000000000..9bcbb7d902b2
> > --- /dev/null
> > +++ b/include/uapi/hyperv/hvgdk.h
> > @@ -0,0 +1,41 @@
> > +/* SPDX-License-Identifier: MIT */
>
> That's usually not a good license for a new uapi .h file, why did you
> choose this one?
>
This is chosen so that other Microsoft developers who don't normally
work on Linux can review this code.
> > +/* Define connection identifier type. */
> > +union hv_connection_id {
> > + __u32 asu32;
> > + struct {
> > + __u32 id:24;
> > + __u32 reserved:8;
> > + } __packed u;
>
> bitfields will not work properly in uapi .h files, please never do that.
Can you clarify a bit more why it wouldn't work? Endianess? Alignment?
Or something else?
Just by eyeballing the header files under include/uapi, there are a
non-trivial number of files that use bitfields.
include/uapi/linux/cdrom.h
include/uapi/linux/hdreg.h
include/uapi/linux/if_pppox.h
include/uapi/linux/adfs_fs.h
include/uapi/linux/atm.h
include/uapi/linux/batadv_packet.h
include/uapi/linux/bpf.h
include/uapi/linux/cciss_defs.h
include/uapi/linux/dccp.h
include/uapi/linux/erspan.h
include/uapi/linux/i2o-dev.h
include/uapi/linux/icmp.h
include/uapi/linux/icmpv6.h
include/uapi/linux/idxd.h
include/uapi/linux/if_hippi.h
include/uapi/linux/igmp.h
include/uapi/linux/inet_diag.h
include/uapi/linux/ioam6.h
include/uapi/linux/ip.h
include/uapi/linux/netfilter/xt_policy.h
include/uapi/linux/perf_event.h
include/uapi/linux/rpl.h
include/uapi/linux/tcp.h
include/uapi/linux/usb/raw_gadget.h
include/uapi/linux/watch_queue.h
include/uapi/scsi/scsi_bsg_ufs.h
include/uapi/sound/asound.h
include/uapi/sound/skl-tplg-interface.h
Also under arch/x86/include/uapi/asm:
arch/x86/include/uapi/asm/kvm.h
Can you help us understand how we can make our code work like the others
listed above? There must be a way since they are all in the tree. We're
happy to make adjustments.
Thanks,
Wei.
>
> thanks,
>
> greg k-h
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2023-09-30 22:02 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-29 18:01 [PATCH v4 00/15] Introduce /dev/mshv drivers Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 01/15] hyperv-tlfs: Change shared HV_REGISTER_* defines to HV_MSR_* Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 02/15] mshyperv: Introduce hv_get_hypervisor_version function Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 03/15] mshyperv: Introduce numa_node_to_proximity_domain_info Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 04/15] asm-generic/mshyperv: Introduce hv_recommend_using_aeoi() Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 05/15] hyperv: Move hv_connection_id to hyperv-tlfs Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 06/15] hyperv-tlfs: Introduce hv_status_to_string and hv_status_to_errno Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 07/15] Drivers: hv: Move hv_call_deposit_pages and hv_call_create_vp to common code Nuno Das Neves
2023-10-03 2:51 ` kernel test robot
2023-09-29 18:01 ` [PATCH v4 08/15] Drivers: hv: Introduce per-cpu event ring tail Nuno Das Neves
2023-09-30 11:26 ` kernel test robot
2023-09-29 18:01 ` [PATCH v4 09/15] Drivers: hv: Introduce hv_output_arg_exists in hv_common.c Nuno Das Neves
2023-10-02 19:29 ` Alex Ionescu
2023-10-04 18:27 ` Nuno Das Neves
2023-10-06 18:13 ` Long Li
2023-09-29 18:01 ` [PATCH v4 10/15] x86: hyperv: Add mshv_handler irq handler and setup function Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 11/15] Drivers: hv: export vmbus_isr, hv_context and hv_post_message Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 12/15] Documentation: Reserve ioctl number for mshv driver Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 13/15] uapi: hyperv: Add mshv driver headers defining hypervisor ABIs Nuno Das Neves
2023-09-30 6:09 ` Greg KH
2023-09-30 22:01 ` Wei Liu [this message]
2023-10-01 6:19 ` Greg KH
2023-10-03 23:29 ` Wei Liu
2023-10-04 6:11 ` Greg KH
2023-10-04 18:14 ` Wei Liu
2023-10-05 3:59 ` Wei Liu
2023-10-03 23:37 ` Nuno Das Neves
2023-10-04 6:09 ` Greg KH
2023-10-04 17:36 ` Dexuan Cui
2023-10-04 17:50 ` Greg KH
2023-10-04 18:16 ` Nuno Das Neves
2023-10-05 6:26 ` Greg KH
2023-09-30 16:33 ` kernel test robot
2023-10-05 10:27 ` Greg KH
2023-09-29 18:01 ` [PATCH v4 14/15] asm-generic: hyperv: Use new Hyper-V headers conditionally Nuno Das Neves
2023-10-02 19:35 ` Alex Ionescu
2023-10-03 0:41 ` Nuno Das Neves
2023-10-05 19:52 ` Alex Ionescu
2023-10-11 23:32 ` Nuno Das Neves
[not found] ` <1696010501-24584-16-git-send-email-nunodasneves@linux.microsoft.com>
2023-09-30 6:02 ` [PATCH v4 15/15] Drivers: hv: Add modules to expose /dev/mshv to VMMs running on Hyper-V kernel test robot
2023-09-30 6:11 ` Greg KH
2023-09-30 18:11 ` Wei Liu
2023-09-30 18:31 ` Greg KH
2023-09-30 21:13 ` Wei Liu
2023-10-01 6:20 ` Greg KH
2023-10-03 23:35 ` Wei Liu
2023-11-06 4:03 ` kernel test robot
2023-11-06 11:51 ` kernel test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZRia1uyFfEkSqmXw@liuwe-devbox-debian-v2 \
--to=wei.liu@kernel.org \
--cc=Tianyu.Lan@microsoft.com \
--cc=apais@linux.microsoft.com \
--cc=bp@alien8.de \
--cc=catalin.marinas@arm.com \
--cc=dave.hansen@linux.intel.com \
--cc=decui@microsoft.com \
--cc=gregkh@linuxfoundation.org \
--cc=haiyangz@microsoft.com \
--cc=hpa@zytor.com \
--cc=jinankjain@linux.microsoft.com \
--cc=kys@microsoft.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-hyperv@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mikelley@microsoft.com \
--cc=mingo@redhat.com \
--cc=mukeshrathor@microsoft.com \
--cc=nunodasneves@linux.microsoft.com \
--cc=patches@lists.linux.dev \
--cc=ssengar@linux.microsoft.com \
--cc=stanislav.kinsburskiy@gmail.com \
--cc=tglx@linutronix.de \
--cc=vkuznets@redhat.com \
--cc=will@kernel.org \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).