]> err.no Git - linux-2.6/commitdiff
[TCP]: Fix TCP_OFF() bug check introduced by previous change.
authorHerbert Xu <herbert@gondor.apana.org.au>
Tue, 6 Sep 2005 01:55:48 +0000 (18:55 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 6 Sep 2005 01:55:48 +0000 (18:55 -0700)
The TCP_OFF assignment at the bottom of that if block can indeed set
TCP_OFF without setting TCP_PAGE.  Since there is not much to be
gained from avoiding this situation, we might as well just zap the
offset.  The following patch should fix it.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/tcp.c

index cbcc9fc4778365add8f53e6d63667d4ef6e74184..f3f0013a95804808d1522e89192b0beaefa91a30 100644 (file)
@@ -769,10 +769,10 @@ new_segment:
                                        if (off == PAGE_SIZE) {
                                                put_page(page);
                                                TCP_PAGE(sk) = page = NULL;
-                                               TCP_OFF(sk) = off = 0;
+                                               off = 0;
                                        }
                                } else
-                                       BUG_ON(off);
+                                       off = 0;
 
                                if (copy > PAGE_SIZE - off)
                                        copy = PAGE_SIZE - off;