John Baldwin wrote: > > Ah, you must have missed the part where it does: > > if (someone else created the pcb) { > free(pcb I just created); > use the other pcb; > } > > :-P That is, explicitly handling the race. However: Yep.. sorry about that.. > >> I am NOT willing to sleep. the normal allocation of the PCB is done >> with a WAIT type option.. I had not realized that hashinit() >> did an allocation and could sleep.. thats the issue. > > In that case a hashinit_flags() is the way to go I guess. What happens if > the hashinit fails, connection dropped? > Yep.. its the same thing that happens if the pcb create fails (we allocate with NOWAIT as well). And in actuality this should not happen... if it does we are getting near the limit of the number of associations (you will see me often use the term association.. same thing as connection) thats allowed. We drop before allocating if we have hit this limit of course :-0 R -- Randall Stewart NSSTG - Cisco Systems Inc. 803-345-0369 <or> 803-317-4952 (cell)Received on Thu Jan 11 2007 - 09:15:59 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:04 UTC