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.