All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Arnd Bergmann <arnd@arndb.de>
Cc: Christoph Hellwig <hch@infradead.org>,
	linux-arch <linux-arch@vger.kernel.org>,
	Masahiro Yamada <masahiroy@kernel.org>,
	Linux Kbuild mailing list <linux-kbuild@vger.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	virtualization list <virtualization@lists.linux-foundation.org>
Subject: Re: [PATCH 8/8] virtio_ring.h: do not include <stdint.h> from exported header
Date: Tue, 5 Apr 2022 07:57:21 -0400	[thread overview]
Message-ID: <20220405075627-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <CAK8P3a0FjfSyUtv9a9dM7ixsK2oY9VF7WZPvDctn2JRi7A0YyQ@mail.gmail.com>

On Tue, Apr 05, 2022 at 08:29:36AM +0200, Arnd Bergmann wrote:
> On Tue, Apr 5, 2022 at 7:35 AM Christoph Hellwig <hch@infradead.org> wrote:
> >
> > On Mon, Apr 04, 2022 at 10:04:02AM +0200, Arnd Bergmann wrote:
> > > The header is shared between kernel and other projects using virtio, such as
> > > qemu and any boot loaders booting from virtio devices. It's not technically a
> > > /kernel/ ABI, but it is an ABI and for practical reasons the kernel version is
> > > maintained as the master copy if I understand it correctly.
> >
> > Besides that fact that as you correctly states these are not a UAPI at
> > all, qemu and bootloades are not specific to Linux and can't require a
> > specific kernel version.  So the same thing we do for file system
> > formats or network protocols applies here:  just copy the damn header.
> > And as stated above any reasonably portable userspace needs to have a
> > copy anyway.
> 
> I think the users all have their own copies, at least the ones I could
> find on codesearch.debian.org.

kvmtool does not seem to have its own copy, just grep vring_init.

> However, there are 27 virtio_*.h
> files in include/uapi/linux that probably should stay together for
> the purpose of defining the virtio protocol, and some others might
> be uapi relevant.
> 
> I see that at least include/uapi/linux/vhost.h has ioctl() definitions
> in it, and includes the virtio_ring.h header indirectly.
> 
> Adding the virtio maintainers to Cc to see if they can provide
> more background on this.
> 
> > If it is just as a "master copy" it can live in drivers/virtio/, just
> > like we do for other formats.
> 
> It has to be in include/linux/ at least because it's used by a number
> of drivers outside of drivers/virtio/.
> 
>         Arnd
> _______________________________________________
> Virtualization mailing list
> Virtualization@lists.linux-foundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/virtualization
> 


WARNING: multiple messages have this Message-ID (diff)
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Arnd Bergmann <arnd@arndb.de>
Cc: linux-arch <linux-arch@vger.kernel.org>,
	Linux Kbuild mailing list <linux-kbuild@vger.kernel.org>,
	Masahiro Yamada <masahiroy@kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	virtualization list <virtualization@lists.linux-foundation.org>,
	Christoph Hellwig <hch@infradead.org>
Subject: Re: [PATCH 8/8] virtio_ring.h: do not include <stdint.h> from exported header
Date: Tue, 5 Apr 2022 07:57:21 -0400	[thread overview]
Message-ID: <20220405075627-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <CAK8P3a0FjfSyUtv9a9dM7ixsK2oY9VF7WZPvDctn2JRi7A0YyQ@mail.gmail.com>

On Tue, Apr 05, 2022 at 08:29:36AM +0200, Arnd Bergmann wrote:
> On Tue, Apr 5, 2022 at 7:35 AM Christoph Hellwig <hch@infradead.org> wrote:
> >
> > On Mon, Apr 04, 2022 at 10:04:02AM +0200, Arnd Bergmann wrote:
> > > The header is shared between kernel and other projects using virtio, such as
> > > qemu and any boot loaders booting from virtio devices. It's not technically a
> > > /kernel/ ABI, but it is an ABI and for practical reasons the kernel version is
> > > maintained as the master copy if I understand it correctly.
> >
> > Besides that fact that as you correctly states these are not a UAPI at
> > all, qemu and bootloades are not specific to Linux and can't require a
> > specific kernel version.  So the same thing we do for file system
> > formats or network protocols applies here:  just copy the damn header.
> > And as stated above any reasonably portable userspace needs to have a
> > copy anyway.
> 
> I think the users all have their own copies, at least the ones I could
> find on codesearch.debian.org.

kvmtool does not seem to have its own copy, just grep vring_init.

> However, there are 27 virtio_*.h
> files in include/uapi/linux that probably should stay together for
> the purpose of defining the virtio protocol, and some others might
> be uapi relevant.
> 
> I see that at least include/uapi/linux/vhost.h has ioctl() definitions
> in it, and includes the virtio_ring.h header indirectly.
> 
> Adding the virtio maintainers to Cc to see if they can provide
> more background on this.
> 
> > If it is just as a "master copy" it can live in drivers/virtio/, just
> > like we do for other formats.
> 
> It has to be in include/linux/ at least because it's used by a number
> of drivers outside of drivers/virtio/.
> 
>         Arnd
> _______________________________________________
> Virtualization mailing list
> Virtualization@lists.linux-foundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/virtualization
> 

_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

  parent reply	other threads:[~2022-04-05 13:32 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-04  6:19 [PATCH 0/8] UAPI: make more exported headers self-contained, and put them into test coverage Masahiro Yamada
2022-04-04  6:19 ` [PATCH 1/8] agpgart.h: do not include <stdlib.h> from exported header Masahiro Yamada
2022-04-04  7:40   ` Christoph Hellwig
2022-04-04 17:27   ` Nick Desaulniers
2022-04-04  6:19 ` [PATCH 2/8] kbuild: prevent exported headers from including <stdlib.h>, <stdbool.h> Masahiro Yamada
2022-04-04  7:41   ` Christoph Hellwig
2022-04-04  8:01     ` Arnd Bergmann
2022-04-04  8:03     ` Masahiro Yamada
2022-04-04 17:34     ` Nick Desaulniers
2022-04-05  1:12       ` Masahiro Yamada
2022-04-04  6:19 ` [PATCH 3/8] riscv: add linux/bpf_perf_event.h to UAPI compile-test coverage Masahiro Yamada
2022-04-04  7:41   ` Christoph Hellwig
2022-04-04  6:19 ` [PATCH 4/8] mips: add asm/stat.h " Masahiro Yamada
2022-04-04  7:42   ` Christoph Hellwig
2022-04-04  6:19 ` [PATCH 5/8] powerpc: " Masahiro Yamada
2022-04-04  7:42   ` Christoph Hellwig
2022-04-04  6:19 ` [PATCH 6/8] sparc: " Masahiro Yamada
2022-04-04  7:43   ` Christoph Hellwig
2022-04-04  6:19 ` [PATCH 7/8] posix_types.h: add __kernel_uintptr_t to UAPI posix_types.h Masahiro Yamada
2022-04-04 11:30   ` kernel test robot
2022-04-04 11:51     ` Masahiro Yamada
2022-04-04 11:51       ` Masahiro Yamada
2022-04-04 12:02       ` Masahiro Yamada
2022-04-04 12:02         ` Masahiro Yamada
2022-04-04 11:51   ` kernel test robot
2022-04-04 13:04   ` kernel test robot
2022-04-04  6:19 ` [PATCH 8/8] virtio_ring.h: do not include <stdint.h> from exported header Masahiro Yamada
2022-04-04  7:44   ` Christoph Hellwig
2022-04-04  7:58     ` Masahiro Yamada
2022-04-04  8:04     ` Arnd Bergmann
2022-04-05  5:35       ` Christoph Hellwig
2022-04-05  6:29         ` Arnd Bergmann
2022-04-05  6:29           ` Arnd Bergmann
2022-04-05  7:01           ` Christoph Hellwig
2022-04-05  7:01             ` Christoph Hellwig
2022-04-05 11:55             ` Michael S. Tsirkin
2022-04-05 11:55               ` Michael S. Tsirkin
2022-04-05 11:57           ` Michael S. Tsirkin [this message]
2022-04-05 11:57             ` Michael S. Tsirkin
2022-04-05 11:59     ` Michael S. Tsirkin
2022-04-05 11:57   ` Michael S. Tsirkin
2022-04-04  7:34 ` [PATCH 0/8] UAPI: make more exported headers self-contained, and put them into test coverage Arnd Bergmann
2022-05-13  8:43   ` Masahiro Yamada
2022-05-13  9:01     ` Arnd Bergmann
2022-05-13  9:13       ` Masahiro Yamada

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=20220405075627-mutt-send-email-mst@kernel.org \
    --to=mst@redhat.com \
    --cc=arnd@arndb.de \
    --cc=hch@infradead.org \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=masahiroy@kernel.org \
    --cc=virtualization@lists.linux-foundation.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.