svn commit: r305824 - in head/sys: contrib/ipfilter/netinet kern net netinet netinet6 netipsec sys
Kevin Lo
kevlo at FreeBSD.org
Sat Oct 8 15:00:16 UTC 2016
On Wed, Oct 05, 2016 at 04:14:42PM -0700, Gleb Smirnoff wrote:
>
> On Wed, Oct 05, 2016 at 11:20:58AM +0800, Kevin Lo wrote:
> K> > On Thu, Sep 15, 2016 at 07:41:48AM +0000, Kevin Lo wrote:
> K> > K> Log:
> K> > K> Remove the 4.3BSD compatible macro m_copy(), use m_copym() instead.
> K> > ...
> K> > K> Modified: head/sys/contrib/ipfilter/netinet/fil.c
> K> > K> ==============================================================================
> K> > K> --- head/sys/contrib/ipfilter/netinet/fil.c Thu Sep 15 02:48:56 2016 (r305823)
> K> > K> +++ head/sys/contrib/ipfilter/netinet/fil.c Thu Sep 15 07:41:48 2016 (r305824)
> K> > K> @@ -3226,7 +3226,7 @@ filterdone:
> K> > K> fdp = fin->fin_dif;
> K> > K> if ((fdp != NULL) && (fdp->fd_ptr != NULL) &&
> K> > K> (fdp->fd_ptr != (void *)-1)) {
> K> > K> - mc = M_COPY(fin->fin_m);
> K> > K> + mc = M_COPYM(fin->fin_m);
> K> > K> if (mc != NULL)
> K> > K> ipf_fastroute(mc, &mc, fin, fdp);
> K> > K> }
> K> > K>
> K> > K> Modified: head/sys/contrib/ipfilter/netinet/ip_compat.h
> K> > K> ==============================================================================
> K> > K> --- head/sys/contrib/ipfilter/netinet/ip_compat.h Thu Sep 15 02:48:56 2016 (r305823)
> K> > K> +++ head/sys/contrib/ipfilter/netinet/ip_compat.h Thu Sep 15 07:41:48 2016 (r305824)
> K> > K> @@ -211,7 +211,7 @@ struct ether_addr {
> K> > K> # define MSGDSIZE(m) mbufchainlen(m)
> K> > K> # define M_LEN(m) (m)->m_len
> K> > K> # define M_ADJ(m,x) m_adj(m, x)
> K> > K> -# define M_COPY(x) m_copy((x), 0, M_COPYALL)
> K> > K> +# define M_COPYM(x) m_copym((x), 0, M_COPYALL, M_NOWAIT)
> K> > K> # define M_DUP(m) m_dup(m, M_NOWAIT)
> K> > K> # define IPF_PANIC(x,y) if (x) { printf y; panic("ipf_panic"); }
> K> > K> typedef struct mbuf mb_t;
> K> > K> @@ -366,7 +366,7 @@ typedef struct mb_s {
> K> > K> # define MSGDSIZE(m) msgdsize(m)
> K> > K> # define M_LEN(m) (m)->mb_len
> K> > K> # define M_ADJ(m,x) (m)->mb_len += x
> K> > K> -# define M_COPY(m) dupmbt(m)
> K> > K> +# define M_COPYM(m) dupmbt(m)
> K> > K> # define M_DUP(m) dupmbt(m)
> K> > K> # define GETKTIME(x) gettimeofday((struct timeval *)(x), NULL)
> K> > K> # define MTOD(m, t) ((t)(m)->mb_data)
> K> >
> K> > IMHO, for contributed ipfilter we should only modify ip_compat.h and ip_fil_freebsd.c.
> K> > In case of removal of m_copy() the macro should remain named M_COPY(), but it should be
> K> > defined to call to function of m_copym(). So fil.c can be left unmodified, and ip_compat.h
> K> > will have only 1 line change. The userland part of ip_compat.h which defines M_COPY() to
> K> > dupmbt() doesn't need to be renamed as well.
> K>
> K> Actually your comments were addressed in my original patch, but rwatson@
> K> pointed out that switching M_COPY() to M_COPYM() for consistency:
> K> https://reviews.freebsd.org/D7878#163304
>
> This looks more like a general comment, not comment to ipfilter part. Robert,
> can you confirm please?
>
> The ipfilter part should have modifications only in ip_compat.h and ip_fil_freebsd.c.
Fixed in r306849, thanks.
> --
> Totus tuus, Glebius.
Kevin
More information about the svn-src-head
mailing list