Re: [PATCH v2 net-next 7/7] tcp: make tcp_sendmsg() aware of socket backlog
From: Eric Dumazet <hidden>
Date: 2016-04-29 05:05:59
From: Eric Dumazet <hidden>
Date: 2016-04-29 05:05:59
On Thu, 2016-04-28 at 21:43 -0700, Alexei Starovoitov wrote:
I don't understand the logic completely, but isn't it safer to do 'goto wait_for_memory;' here if we happened to hit this in the middle of the loop?
Well, the wait_for_memory pushes data, and could early return to user space with short writes (non blocking IO). This would break things... After processing backlog, tcp_send_mss() needs to be called again, and we also need to check sk_err and sk_shutdown. A goto looks fine to me.
Also does it make sense to rename __release_sock to something like _ _ _sk_flush_backlog, since that's what it's doing and not doing any 'release' ?
Well, I guess it could be renamed, but this has been named like that for decades ? Why changing now, while this patch does not touch it ?