Witness warning with SCTP

Randall Stewart rrs at cisco.com
Thu Jan 11 02:15:59 PST 2007


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)


More information about the freebsd-current mailing list