tcp: kill pointless urg_mode
It all started from me noticing that this urgent check in tcp_clean_rtx_queue is unnecessarily inside the loop. Then I took a longer look to it and found out that the users of urg_mode can trivially do without, well almost, there was one gotcha. Bonus: those funny people who use urg with >= 2^31 write_seq - snd_una could now rejoice too (that's the only purpose for the between being there, otherwise a simple compare would have done the thing). Not that I assume that the rest of the tcp code happily lives with such mind-boggling numbers :-). Alas, it turned out to be impossible to set wmem to such numbers anyway, yes I really tried a big sendfile after setting some wmem but nothing happened :-). ...Tcp_wmem is int and so is sk_sndbuf... So I hacked a bit variable to long and found out that it seems to work... :-) Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
654bed16cf
commit
33f5f57eeb
@@ -497,10 +497,8 @@ static inline void skb_entail(struct sock *sk, struct sk_buff *skb)
|
||||
static inline void tcp_mark_urg(struct tcp_sock *tp, int flags,
|
||||
struct sk_buff *skb)
|
||||
{
|
||||
if (flags & MSG_OOB) {
|
||||
tp->urg_mode = 1;
|
||||
if (flags & MSG_OOB)
|
||||
tp->snd_up = tp->write_seq;
|
||||
}
|
||||
}
|
||||
|
||||
static inline void tcp_push(struct sock *sk, int flags, int mss_now,
|
||||
|
Reference in New Issue
Block a user