From: "Andreas Färber" <afaerber@suse.de>
To: Michael Tokarev <mjt@tls.msk.ru>, Ed Maste <emaste@freebsd.org>
Cc: qemu-trivial@nongnu.org, Anthony Liguori <aliguori@us.ibm.com>,
qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PULL trivial 2/5] slirp: remove mbuf(m_hdr, m_dat) indirection
Date: Wed, 24 Jul 2013 14:44:30 +0200 [thread overview]
Message-ID: <51EFCC2E.5040804@suse.de> (raw)
In-Reply-To: <1374225073-12959-3-git-send-email-mjt@msgid.tls.msk.ru>
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
next prev parent reply other threads:[~2013-07-24 12:44 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-19 9:11 [Qemu-devel] [PULL trivial 0/5] trivial patches for 2013-07-19 Michael Tokarev
2013-07-19 9:11 ` [Qemu-devel] [PULL trivial 1/5] linux-user: declare sys_futex to have 6 arguments Michael Tokarev
2013-07-19 9:11 ` [Qemu-devel] [PULL trivial 2/5] slirp: remove mbuf(m_hdr, m_dat) indirection Michael Tokarev
2013-07-24 12:44 ` Andreas Färber [this message]
2013-07-24 13:10 ` Michael Tokarev
2013-07-24 13:22 ` [Qemu-devel] [Qemu-trivial] " Ed Maste
2013-07-19 9:11 ` [Qemu-devel] [PULL trivial 3/5] Fix command example in qemu.sasl Michael Tokarev
2013-07-19 9:11 ` [Qemu-devel] [PULL trivial 4/5] block/m25p80: Update Micron entries Michael Tokarev
2013-07-19 9:11 ` [Qemu-devel] [PULL trivial 5/5] doc: monitor multiplexing rewording Michael Tokarev
2013-07-24 12:24 ` [Qemu-devel] [Qemu-trivial] [PULL trivial 0/5] trivial patches for 2013-07-19 Ed Maste
2013-07-24 13:28 ` Andreas Färber
2013-07-24 13:32 ` Anthony Liguori
2013-07-24 13:58 ` Ed Maste
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=51EFCC2E.5040804@suse.de \
--to=afaerber@suse.de \
--cc=aliguori@us.ibm.com \
--cc=emaste@freebsd.org \
--cc=mjt@tls.msk.ru \
--cc=qemu-devel@nongnu.org \
--cc=qemu-trivial@nongnu.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).