Re: 2.4.0-ac3 write() to tcp socket returning errno of -3 (ESRCH:"No such process")

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

 



On Tue, 9 Jan 2001, Paul Cassella wrote:

> and mss_now seems to be less than skb->len when the printk happens.  My
> copy of K&R is at work; could that comparison be being done unsigned
> because of skb->len?  I wouldn't think so, but the alternative seems
> somewhat worse...

That'll teach me to post about integral promotions ...

> +		printk(KERN_ERR "%s:%d:%s: err is unexpectedly %d.\n", file, line, func, ret);

... and hand-edit patches before breakfast.


I'm not familiar enough with the tcp code to know if this patch (against
-ac6) is a solution, band-aid, or, in fact, wrong, but I've run with it
(on -ac3) and haven't seen the errors for over twelve hours, which is
three times longer than it had been able to go without it coming up.

--- tcp.c.orig	Thu Jan 11 08:54:50 2001
+++ tcp.c	Thu Jan 11 08:56:42 2001
@@ -954,7 +954,7 @@
 			 */
 			skb = sk->write_queue.prev;
 			if (tp->send_head &&
-			    (mss_now - skb->len) > 0) {
+			    (signed int)(mss_now - skb->len) > 0) {
 				copy = skb->len;
 				if (skb_tailroom(skb) > 0) {
 					int last_byte_was_odd = (copy % 4);


Or would this be better?

+			    (unsigned int)mss_now > skb->len) {

Or making mss_now unsigned in the first place?

-- 
Paul Cassella

-
: send the line "unsubscribe linux-net" in
the body of a message to majordomo@vger.kernel.org


[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux