Bill Paul [Sun, 10 Jan 1999 18:51:49 +0000 (18:51 +0000)]
Tweak the vr_start() and vr_rxeof() routines a little to improve
performance and reliability a little. There was a condition before
where transmission would stall during periods of heavy traffic
exchange between two hosts. Also set the 'want interrupt' bit in
receive descriptor control words.
Doug Rabson [Sun, 10 Jan 1999 17:22:49 +0000 (17:22 +0000)]
From the submitter:
I found the reason why f77 so offen dies on alpha. Here is a fix.
"Const" is a union of int and double.
If nelt->constblock.Const.ci > 0 then it trys to evaluate it as double
and floating point exception occurs.
Peter Wemm [Sun, 10 Jan 1999 15:28:37 +0000 (15:28 +0000)]
Fix the annoying bug introduced in rev 1.18 that caused each line to be
one character shorter than the previous in a stairstep fashion when long
idle times were involved.
A couple of nits:
- spelling/typo fix.
- some of the easier style(9) fixes where it was bothering me.
- Handle 100+ days idle time (ha!). Probably the right thing to do is
to do a snprintf into a buffer and strlen the result rather than doing
hackery on magic numbers.
XXX the wide (and mostly unused) username and tty columns annoy me since
it it could be used for more useful information for the command. We should
actually count the largest username and tty and adjust like 'ls -l' does.
Peter Wemm [Sun, 10 Jan 1999 13:29:52 +0000 (13:29 +0000)]
Damn, I thought I had committed this already, but it seems not.
Move the relocated boot1 and arg transfer space from 0x600/0x800 to
0x700/0x900. In theory this should make no difference, apart from the fact
that Buslogic controllers happen to use a few bytes at 0x600 for some sort
of scratch space for it's int 0x13 hook (!!!), causing the machine to crash
badly when the boot2 code makes it's callbacks into boot1 for disk IO.
Submitted by: Robert Nordier <rnordier@freebsd.org>
Nicolas Souchu [Sun, 10 Jan 1999 12:04:56 +0000 (12:04 +0000)]
Major ppbus commit with:
+ ECP parallel port chipset FIFO detection
+ DMA+FIFO parallel I/O handled as chipset specific
+ nlpt updated in order to use the above enhanced parallel I/O.
Use 'lptcontrol -e' to use enhanced I/O
+ Various options documented in LINT
+ Full IEEE1284 NIBBLE and BYTE modes support. See ppbus(4) for
an overview of the IEEE1284 standard
+ Detection of PnP parallel devices at boot
+ Read capability added to nlpt driver to get IEEE1284 compliant
printer status with a simple 'cat /dev/lpt0'
+ IEEE1284 peripheral emulation added to BYTE mode. Two computers
may dialog according to IEEE1284 signaling method.
See PERIPH_1284 option and /sys/dev/ppbus/ppi.c
All this code is supposed to provide basic functions for IEEE1284 programming.
ppi.c and nlpt.c may act as examples.
Matt Jacob [Sun, 10 Jan 1999 11:15:23 +0000 (11:15 +0000)]
Suggested by bde@freebsd.org- memcpy not necessarily good to use. D'oh- not in
the BSD DKI. Stop being lazy and finish the defines so MEMCPY becomes bzero
for FreeBSD.
It was nay'ed before committing on the grounds that this is not
the way to do it, and has been decided as such several times in
the past.
There is not point in loading gobs of ascii into the kernel when
the only use of that ascii is presentation to the user.
Next thing we'd be adding all section 4 man pages to the loaded
kernel as well.
The argument about KLD's is bogus, klds can store a file in
/usr/share/doc/sysctl/dev/foo/thisvar.txt with a description and
sysctl or other facilities can pick it up there.
Proper documentation will take several K worth of text for many
sysctl variables, we don't want that in the kernel under any
circumstances.
I will welcome any well thought out attempt at improving the
situation wrt. sysctl documentation, but this wasn't it.
Add kernel support for sysctl descriptions. The NO_SYSCTL_DESCRIPTIONS option
disables them if they're not wanted; in that case, sysctl_sysctl_descr will
always return an empty string.
Matt Jacob [Sun, 10 Jan 1999 02:55:10 +0000 (02:55 +0000)]
Add some prototype deadchip detection. Set FIFO bursting (1XX0 only-
it's already on for the 2XX0) and detect the broken 1040A FIFO. Change
bzero to MEMZERO (portability with **nux). Use memcpy for same reason.
Finally detect QUEUE FULL conditions and return this as an error that
will get cam_periph_error to do it's 'tagged openings now XXX' dance.
Brian Somers [Sun, 10 Jan 1999 01:26:30 +0000 (01:26 +0000)]
Only call isatty() when we open our descriptor, and remember
the answer.
If we later get a descriptor exception from select(), we know
that it's a tty (isatty() returns 0 after the exception on a
tty) and remember to call modem_LogicalClose().
The upshot of it all is that descriptor exceptions dont leave
the tty locked any more.
John Polstra [Sat, 9 Jan 1999 21:51:00 +0000 (21:51 +0000)]
Switch to using ".So" as the extension for PIC object files rather
than ".so". The old extension conflicted with well-established
naming conventions for dynamically loadable modules.
The "clean" targets continue to remove ".so" files too, to deal with
old systems.
Bill Paul [Sat, 9 Jan 1999 18:12:08 +0000 (18:12 +0000)]
Add driver support (and man page) for PCI fast ethernet cards based
on the ASIX AX88140A chip. Update /sys/conf/files, RELNOTES.TXT,
/sys/i388/i386/userconfig.c, sysinstall/devices.c, GENERIC and LINT
accordingly.
For now, the only board that I know of that uses this chip is the
Alfa Inc. GFC2204. (Its predecessor, the GFC2202, was a DEC tulip card.)
Thanks again to Ulf for obtaining the board for me. If anyone runs
across another, please feel free to update the man page and/or the
release notes. (The same applies for the other drivers.)
FreeBSD should now have support for all of the DEC tulip workalike
chipsets currently on the market (Macronix, Lite-On, Winbond, ASIX).
And unless I'm mistaken, it should also have support for all PCI fast
ethernet chipsets in general (except maybe the SMC FEAST chip, which
nobody seems to ever use, including SMC). Now if only we could convince
3Com, Intel or whoever to cough up some documentation for gigabit
ethernet hardware.
Also updated RELNOTEX.TXT to mention that the SVEC PN102TX is supported
by the Macronix driver (assuming you actually have an SVEC PN102TX with
a Macronix chip on it; I tried to order a PN102TX once and got a box
labeled 'Hawking Technology PN102TX' that had a VIA Rhine board inside
it).
Nicolas Souchu [Sat, 9 Jan 1999 18:08:24 +0000 (18:08 +0000)]
Change /dev/smb and /dev/iic interface to allow user programs to interact with
devices dynamically. That means,
+ only one /dev/iic or /dev/smb device for each smb/iic bus to access
+ I2C/SMB device address must be given to any ioctl
+ new devices may be plugged and accessed after boot, which was
impossible previously (device addresses were hardcoded into
the kernel)
Bruce Evans [Sat, 9 Jan 1999 16:28:33 +0000 (16:28 +0000)]
Removed ROOTSLICE_HUNT. The root device is now found better by
getvfsent() in most cases. (The main exception is when /etc/fstab
still hasn't been converted to use a slice for the root device, the
root device is a SCSI device, and the /dev/sd* inode for this device
still hasn't been renamed to /dev/da*.)
Doug Rabson [Sat, 9 Jan 1999 14:59:50 +0000 (14:59 +0000)]
Implement a mechanism for a module to report a small amount of module
specific data back to the user via kldstat(2). Use that mechanism in
the syscall handler to report the syscall number used.
Bruce Evans [Sat, 9 Jan 1999 13:50:52 +0000 (13:50 +0000)]
Removed the asm version of translate_bytes(). When both the C
version and the asm version are inlined, and everything is cached,
the asm version is 1.75 times slower than the C version on P5's.
On K6's, it is only 1.25 times slower.
Bruce Evans [Sat, 9 Jan 1999 13:43:09 +0000 (13:43 +0000)]
Removed buggy, `#if 0'ed asm version of translate_bytes() instead of
fixing it. See rev.1.22 of ../sound/audio.c for fixes. When both
the C version and the asm version are inlined, and everything is cached,
the asm version is 1.75 times slower than the C version on P5's. On
K6's, it is only 1.25 times slower.
Bruce Evans [Sat, 9 Jan 1999 13:27:37 +0000 (13:27 +0000)]
Don't put operands in clobber lists, since this is dubious for old
versions of gcc and broken for current versions of egcs. The asm
here (for translate_bytes()) is now an interesting example of one
that needs to be volatile to work.
Fixed missing "memory" in the clobber list for translate_bytes().
Submitted by: "John S. Dyson" <dyson@iquest.net> but rewritten by me
Greg Lehey [Sat, 9 Jan 1999 03:00:01 +0000 (03:00 +0000)]
- Format corrections for troff output
- Comment out the description of the unimplemented replace command
- Explain in even stronger language that resetconfig is not for
everyday use
Motivated by: Marko Schütz <marko@ki.informatik.uni-frankfurt.de>
- Correct the description of the start command (no longer used to
start vinum, just specific objects)
Motivated by: dg
- Remove .TH N commands, which conflict badly with the doc macros,
causing strange headings in nroff output and endless loops in troff.
The current version produces warning messages with some screen
sizes, and will be fixed when I have time.
Bug-report: docs/9328 (nroff) Reported-by: joerg (troff)
- Add gotcha info for the setupstate keyword and the use of label and
resetconfig.
- Add bug entry for the warning messages introduced by fixing
docs/9328.
Warner Losh [Sat, 9 Jan 1999 00:43:27 +0000 (00:43 +0000)]
Add Hitachi SH-3, SH-4, ARM, PPC, 68k PA-ARCH and a few others to PE
file types. Also add bit interpretation from NetBSD to give more
details about the file.
Fix faulty logic in handling userconfig_script, INTRO_USERCONFIG and
RB_CONFIG.
Now, the code should do the right thing in the following cases, when
kernel is compiled with INTRO_USERCONFIG:
* when booted without userconfig_script and without RB_CONFIG, present
intro screen, and wait for user input.
* when booted with userconfig_script and without RB_CONFIG, DON'T present
intro screen unless explicitly asked in userconfig_script, basing on
assumption that if a user loads userconfig_script, (s)he already
decided what parameters to configure. Proceed with booting.
* when booted without userconfig_script, and with RB_CONFIG, enter
configuration utility and wait for user input.
* when booted with userconfig_script, and with RB_CONFIG, execute all
commands from userconfig_script, and DON'T leave the config utility,
but wait for user input.
And finally, regardless of the combination of the above parameters,
when intro screen is invoked either first or next times, and user
chooses to go back to CLI interface, unblock the quit command.