jhb [Wed, 10 May 2000 18:54:28 +0000 (18:54 +0000)]
Handle PCI devices that actually use an ISA IRQ for the cia and tsunami
chipsets. An example of this is the USB controller on these chipsets.
With this, I can now use USB devices on the test Alpha I am borrowing at
the moment.
obrien [Wed, 10 May 2000 17:24:08 +0000 (17:24 +0000)]
Fix modules: target.
Submitted by: jhb
1. ${.CURDIR}/modules was a confusing way to spell ${.OBJDIR}/modules
2. ${.CURDIR}/../../modules is a verbose, wrong path to the module sources.
The correct path is $S/modules, since ${.CURDIR} for the kernel may be
in the obj tree but the sources are in the src tree.
3. The `obj' and `all' steps may be combined, as can `obj' and `depend'.
Submitted by: bde
Backup ${DESTDIR}/modules to ${DESTDIR}/modules.old to match the same action
done to the kernel.
bde [Wed, 10 May 2000 14:38:28 +0000 (14:38 +0000)]
Regenerated (to fix "created from" lines, and to fix the previous
regeneration which somehow used the wrong syscalls.master file,
resulting in unbuildable svr4_sysent.c).
obrien [Wed, 10 May 2000 01:24:23 +0000 (01:24 +0000)]
1. `movl' is for use with 32-bit operands. Do NOT use it with 16-bit
operands. `movw' could be used, but instead let the assembler decide
the right instruction to use.
2. AT&T asm syntax requires a leading '*' in front of the operand for
indirect calls and jumps.
obrien [Wed, 10 May 2000 01:15:55 +0000 (01:15 +0000)]
When using _asm{} in GCC, one must specify the operand's size if one
specifies the instruction's operation size. GCC will default to 32-bit
operands reguardless of the prototype (ie, formal parameters' type)
of an inline function.
itojun [Wed, 10 May 2000 00:47:20 +0000 (00:47 +0000)]
correct possible security issue(s) in name resolution, due to use of
pre-4.9.7 BIND resolver code.
ftp://ftp.kame.net/pub/mail-list/snap-users/2348 for details.
bde [Tue, 9 May 2000 21:18:30 +0000 (21:18 +0000)]
Fixed the calculation of sy_nargs in sysent tables. We attempted to do
this in awk using the hack of counting args of type off_t twice and args
of all other types once. This is too simple to work. It gave benignly
wrong results on alphas (off_t shouldn't be counted twice) and for
svr4_sys_mmap64() on i386's (off64_t should be counted twice). It gave
fatally wrong results for i386's with 64-bit longs (longs should be
counted twice). The correct value for sy_nargs is easier to determine
from the size of the args struct anyway, except for complications to
make the generated code almost readable.
Improved formatting of sysent tables by lining up the comments where
possible.
imp [Tue, 9 May 2000 19:41:18 +0000 (19:41 +0000)]
This appears to have been repo-copied to lpd a while ago and never
deleted here. Diff shows there is only one change to this file, which
matches the repo histories.
dwhite [Tue, 9 May 2000 18:28:07 +0000 (18:28 +0000)]
Remove metion of the 'magic options.' Apparently PXE doesn't require the
special options on 0.99c (it mumbles something about 'PXE server not found'
but works anyway), and it won't work at all with PXE 2.0.
bde [Tue, 9 May 2000 18:23:16 +0000 (18:23 +0000)]
Fixed the return type for exit() and the args struct tag several NOPROTO
syscalls including exit(). These entries were unused, so the bugs had no
effect, but the the args struct tag will be used to calculate sy_nargs
correctly. exit() was wrong in all emulators.
bde [Tue, 9 May 2000 18:08:51 +0000 (18:08 +0000)]
Fixed the return type and args struct tag for exit(). They were wrong in
all emulators. These entries were unused, so the bug had no effect, but
the the args struct tag will be used to calculate sy_nargs correctly.
bde [Tue, 9 May 2000 17:54:30 +0000 (17:54 +0000)]
Fixed the return type and args struct tag for exit(). They were wrong in
all emulators. These entries were unused, so the bug had no effect, but
the the args struct tag will be used to calculate sy_nargs correctly.
dillon [Tue, 9 May 2000 17:43:21 +0000 (17:43 +0000)]
Some ioctl routines assume that the ioctl buffer is aligned, but a
char[] declaration makes no such guarentee. A union is used to force
alignment of the char buffer.
bde [Tue, 9 May 2000 08:31:06 +0000 (08:31 +0000)]
Fixed the declaration of mmap(). The crufty padding arg had the wrong
type. This gave an inconsistent amount of crufty padding on i386's with
64-bit longs (8 bytes instead of 4). On alphas it gives a consistent
amount of crufty padding (8 bytes) in addition to the 4 bytes of normal
padding caused by passing int args as register_t's.
Fixed the args struct tag for the NOPROTO syscalls (netbsd_lchown() and
netbsd_msync()). The tag is currently unused for NOPROTO syscalls, so
the bug has no effect, but it will be used even in the NOPROTO case to
calculate sy_nargs correctly.
mjacob [Tue, 9 May 2000 04:54:10 +0000 (04:54 +0000)]
Some prettifying for the quirk comments.
Add a SA_QUIRK_NO_MODESEL type and use it for the OnStream real SCSI
device (not the broken one). This one is still broken in that it can't
be set to the same fixed block size it reports [ unflattering comments
about this company elided ].
If we're unable to set buffered mode on, complain, but drive on. It's
not a fatal error to not be in buffered mode.
mjacob [Tue, 9 May 2000 02:20:44 +0000 (02:20 +0000)]
Change references/comments about 'secondary' to reflect that while we'd
like to see the true SRM bus number be passed to us, instead, we get FreeBSD's
PCI bus instance number (Brzzt! Wrong Answer!).
Also, once we've seen the MCPCIA that has the EISA bus on it, call
dec_kn300_cons_init just before configuring devices on this bus.
mjacob [Tue, 9 May 2000 02:19:04 +0000 (02:19 +0000)]
Unhide dec_kn300_cons_init and don't make it something we call early.
We'll call it later when, in the natural order of things, we configure
the MCPCIA that has the EISA bus that a serial console and/or VGA and/or
keyboard.
mjacob [Tue, 9 May 2000 01:14:43 +0000 (01:14 +0000)]
Fix some breakage about how we build WWNs. Do some other fabric related
changes: consider a new PDB entry different if Class 3 service parameter
roles change (!!!). Do some checking as we're getting a port database
that traps whether things change while we're doing so. Handle N-port
and F-ports correctly. Fix the fabric login loop to retain a login/binding
if things haven't changed (I mean, why logout a device only to log it back
in). No longer accept, after fabric logins, garbage if we can't get a PDB
entry that matches the device we've just logged into- if it doesn't, log
it out as it is very unlikely to still be what we thought it was. Get rid
of some of the debounce loops because we could get stuck there.
mjacob [Tue, 9 May 2000 01:08:21 +0000 (01:08 +0000)]
Add in a watchdog routine to catch cases where we've dropped the command.
Apparently the f/w has finished the command, but somehow an interrupt is
being lost. So, we just plain wedge when booting alphas.
This is a general routine we've needed for a while.
jhb [Mon, 8 May 2000 22:21:17 +0000 (22:21 +0000)]
Add a DOCDISTFILES variable to point to a directory containing the
distfiles to build the docproj port during release. Prior to this, the
distfiles were copied froom ${DISTFILES}. However, if like me, you needed
to store the distfiles in some directory other than /usr/ports/distfiles,
for example /usr/docdistfiles, then when you overrode ${DISTFILES} it broke
the release build when it tried to build docproj port in the chroot'd
release area. To preserve backwards compatibility, DOCDISTFILES defaults
to the value of DISTFILES.
n_hibma [Sun, 7 May 2000 20:46:49 +0000 (20:46 +0000)]
If PERIPH_1284 is not defined, don't even bother calling the BUS_*_INTR
functions.
If it is defined, check whether bus_alloc_resource has succeeded. If it
hasn't, it is in polled mode. Mike Nowlin reports that this change makes
the geek port (whatever _that_ is :-) work again on his machine.