|
From: Timo T. <tim...@ik...> - 2009-02-17 06:13:40
|
Paul Moore wrote: > when an acquire triggers a ph2 and that in turn fires a ph1 creation no > flags are set in the ph2 entry that makes it look pending > > this means that if another acquire arrives very quickly then the waiting > ph2 get killed as a zombie in getph2byid call in pk_recvacquire >[snip] > > although I think an explicit 'waiting for phase1' state would be better To me, it looks like the whole test in getph2byid() is a bit funny. Furthermore, it returns on first match, so it might or might not expire the ph2 depending on various things. I'm guessing the intent is to check there if there is a ph2 that has been there for a long time, but has not been killed for some reason (bug in the other parts of code: e.g. timers not expiring or the checkph1 logic failing). My opinion is to just remove the "Zombie check" getph2byid(). Emmanuel, Yvan, any ideas why that check is there? - Timo |