svn commit: r221360 - stable/8/sys/netinet/ipfw

Andrey V. Elsukov ae at FreeBSD.org
Tue May 3 05:42:51 UTC 2011


Author: ae
Date: Tue May  3 05:42:50 2011
New Revision: 221360
URL: http://svn.freebsd.org/changeset/base/221360

Log:
  MFC r218360 (by luigi):
      correct the 'output_time' of packets generated by dummynet.
      In the dec.2009 rewrite I introduced a bug, using for the
      computation the arrival time instead of the time the packet
      has exited from the queue.
      The bandwidth computation was still correct because it is
      computed elsewhere, but traffic was sent out in bursts.
  
      The bug is also present in RELENG_8 after dec.2009
  
      Thanks to Daikichi Osuga for investingating, finding and fixing the
      bug with detailed graphs of the behaviour before and after the fix.
  
      Submitted by:	Daikichi Osuga

Modified:
  stable/8/sys/netinet/ipfw/ip_dn_io.c
Directory Properties:
  stable/8/sys/   (props changed)
  stable/8/sys/amd64/include/xen/   (props changed)
  stable/8/sys/cddl/contrib/opensolaris/   (props changed)
  stable/8/sys/contrib/dev/acpica/   (props changed)
  stable/8/sys/contrib/pf/   (props changed)

Modified: stable/8/sys/netinet/ipfw/ip_dn_io.c
==============================================================================
--- stable/8/sys/netinet/ipfw/ip_dn_io.c	Tue May  3 05:09:02 2011	(r221359)
+++ stable/8/sys/netinet/ipfw/ip_dn_io.c	Tue May  3 05:42:50 2011	(r221360)
@@ -461,7 +461,7 @@ serve_sched(struct mq *q, struct dn_sch_
 		    (m->m_pkthdr.len * 8 + extra_bits(m, s));
 		si->credit -= len_scaled;
 		/* Move packet in the delay line */
-		dn_tag_get(m)->output_time += s->link.delay ;
+		dn_tag_get(m)->output_time = dn_cfg.curr_time + s->link.delay ;
 		mq_append(&si->dline.mq, m);
 	}
 	/*


More information about the svn-src-all mailing list