[Click] packet pool assertion

rchertov rchertov at cs.ucsb.edu
Tue Oct 4 18:39:46 EDT 2011


The script below causes an assertion in the packet pool cleanup 
procedure.  Also, if
this script is run in valgrind using options --leak-check=full 
--show-reachable=yes,
then the tool detects a lot of lost but reachable blocks.  If the queue 
size is
set to the default size, then no issues occur.

q :: Queue(2000);

src1p0  :: RatedSource(LENGTH 38, RATE 500000, LIMIT 3000, ACTIVE 
false)
         -> UDPIP6Encap(SRC 2000:10:1::01, SPORT 6667, DST 
2000:20:1::01, DPORT 6667)
         -> SetIP6DSCP(0)
         -> EtherEncap(0x0800, 00:04:23:D0:93:63, 00:17:cb:0d:f8:01)
         -> uq1p0 :: Unqueue
         -> q;

src2p0 :: RatedSource(LENGTH 38, RATE 500000, LIMIT 3000, ACTIVE false)
         -> UDPIP6Encap(SRC 2000:10:1::02, SPORT 6667, DST 
2000:20:1::02, DPORT 6667)
         -> SetIP6DSCP(0)
         -> EtherEncap(0x0800, 00:04:23:D0:93:63, 00:17:cb:0d:f8:02)
         -> uq2p0 :: Unqueue
         -> q;

q -> Unqueue
   -> total_ctr :: AverageCounter
   -> cl :: Classifier(5/01, 5/02);

cl[0] -> ctr0 :: AverageCounter -> Discard;
cl[1] -> ctr1 :: AverageCounter -> Discard;


Script(
	wait 2,
	write src1p0.active 1,
	write src2p0.active 1,
	wait 1,
	wait 1,
	wait 1,
	print "Flow 0",
	print ctr0.count,
	print ctr0.rate,
	print "Flow 1",
	print ctr1.count,
	print ctr1.rate,
	print "Total Counter",
	print total_ctr.count,
	print total_ctr.rate,
);




More information about the click mailing list