Bruce Evans [Sat, 9 May 1998 12:14:18 +0000 (12:14 +0000)]
Fixed overflow in sysinit enum constants. In that little-used
language, ANSI C, enum constants must be representable as ints.
We assumed at-least-33-bit ints. This worked on some 32-bit
systems because we don't mix negative sysinit enum constants with
too-large sysinit enum constants, and the compiler used an unsigned
32-bit type for sysinit enum variables, so sysinit enum variables
were sorted correctly. The fix lops off 4 hopefully-unused bits
so that we now only assume at-least-29-bit ints.
Bruce Evans [Sat, 9 May 1998 11:32:43 +0000 (11:32 +0000)]
Fixed `make -j9' by putting generated headers in ${SRCS}. Removed bogus
dependencies of generated .c files on generated headers (these made
`make -JN' work provided `depend' was made first). Sorted sources lists.
John Birrell [Sat, 9 May 1998 10:39:48 +0000 (10:39 +0000)]
Change casts of function pointers from int to long. This makes the
compiler warnings go away, but the compiler is throwing away 32-bits
as the long value is silently truncated to an int on alpha. But the
program works, so that must not matter.
John Birrell [Sat, 9 May 1998 09:21:28 +0000 (09:21 +0000)]
Add #include string.h, stdlib.h and termcap.h to get prototypes.
Change prototype for addbuf to make it compatible with tputs now that
there is a prototype to check it against.
John Birrell [Sat, 9 May 1998 06:42:52 +0000 (06:42 +0000)]
Of these programs, only df and ps aren't compatible with FreeBSD/Alpha.
All the rest work! Actually, I don't know if chio works because I can't
test that. df can be built using NetBSD's mount.h. ps depends on libkvm
so there is no point trying.
John Birrell [Fri, 8 May 1998 21:29:35 +0000 (21:29 +0000)]
Fix the problem people are having building -current on a -stable system.
The headers that are installed in WORLDTMP are part of the interface
that includes libraries like libc, so they must be installed together.
This means that lib-tools and build-tools should be merged. The FreeBSD
build only works in hosted form where it is assumed that the installed
version contains adequate tools to build the latest release.
In the SEE ALSO section, {get,set}rlimit are said to be in the section
3 which are actually in the section 2.
Pointed out by: Brian Reichert <reichert@numachi.com>
PR: 6480
Try experimenting with the split size a little in an effort to
move our installation structure a little further into the 20th century
(just before it's over).
Instigated by: Dag-Erling Coidan <dag-erli@ifi.uio.no>
Bruce Evans [Fri, 8 May 1998 07:56:48 +0000 (07:56 +0000)]
Translated to C (parameters in a function definition have the same scope
as variables declared in the main block in the function, so shadowing
of parameters by variables declared in the main block is not just an
obfuscation).
John Birrell [Fri, 8 May 1998 05:41:57 +0000 (05:41 +0000)]
This is a hack to workaround source that is coded to use long variables
but also assumes that they are 32-bits. This is one place where I don't
think it is appropriate to change 'long' to 'int'. I don't see why the
code couldn't be fixed so that using natural long variables does the
right thing. It's spaggetti code so it'll take some effort. Obviously
NetBSD thought so too because they change 'long' to 'int32_t' etc
and left it at that. As a temporary measure FreeBSD/Alpha can use the
NetBSD code and put this on the list of things to fix.
John Birrell [Fri, 8 May 1998 05:10:32 +0000 (05:10 +0000)]
Don't assign the va_list variable 'ap' directly to the argtable because
va_list is not a pointer on alpha. Instead, use the va_arg() macro
to return the address that is stored in the argtable.
Guido van Rooij [Thu, 7 May 1998 18:32:00 +0000 (18:32 +0000)]
Redo tcpmux stuff. tcpmux handling is now performed after inetd
forks. Furthermore, invalid input for tcpmux does not lead to
an exiting inetd.
This patch is recommended for people running tcpmux (which is NOT
enabled by default)
Julian Elischer [Thu, 7 May 1998 12:13:47 +0000 (12:13 +0000)]
An effort to make SLICE/DEVFS play with SCSI.
Apparently I didn't make my plans to make dev_t and devsw[] go away
under DEVFS quite clear enough to Peter Dufault as he stitched the SCSI
system together using them when he redid the configuration side of things.
This made is rather an effort to remove all vestiges of dev_t and
devsw[] entries from sd.c in DEVFS/SLICE mode.
Mike Smith [Thu, 7 May 1998 04:58:58 +0000 (04:58 +0000)]
In the words of the submitter:
---------
Make callers of namei() responsible for releasing references or locks
instead of having the underlying filesystems do it. This eliminates
redundancy in all terminal filesystems and makes it possible for stacked
transport layers such as umapfs or nullfs to operate correctly.
Quality testing was done with testvn, and lat_fs from the lmbench suite.
Some NFS client testing courtesy of Patrik Kudo.
vop_mknod and vop_symlink still release the returned vpp. vop_rename
still releases 4 vnode arguments before it returns. These remaining cases
will be corrected in the next set of patches.
---------
Submitted by: Michael Hancock <michaelh@cet.co.jp>
Bruce Evans [Wed, 6 May 1998 18:44:04 +0000 (18:44 +0000)]
Only include bsd.dep.mk in `mk'files that handle C sources. Abuse
bsd.obj.mk instead of bsd.dep.mk for defining the _SUBDIR target
and a default tags target. Abuse bsd.obj.mk for defining default
cleandepend and depend targets.
Andreas Klemm [Wed, 6 May 1998 17:36:16 +0000 (17:36 +0000)]
Overlooked, that newer naming convention is xxx_program instead of xxx_prog.
So changed it to ntpdate_program and xntpd_program.
Backout last change, now we have again named_program, sorry.
Andreas Klemm [Wed, 6 May 1998 17:26:48 +0000 (17:26 +0000)]
document ntpdate_prog and xntpd_prog
fix: named_program -> named_prog to reflect "real life"
(I suggest keeping this shorter name convention as it is
actually used in the config file)
Bruce Evans [Wed, 6 May 1998 15:01:18 +0000 (15:01 +0000)]
Regress to generating foo.c from foo.y via y.tab.c for crufty applications
that want a y.tab.h file. This want must be specified by putting y.tab.h
in SRCS (and defaulting to or putting -d in YFLAGS). This only works if
there is only one yacc parser, of course. One improvement: copy y.tab.c
to foo.c instead of renaming it, so that `#line...y.tab.c' statements in
it refer to an existing file.
Regress to not generating explicit rules for .l and .y sources containing
slashes. This case is unusual and hard to handle properly.
Don't generate an unused dependency when -d is not in YFLAGS.
Bruce Evans [Wed, 6 May 1998 13:23:39 +0000 (13:23 +0000)]
Use `foo/bar.a' instead of `-Lfoo -lbar' for linking to static internal
libraries, so that `ld -f' in can create correct dependencies for
yet-to-be-built libraries.
Use `DIR!= cd ...libbind; make -V .OBJDIR' to find libbind's object dir
if it doesn't seem to be in its usual place relative to ${.OBJDIR}.
This fixes `cd /usr/src/usr.sbin/nslookup; mkdir obj; make'.
The CHIOGSTATUS ioctl of the SCSI media changer driver (sys/scsi/ch.c)
is broken. It omits the SCSI_DATA_IN flag in the SCSI READ ELEMENT
STATUS command, which makes the 'chio status' command fail.
PR: 6528
Reviewed by: phk
Submitted by: Hans Huebner <hans@artcom.de>
Mike Smith [Wed, 6 May 1998 05:29:41 +0000 (05:29 +0000)]
As described by the submitter:
Reverse the VFS_VRELE patch. Reference counting of vnodes does not need
to be done per-fs. I noticed this while fixing vfs layering violations.
Doing reference counting in generic code is also the preference cited by
John Heidemann in recent discussions with him.
The implementation of alternative vnode management per-fs is still a valid
requirement for some filesystems but will be revisited sometime later,
most likely using a different framework.
Submitted by: Michael Hancock <michaelh@cet.co.jp>
John Birrell [Tue, 5 May 1998 21:59:19 +0000 (21:59 +0000)]
I have a long list of issues to address here, mostly related to
namespace and revision levels of ANSI and POSIX. This change only
removes the leading underscrore from the FILE locking functions
that POSIX defines.
John Birrell [Tue, 5 May 1998 21:54:26 +0000 (21:54 +0000)]
The __set_ospeed() function is coded against the speed_t type declared
in termios.h, but it's prototype in termcap.h and the main file use
the underlying definition (which is now an int, not a long for
compatibility with NetBSD). Really termcap.h should use speed_t too,
but I guess that this might break sources that don't include termios.h
first.
John Birrell [Tue, 5 May 1998 21:46:30 +0000 (21:46 +0000)]
In a threaded library, expect the lock field to be declared volatile,
so provide function prototypes that respect that, avoiding a gcc
warning that `volatile' is being thrown away.
Søren Schmidt [Tue, 5 May 1998 14:27:26 +0000 (14:27 +0000)]
Fix the 4-8G LBA geometry it was wrong.
Support >8G drives in CHS mode. This is done by guesstimating the
cylinder count from the LBA size reported. It works on my shiny
new Maxtor 11.5G drive, YMMV.
Reports from users of other big drives (read Quantum bigfoot's)
are welcome...