Probably add a new flag TF_IDLE that is true, if there is more data
to send when the connection was idle. This way the next time
around the idle variable will be true if the TF_IDLE flag is true 
and if we can empty the socket buffer all the data will be sent.

Will send you a patch soon.

jayanth

[EMAIL PROTECTED] ([EMAIL PROTECTED]) wrote:
> 
> >     This issue is a combination of mbuf cluster size and the 
> >     TF_MORETOCOME flag.
> 
> >             if (len) {
> >                     if (len == tp->t_maxseg)
> >                             goto send;
> >                     if (!(tp->t_flags & TF_MORETOCOME) &&
> >                         (idle || tp->t_flags & TF_NODELAY) &&
> >                         (tp->t_flags & TF_NOPUSH) == 0 &&
> >                         len + off >= so->so_snd.sb_cc)
> >                             goto send;
> 
> When I changed the condition, the problem we had did not occur. I am wondering
> what is the right fix.
> Yoshi
> 
> 

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-net" in the body of the message

Reply via email to