Sunday, January 22, 2012, 10:20:58 PM, you wrote:

>      if (frequent_accept) { // true

I read that as "checking to see if frequent_accept is true". 

> What's semi confusing is that the declaration of accept_internal() has the 
> frequent_accept parameter defaulted to "false", yet, as far as I can tell, 
> in this older version of the code, we always called it with "true".

> Fwiw, I also checked v2.0.1, and it also had frequent_accept (as passed 
> around) default to true in every case.
 
MuxVC.cc, InkAPI.cc, and LogCollationAccept.cc call NetProcessor::accept() with 
frequent_accept false or defaulted. So it was not true everywhere.

Perhaps we should leave the default true, but change the calls to 
NetProcessor::accept to set it false?
 
> So, unless I'm totally missing something, just changing the default back to 
> 'false' again will break accept_internal() as it was intended to work, no ?

accept_internal should be unaffected by the default. I think it was intended to 
check the value and do something based on it. Otherwise there should not even 
be an option to check.

The question is what the callers should do. I can try tweaking TSNetAccept to 
turn off frequent_accept, which is original (2.1.6) behavior (although that 
seems to make mock of the accept_threads parameter). We're still left with the 
question of why my code fails regression with fast accept.

Reply via email to