[Click] packet pool assertion

rchertov rchertov at cs.ucsb.edu
Wed Oct 5 14:00:39 EDT 2011


On Wed, 05 Oct 2011 11:30:49 -0400, Eddie Kohler wrote:
> Ouch!  Thanks for this report, Roman.  The bug was in the user-level
> multithreading code, and was a bug in the assertion, not the code.
> (The lost blocks were lost because the assertion aborted the code.)  
> I
> believe this is fixed.

Yes, valgrind does not complain any more.  Thanks for the fix.

>
> Should v2.0.2 be released to address this error...?

I wonder how many people use set releases vs. just pulling from git.

Roman

>
> Eddie
>
>
> On 10/4/11 6:39 PM, rchertov wrote:
>> 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,
>> );
>>
>>
>> _______________________________________________
>> click mailing list
>> click at amsterdam.lcs.mit.edu
>> https://amsterdam.lcs.mit.edu/mailman/listinfo/click



More information about the click mailing list