[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PULL 00/13] vhost, virtio, pci, pxe
From: |
Samuel Thibault |
Subject: |
Re: [Qemu-devel] [PULL 00/13] vhost, virtio, pci, pxe |
Date: |
Fri, 19 Feb 2016 13:41:47 +0100 |
User-agent: |
Mutt/1.5.21+34 (58baf7c9f32f) (2010-12-30) |
Hello,
Peter Maydell, on Fri 19 Feb 2016 12:09:17 +0000, wrote:
> We can do that, I think, by updating slirp to use C99 flexible
> arrays:
Indeed.
> diff --git a/slirp/mbuf.h b/slirp/mbuf.h
> index 38fedf4..ef5a4f7 100644
> --- a/slirp/mbuf.h
> +++ b/slirp/mbuf.h
> @@ -81,11 +81,9 @@ struct mbuf {
> Slirp *slirp;
> bool resolution_requested;
> uint64_t expiration_date;
> + char *m_ext;
> /* start of dynamic buffer area, must be last element */
> - union {
> - char m_dat[1]; /* ANSI don't like 0 sized arrays */
> - char *m_ext;
> - };
> + char m_dat[];
> };
>
> #define ifq_prev m_prev
>
> [compile-tested, but need to audit the slirp code to check that
> it doesn't care that m_dat and m_ext no longer have the same
> offset within the struct...
I believe that's true. It needs to be cross-checked though.
> I'm assuming we don't care about
> the fact we've used an extra 4 bytes of struct.]
That's probably fine, yes.
> However that then needs us to add a new disable-warning flag
> -Wno-gnu-variable-sized-type-not-at-end, because slirp.h uses
> these 'struct mbuf's embedded inside another structure,
Uh. It does so for not so useful reasons, it actually really needs a list head
(i.e. a struct quehead), that could probably be reworked.
Samuel
- Re: [Qemu-devel] [PULL 07/13] msix: fix msix_vector_masked, (continued)
[Qemu-devel] [PULL 08/13] tests: add pxe e1000 and virtio-pci tests, Michael S. Tsirkin, 2016/02/19
[Qemu-devel] [PULL 09/13] dec: convert to realize(), Michael S. Tsirkin, 2016/02/19
[Qemu-devel] [PULL 10/13] change type of pci_bridge_initfn() to void, Michael S. Tsirkin, 2016/02/19
[Qemu-devel] [PULL 11/13] rules: filter out irrelevant files, Michael S. Tsirkin, 2016/02/19
[Qemu-devel] [PULL 12/13] vhost-user interrupt management fixes, Michael S. Tsirkin, 2016/02/19
[Qemu-devel] [PULL 13/13] tests/vhost-user-bridge: add scattering of incoming packets, Michael S. Tsirkin, 2016/02/19
Re: [Qemu-devel] [PULL 00/13] vhost, virtio, pci, pxe, Peter Maydell, 2016/02/19