On Mon, Feb 20, 2017 at 04:30:31PM +0100, Jeremie Courreges-Anglas wrote:
> Jeremie Courreges-Anglas <[email protected]> writes:
> 
> > Using a mix of 32 and 64 bits counters leads to an ugly conversion to
> > percpu counters.  Why not move to 64 bits counters?  struct ipipstat is
> > afaik only used by netstat and ports/shells/nsh (I can cook a fix for
> > the latter).
> >
> > ok?
> 
> ping

OK bluhm@

> 
> > Index: sys/netinet/ip_ipip.h
> > ===================================================================
> > RCS file: /d/cvs/src/sys/netinet/ip_ipip.h,v
> > retrieving revision 1.6
> > diff -u -p -r1.6 ip_ipip.h
> > --- sys/netinet/ip_ipip.h   14 Dec 2007 18:33:41 -0000      1.6
> > +++ sys/netinet/ip_ipip.h   10 Feb 2017 15:48:13 -0000
> > @@ -43,18 +43,17 @@
> >   * Not quite all the functionality of RFC-1853, but the main idea is there.
> >   */
> >  
> > -struct ipipstat
> > -{
> > -    u_int32_t      ipips_ipackets;         /* total input packets */
> > -    u_int32_t      ipips_opackets;         /* total output packets */
> > -    u_int32_t      ipips_hdrops;           /* packet shorter than header 
> > shows */
> > -    u_int32_t      ipips_qfull;
> > -    u_int64_t   ipips_ibytes;
> > -    u_int64_t   ipips_obytes;
> > -    u_int32_t      ipips_pdrops;           /* packet dropped due to policy 
> > */
> > -    u_int32_t      ipips_spoof;            /* IP spoofing attempts */
> > -    u_int32_t   ipips_family;              /* Protocol family mismatch */
> > -    u_int32_t   ipips_unspec;            /* Missing tunnel endpoint 
> > address */
> > +struct ipipstat {
> > +    u_int64_t      ipips_ipackets;         /* total input packets */
> > +    u_int64_t      ipips_opackets;         /* total output packets */
> > +    u_int64_t      ipips_hdrops;           /* packet shorter than header 
> > shows */
> > +    u_int64_t      ipips_qfull;
> > +    u_int64_t      ipips_ibytes;
> > +    u_int64_t      ipips_obytes;
> > +    u_int64_t      ipips_pdrops;           /* packet dropped due to policy 
> > */
> > +    u_int64_t      ipips_spoof;            /* IP spoofing attempts */
> > +    u_int64_t      ipips_family;           /* Protocol family mismatch */
> > +    u_int64_t      ipips_unspec;            /* Missing tunnel endpoint 
> > address */
> >  };
> >  
> >  #define IP4_DEFAULT_TTL    0
> > Index: usr.bin/netstat/inet.c
> > ===================================================================
> > RCS file: /d/cvs/src/usr.bin/netstat/inet.c,v
> > retrieving revision 1.154
> > diff -u -p -r1.154 inet.c
> > --- usr.bin/netstat/inet.c  7 Feb 2017 18:18:16 -0000       1.154
> > +++ usr.bin/netstat/inet.c  10 Feb 2017 15:39:13 -0000
> > @@ -1065,16 +1065,16 @@ ipip_stats(char *name)
> >  #define p(f, m) if (ipipstat.f || sflag <= 1) \
> >     printf(m, ipipstat.f, plural(ipipstat.f))
> >  
> > -   p(ipips_ipackets, "\t%u total input packet%s\n");
> > -   p(ipips_opackets, "\t%u total output packet%s\n");
> > -   p(ipips_hdrops, "\t%u packet%s shorter than header shows\n");
> > -   p(ipips_pdrops, "\t%u packet%s dropped due to policy\n");
> > -   p(ipips_spoof, "\t%u packet%s with possibly spoofed local addresses\n");
> > -   p(ipips_qfull, "\t%u packet%s were dropped due to full output queue\n");
> > +   p(ipips_ipackets, "\t%llu total input packet%s\n");
> > +   p(ipips_opackets, "\t%llu total output packet%s\n");
> > +   p(ipips_hdrops, "\t%llu packet%s shorter than header shows\n");
> > +   p(ipips_pdrops, "\t%llu packet%s dropped due to policy\n");
> > +   p(ipips_spoof, "\t%llu packet%s with possibly spoofed local 
> > addresses\n");
> > +   p(ipips_qfull, "\t%llu packet%s were dropped due to full output 
> > queue\n");
> >     p(ipips_ibytes, "\t%llu input byte%s\n");
> >     p(ipips_obytes, "\t%llu output byte%s\n");
> > -   p(ipips_family, "\t%u protocol family mismatche%s\n");
> > -   p(ipips_unspec, "\t%u attempt%s to use tunnel with unspecified 
> > endpoint(s)\n");
> > +   p(ipips_family, "\t%llu protocol family mismatche%s\n");
> > +   p(ipips_unspec, "\t%llu attempt%s to use tunnel with unspecified 
> > endpoint(s)\n");
> >  #undef p
> >  }
> 
> 
> -- 
> jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF  DDCC 0DFA 74AE 1524 E7EE

Reply via email to