Re: SCTP getting EAGAIN but poll or select return socket is writable

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Apr 11, 2017 at 09:14:52PM +0200, Michael Tuexen wrote:
> > On 11. Apr 2017, at 21:08, Deepak Khandelwal <dazz.87@xxxxxxxxx> wrote:
> > 
> > Hi,
> > 
> > I am using 4.4.x kernel.
> > 
> > in context of LKSCTP, what could be the possible reasons that poll or
> > select on fd return false positive events, causing application do
> > write on fd but failed with EAGAIN ?
> I'm just guessing here... What if you can write something, but not
> something big as you try...
> So how big is the message you are trying so send?

That's possible, yes.

Another possibility (and I guess the only other one) is that you're
polling on a socket that has sndbuf available but you're sending a msg
to a peer that requires starting another assoc. If it fails to bind
while creating this new asoc during sendmsg, it will return EAGAIN too.
Like, you created a UDP-style socket, but didn't bind() nor connect(),
and called sendmsg() directly on it. Sendmsg() will do an indirect
bind() but somehow, you're out of ephemeral ports, or something else is
blocking it.

Best regards,
Marcelo

> 
> Best regards
> Michael
> > 
> > 
> > Best Regards,
> > Deepak
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-sctp" in
> > the body of a message to majordomo@xxxxxxxxxxxxxxx
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-sctp" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-sctp" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Networking Development]     [Linux OMAP]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux