Subject: Re: VAX code generation problem wrt IPSEC?
To: Olaf Seibert <rhialto@polderland.nl>
From: Johnny Billquist <bqt@update.uu.se>
List: current-users
Date: 11/13/2001 10:38:18
On Tue, 13 Nov 2001, Olaf Seibert wrote:

> However, the -O0 kernel has some problems left:
> 
> - savecore reports weird device numbers (can't find device 3536/854608)
> - the output of netstat -s gives all nonsense numbers
> - syslogd gives a weird signal number at shutdown time:
>     exiting on signal 2147481512
> 
> so I'm sure there more things amiss.

Definitely, and it would probably be a good thing to locate them, since
these kinds of problems might point to some things that aren't really
correct in the system, but don't show up as obvious in the -O2 case...

> Another thing: there is this comment in ns_cksum.c:
> 
>                 /*
>                  *
>                  * We can do a 16 bit ones complement sum using
>                  * 32 bit arithmetic registers for adding,
>                  * with carries from the low added
>                  * into the high (by normal carry-chaining)
>                  * so long as we fold back before 16 carries have occured.
>                  *
>                  */
> 
> I'm pretty sure this is wrong, the 16 should be 2^16 I think, which is
> rather different. This code and comment has apparently been more or less
> unchanged through various 4.xBSD releases (back to 7.1 6/5/86 in
> 4.3BSD).

If you are referring to the fold back piece, then I agree. It's definitely
2^16 carries, and since we can guarantee that we don't get that many, we
can just keep on adding, and do a foldback at the end.

	Johnny

Johnny Billquist                  || "I'm on a bus
                                  ||  on a psychedelic trip
email: bqt@update.uu.se           ||  Reading murder books
pdp is alive!                     ||  tryin' to stay hip" - B. Idol