qemu-trivial
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-trivial] [Qemu-devel] [PULL trivial 2/5] slirp: remove mbuf(m_


From: Andreas Färber
Subject: Re: [Qemu-trivial] [Qemu-devel] [PULL trivial 2/5] slirp: remove mbuf(m_hdr, m_dat) indirection
Date: Wed, 24 Jul 2013 14:44:30 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130620 Thunderbird/17.0.7

Am 19.07.2013 11:11, schrieb Michael Tokarev:
> ---

NACK, this commit in the pull request is lacking Signed-off-bys!

The original patch (attachment in reply to "slirp: reorder include to
fix FreeBSD build failure") had a misspelled "Signed-off-By" from mjt.
Michael, can you please re-add that and submit a v2 pull?

Ed, maybe you want to turn your "I'm happy" into an Acked-by or
Tested-by while at it? ;)

Regards,
Andreas

>  slirp/mbuf.h     |   51 ++++++++++++++++++---------------------------------
>  slirp/tcp_subr.c |   12 ++++++------
>  2 files changed, 24 insertions(+), 39 deletions(-)
> 
> diff --git a/slirp/mbuf.h b/slirp/mbuf.h
> index 3f3ab09..b144f1c 100644
> --- a/slirp/mbuf.h
> +++ b/slirp/mbuf.h
> @@ -49,22 +49,6 @@
>   * free the m_ext.  This is inefficient memory-wise, but who cares.
>   */
>  
> -/* XXX should union some of these! */
> -/* header at beginning of each mbuf: */
> -struct m_hdr {
> -     struct  mbuf *mh_next;          /* Linked list of mbufs */
> -     struct  mbuf *mh_prev;
> -     struct  mbuf *mh_nextpkt;       /* Next packet in queue/record */
> -     struct  mbuf *mh_prevpkt; /* Flags aren't used in the output queue */
> -     int     mh_flags;         /* Misc flags */
> -
> -     int     mh_size;                /* Size of data */
> -     struct  socket *mh_so;
> -
> -     caddr_t mh_data;                /* Location of data */
> -     int     mh_len;                 /* Amount of data in this mbuf */
> -};
> -
>  /*
>   * How much room is in the mbuf, from m_data to the end of the mbuf
>   */
> @@ -80,29 +64,30 @@ struct m_hdr {
>  #define M_TRAILINGSPACE M_FREEROOM
>  
>  struct mbuf {
> -     struct  m_hdr m_hdr;
> +     /* XXX should union some of these! */
> +     /* header at beginning of each mbuf: */
> +     struct  mbuf *m_next;           /* Linked list of mbufs */
> +     struct  mbuf *m_prev;
> +     struct  mbuf *m_nextpkt;        /* Next packet in queue/record */
> +     struct  mbuf *m_prevpkt;        /* Flags aren't used in the output 
> queue */
> +     int     m_flags;                /* Misc flags */
> +
> +     int     m_size;                 /* Size of data */
> +     struct  socket *m_so;
> +
> +     caddr_t m_data;                 /* Location of data */
> +     int     m_len;                  /* Amount of data in this mbuf */
> +
>       Slirp *slirp;
>       bool    arp_requested;
>       uint64_t expiration_date;
>       /* start of dynamic buffer area, must be last element */
> -     union M_dat {
> -             char    m_dat_[1]; /* ANSI don't like 0 sized arrays */
> -             char    *m_ext_;
> -     } M_dat;
> +     union {
> +             char    m_dat[1]; /* ANSI don't like 0 sized arrays */
> +             char    *m_ext;
> +     };
>  };
>  
> -#define m_next               m_hdr.mh_next
> -#define m_prev               m_hdr.mh_prev
> -#define m_nextpkt    m_hdr.mh_nextpkt
> -#define m_prevpkt    m_hdr.mh_prevpkt
> -#define m_flags              m_hdr.mh_flags
> -#define      m_len           m_hdr.mh_len
> -#define      m_data          m_hdr.mh_data
> -#define m_size               m_hdr.mh_size
> -#define m_dat                M_dat.m_dat_
> -#define m_ext                M_dat.m_ext_
> -#define m_so         m_hdr.mh_so
> -
>  #define ifq_prev m_prev
>  #define ifq_next m_next
>  #define ifs_prev m_prevpkt
> diff --git a/slirp/tcp_subr.c b/slirp/tcp_subr.c
> index e98ce1a..043f28f 100644
> --- a/slirp/tcp_subr.c
> +++ b/slirp/tcp_subr.c
> @@ -647,7 +647,7 @@ tcp_emu(struct socket *so, struct mbuf *m)
>                       n4 =  (laddr & 0xff);
>  
>                       m->m_len = bptr - m->m_data; /* Adjust length */
> -                        m->m_len += snprintf(bptr, m->m_hdr.mh_size - 
> m->m_len,
> +                        m->m_len += snprintf(bptr, m->m_size - m->m_len,
>                                               "ORT %d,%d,%d,%d,%d,%d\r\n%s",
>                                               n1, n2, n3, n4, n5, n6, 
> x==7?buff:"");
>                       return 1;
> @@ -680,7 +680,7 @@ tcp_emu(struct socket *so, struct mbuf *m)
>                       n4 =  (laddr & 0xff);
>  
>                       m->m_len = bptr - m->m_data; /* Adjust length */
> -                     m->m_len += snprintf(bptr, m->m_hdr.mh_size - m->m_len,
> +                     m->m_len += snprintf(bptr, m->m_size - m->m_len,
>                                               "27 Entering Passive Mode 
> (%d,%d,%d,%d,%d,%d)\r\n%s",
>                                               n1, n2, n3, n4, n5, n6, 
> x==7?buff:"");
>  
> @@ -706,7 +706,7 @@ tcp_emu(struct socket *so, struct mbuf *m)
>               if (m->m_data[m->m_len-1] == '\0' && lport != 0 &&
>                   (so = tcp_listen(slirp, INADDR_ANY, 0, so->so_laddr.s_addr,
>                                    htons(lport), SS_FACCEPTONCE)) != NULL)
> -                    m->m_len = snprintf(m->m_data, m->m_hdr.mh_size, "%d",
> +                    m->m_len = snprintf(m->m_data, m->m_size, "%d",
>                                          ntohs(so->so_fport)) + 1;
>               return 1;
>  
> @@ -726,7 +726,7 @@ tcp_emu(struct socket *so, struct mbuf *m)
>                               return 1;
>                       }
>                       m->m_len = bptr - m->m_data; /* Adjust length */
> -                        m->m_len += snprintf(bptr, m->m_hdr.mh_size,
> +                        m->m_len += snprintf(bptr, m->m_size,
>                                               "DCC CHAT chat %lu %u%c\n",
>                                               (unsigned 
> long)ntohl(so->so_faddr.s_addr),
>                                               ntohs(so->so_fport), 1);
> @@ -737,7 +737,7 @@ tcp_emu(struct socket *so, struct mbuf *m)
>                               return 1;
>                       }
>                       m->m_len = bptr - m->m_data; /* Adjust length */
> -                        m->m_len += snprintf(bptr, m->m_hdr.mh_size,
> +                        m->m_len += snprintf(bptr, m->m_size,
>                                               "DCC SEND %s %lu %u %u%c\n", 
> buff,
>                                               (unsigned 
> long)ntohl(so->so_faddr.s_addr),
>                                               ntohs(so->so_fport), n1, 1);
> @@ -748,7 +748,7 @@ tcp_emu(struct socket *so, struct mbuf *m)
>                               return 1;
>                       }
>                       m->m_len = bptr - m->m_data; /* Adjust length */
> -                        m->m_len += snprintf(bptr, m->m_hdr.mh_size,
> +                        m->m_len += snprintf(bptr, m->m_size,
>                                               "DCC MOVE %s %lu %u %u%c\n", 
> buff,
>                                               (unsigned 
> long)ntohl(so->so_faddr.s_addr),
>                                               ntohs(so->so_fport), n1, 1);
> 


-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



reply via email to

[Prev in Thread] Current Thread [Next in Thread]