Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a2a804cd authored by Herbert Xu's avatar Herbert Xu Committed by David S. Miller
Browse files

tcp: Do not check flush when comparing options for GRO



There is no need to repeatedly check flush when comparing TCP
options for GRO as it will be false 99% of the time where it
matters.

Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 9aaa156c
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -2570,7 +2570,7 @@ struct sk_buff **tcp_gro_receive(struct sk_buff **head, struct sk_buff *skb)
	flush |= (flags ^ tcp_flag_word(th2)) &
	flush |= (flags ^ tcp_flag_word(th2)) &
		  ~(TCP_FLAG_CWR | TCP_FLAG_FIN | TCP_FLAG_PSH);
		  ~(TCP_FLAG_CWR | TCP_FLAG_FIN | TCP_FLAG_PSH);
	flush |= th->ack_seq ^ th2->ack_seq;
	flush |= th->ack_seq ^ th2->ack_seq;
	for (i = sizeof(*th); !flush && i < thlen; i += 4)
	for (i = sizeof(*th); i < thlen; i += 4)
		flush |= *(u32 *)((u8 *)th + i) ^
		flush |= *(u32 *)((u8 *)th + i) ^
			 *(u32 *)((u8 *)th2 + i);
			 *(u32 *)((u8 *)th2 + i);