John Baldwin [Sat, 11 May 2002 04:27:39 +0000 (04:27 +0000)]
Temporarily disable Jeff's fix for atomic_cmpset_32() to zero-extend the
value we load from memory. gcc3.1 passes in the u_int32_t old value to
compare against as a _sign_-extended 64-bit value for some reason (bug?).
This is a temporary workaround so kernels work again on alpha.
Garrett Wollman [Fri, 10 May 2002 22:59:29 +0000 (22:59 +0000)]
The response to my POSIX interpretation request says that `expr'
is required to be oblivious to overflow and to use the data type `long'.
(Division by zero is undefined in ISO C so it's still OK to check for it
here.) Add a new `-e' flag to get the old, more useful behavior.
David E. O'Brien [Fri, 10 May 2002 20:36:21 +0000 (20:36 +0000)]
BWK awk appears to work for world builds just fine now. We want to make
sparc64 the same as the other platforms -- so do it by moving the other
platforms toward the sparc64.
Joerg Wunsch [Fri, 10 May 2002 17:56:39 +0000 (17:56 +0000)]
Change the PIO loops from a hard counter into a loop that calls DELAY()
in each cycle, with a tunable max cycle count defined in fdreg.h.
This is said to fix the problem on some Compaq hardware (and perhaps
on other machines using the Natsemi PC87317 chip) where the fdc(4)
driver failed to operate at all.
PR: kern/21397
Submitted by: Jung-uk Kim <jkim@niksun.com>
MFC after: 3 days
Andrew Gallatin [Fri, 10 May 2002 16:56:14 +0000 (16:56 +0000)]
Remove ## concatination in the CFGREAD and CFGWRITE macros, as gcc3 complains
about them & they are not needed. Same fix as to tsunami_pci.c.
(not surprising, as this code was cut and pasted from there when I wrote it).
Maxime Henrion [Fri, 10 May 2002 15:41:14 +0000 (15:41 +0000)]
Fix several bugs in devfs_lookupx(). When we check the nameiop to
make sure it's a correct operation for devfs, do it only in the
ISLASTCN case. If we don't, we are assuming that the final file will
be in devfs, which is not true if another partition is mounted on top
of devfs or with special filenames (like /dev/net/../../foo).
Joerg Wunsch [Fri, 10 May 2002 12:48:09 +0000 (12:48 +0000)]
Fix a misplaced break statement within a switch that accidentally made
it into an "#ifdef INET6" block. This caused a (harmless but annoying)
EINVAL return value to be sent even though the operation completed
successfully.
PR: kern/37786
Submitted by: Ari Suutari <ari.suutari@syncrontech.com>,David Malone <dwmalone@maths.tcd.ie>
MFC after: 1 day
David E. O'Brien [Fri, 10 May 2002 08:41:46 +0000 (08:41 +0000)]
Use MD_EXEC_PREFIX now to get us thru `buildworld'.
The problem is the GCC driver now turns STANDARD_EXEC_PREFIX into a relative
path -- "<basename argv[0]>/../../libexec" for our normal install location.
However, in the middle of `buildworld' we need
"<basename argv[0]>/../../../../libexec" due to the prefix we tell the GCC
driver. But either the GCC driver is buggy, or we are confusing it, as it
tries to exec "<basename argv[0]>/../../libexec/cpp0" as if it were installed
in the normal place (but isn't).
MD_EXEC_PREFIX is still absolute, so I'll use that for now. I would like to
later make it so MD_EXEC_PREFIX is set only for `buildworld', as
MD_EXEC_PREFIX is also in the search path for libraries. Don't ask me why!
Another way is to add ${OBJFORMAT_PATH} (as set in CROSSENV) to the PATH
in src/Makefile.inc's WMAKEENV.
John Baldwin [Fri, 10 May 2002 04:05:42 +0000 (04:05 +0000)]
- Axe -mpreferred-stack-boundary=2 as -Os turns this on by default.
- Axe -fdata-sections as turning it on or off makes no difference. If
it did make a difference it would serve to bloat boot2 even further with
extra padding.
- Axe -fforce-addr. This gets us 32 bytes so we are down to only being
64-bytes over.
We still can't compile this with gcc 3.1. The problem seems to be that
the -fno-align-foo options don't actually work. Comparing the new and
old output it turns out that gcc is 4-byte padding all the functions and
labels and what not despite the passed in arguments thus adding the
unfortunate bloat to boot2.
Bruce A. Mah [Fri, 10 May 2002 01:02:13 +0000 (01:02 +0000)]
New release notes: pam_ftpusers(8), sed(1) -i.
Record the arrival (and departure) of pkg_update(1). It lived in the
tree for so long (over a year) that even though it won't show up in
the release, -CURRENT users might have gotten used to seeing it
around and might wonder where it went.
Tim J. Robbins [Thu, 9 May 2002 23:04:40 +0000 (23:04 +0000)]
Reimplement the who(1) utility to add some features required by SUSv3:
-H option (show column headings),
-T (show mesg(1) state),
-m (same as "am I"),
-u (show idle time),
-q (quick mode; list names in columns).