Commit Graph

21235 Commits

Author SHA1 Message Date
Matt Jacob 966a2adf7f Properly initialize softc. Do some minor SCSI_CDB6_LEN changes.
Obtained from:gibbs@freebsd.org
2000-07-14 19:41:43 +00:00
Matt Jacob bc07f47f5d Add SCSI_CDB6_LEN macro (where 0 ==> 256).
Obtained from:gibbs@freebsd.org
2000-07-14 19:40:54 +00:00
Bill Paul eddceb0d2b Close PR# 19904: remember to call sf_setmulti() when initializing the
interface so the multicast filter will be programmed correctly.
2000-07-14 19:11:02 +00:00
Archie Cobbs f8725add80 Bump __FreeBSD_version to mark the ether_ifattach()/ether_ifdetach() changes.
This allows the VMWare port to be unbroken, using a patch based on it.

Requested by:	haro@tk.kubota.co.jp (Munehiro Matsuda)
2000-07-14 15:44:58 +00:00
Sheldon Hearn 866c1fb1b7 Add options<sp><tab>MDNSECT=2000 . 2000-07-14 12:21:14 +00:00
Sheldon Hearn b36ee384e6 Actually allow ``options MDNSECT=<numsects>'' in kernel configs to
specify the default maximum size of malloc(9)-backed md(4) devices
and complete the documentation of this option.
2000-07-14 12:14:13 +00:00
David Malone 4ebb509c1f Certain error contitions cause msdosfs_rename() to decrement the
vnode reference count on 'fdvp' more times than it should.

PR:		17347
Submitted by:	Ian Dowse <iedowse@maths.tcd.ie>
Approved by:	bde
2000-07-14 11:52:56 +00:00
Paul Saab 88f675ba30 Change the way NMI's are handled. Before, if DDB was enabled and
a NMI occured, you could type continue in DDB and the kernel would
not attempt to detect what type of NMI was recieved.  Now we check
for the type of NMI first and then go to DDB if it is enabled.

This will solve the problem with having DDB enabled and getting an
NMI due to some possibly bad error and being able to continue the
operation of the kernel when you really want to panic and know
what happened.

Submitted by:	jhb
2000-07-14 11:49:44 +00:00
Jeroen Ruigrok van der Werven 514baf3f99 Fix typo, teh -> the. 2000-07-14 11:17:16 +00:00
Bill Paul c5e8fc022f sis_miibus_writereg() was checking for SIS_TYPE_900 and phy != 0 twice
due to a small cut & paste-o on my part. It happens this didn't hurt
anything, but it's still wrong.
2000-07-14 05:30:48 +00:00
Yoshihiro Takahashi 11c2252a1f Merged from sys/boot/i386/libi386/biosdisk.c revision 1.31. 2000-07-14 04:23:45 +00:00
Robert Watson bc373480dc o Marius pointed out an unusually inconvenient upper bound on extended
attribute data size.
o Fortunately it turned out to be an unused constant left over from an
  earlier implementation, and is therefore being removed so as not to
  confuse casual observers.

Submitted by:	mbendiks@eunet.no
2000-07-14 03:30:52 +00:00
Archie Cobbs 21b8ebd926 Make all Ethernet drivers attach using ether_ifattach() and detach using
ether_ifdetach().

The former consolidates the operations of if_attach(), ng_ether_attach(),
and bpfattach(). The latter consolidates the corresponding detach operations.

Reviewed by:	julian, freebsd-net
2000-07-13 22:54:34 +00:00
Robert Watson e8483a05a6 o Commit two of two, introducing __cap_{get,set}_{fd,file} syscalls to
modify capability sets on files.

Obtained from:	TrustedBSD Project
2000-07-13 20:38:52 +00:00
Robert Watson 92eebb8a9b o Introduce syscall prototypes, stubs for __cap_{get,set}_{fd,file},
syscalls to manage capability sets on files.  First of two commits.

Obtained from:	TrustedBSD Project
2000-07-13 20:31:24 +00:00
Andrew Gallatin 73acacf4ca magnetic tape support
Submitted by: Clem Cole <clemc@mro.dec.com>
2000-07-13 20:04:21 +00:00
David Malone cc72822764 Extra sanity check when arp proxyall is enabled. Don't send an arp
reply if the requesting machine isn't on the interface we believe
it should be. Prevents arp wars when you plug cables in the wrong
way around.

PR:		9848
Submitted by:	Ian Dowse <iedowse@maths.tcd.ie>
Not objected to by:	wollman
2000-07-13 19:31:01 +00:00
David Greenman da6efda67d Quirk entry for TeraSolutions TRC-22 RAID controller to keep mintags
from dropping below 55 due to temporary resource shortages.
2000-07-13 07:58:04 +00:00
Matt Jacob e8ad1d0707 Handle (for now) trivial one level bridge case so we can get the
slot that the bridge happens to be in so we get interrupts working
on bridged cards.
2000-07-13 03:45:11 +00:00
Boris Popov 3fbd97427e Prevent possible dereference of NULL pointer.
Submitted by:	Marius Bendiksen <mbendiks@eunet.no>
2000-07-13 02:17:14 +00:00
John Baldwin 9c386f6b7d For infinite timeouts, set both the tv_sec and tv_usec fields to zero in
poll() and select().

Noticed by:	Wesley Morgan <morganw@chemicals.tacorp.com>
2000-07-13 02:12:25 +00:00
Archie Cobbs 051fbf7d66 Fix race condition caused by using NG_SEND_DATAQ() where we meant
to use ng_queue_data().

Reported by:	Udo Erdelhoff <ue@nathan.ruhr.de>
2000-07-12 23:55:07 +00:00
John Baldwin 4da144c091 Fix a very obscure bug in select() and poll() where the timeout would
never expire if poll() or select() was called before the system had been
in multiuser for 1 second.  This was caused by only checking to see if
tv_sec was zero rather than checking both tv_sec and tv_usec.
2000-07-12 22:46:40 +00:00
Jayanth Vijayaraghavan 7d20010979 re-enable the tcp newreno code. 2000-07-12 22:00:46 +00:00
John Baldwin 1dce5cb37f The new and improved boot0, v1.1. This version adds the following:
- Autodetection and support of the BIOS EDD extensions to work around the
  1024 cylinder limit on all but really ancient BIOS's.
- To work around some BIOS's which break when EDD is used with older drives,
  we only attempt to use EDD if the cylinder is > 1023.
- Since this new code required more space than we had left, expand boot0 to
  2 sectors (1024 bytes) in length.
- Add support for boot0 being multiple sectors using predefined constants.
  If boot0 needs to be extended in the future, all that is required is
  bumping the NUM_SECTORS constant.
- Now that we have more room to work with, add a few more fs type
  descriptions while making others more verbose.
2000-07-12 18:11:54 +00:00
Jun-ichiro itojun Hagino f38211642f remove m_pulldown statistics, which is highly experimental and does not
belong to *bsd-merged tree
2000-07-12 16:39:13 +00:00
Yoshihiro Takahashi d70f8cefa0 Backed out a part of previous commit. The function name conflicts.
Pointed out by:	haro@tk.kubota.co.jp (Munehiro Matsuda)
2000-07-12 10:15:43 +00:00
Doug Rabson e547d6fd34 Add support for Intel's i810 chipset with integrated graphics. An
associated patch to XFree86 allows the X server to work with this chipset
on FreeBSD. Additional work will include porting the Linux 3D driver.

Submitted by: Ruslan Ermilov <ru@FreeBSD.org>
2000-07-12 10:13:07 +00:00
Poul-Henning Kamp 6aafb00805 This in essence completes the receive path. 2000-07-12 09:57:00 +00:00
Jun-ichiro itojun Hagino 07632cbf66 correct rtentry reference count in in6_ifloop_request().
if you reconfigure inet6 too much, the reference count can go
into negative by mistake.  KAME in6.c 1.98 -> 1.99.
2000-07-12 05:20:41 +00:00
John Baldwin 2b2b44c983 Don't assume that any ISA device that fails to probe is a PnP device,
instead, use the bus_print_child_* functions to display the error message.
Also, since this is more of a warning than an error, hide it behind
bootverbose.

Similarly, if isa_assign_resources() fails to allocate resources to a
device, use bus_print_child_header() instead of device_printf(), and
display the resources that could not be allocated if bootverbose is true.

Approved by:	msmith
Help from:	mdodd
2000-07-12 00:42:08 +00:00
Kirk McKusick d303f71fdc Brain fault, forgot to update ffs_snapshot.c with the new calling convention
for vn_start_write.
2000-07-12 00:27:27 +00:00
Kirk McKusick f2a2857bb3 Add snapshots to the fast filesystem. Most of the changes support
the gating of system calls that cause modifications to the underlying
filesystem. The gating can be enabled by any filesystem that needs
to consistently suspend operations by adding the vop_stdgetwritemount
to their set of vnops. Once gating is enabled, the function
vfs_write_suspend stops all new write operations to a filesystem,
allows any filesystem modifying system calls already in progress
to complete, then sync's the filesystem to disk and returns. The
function vfs_write_resume allows the suspended write operations to
begin again. Gating is not added by default for all filesystems as
for SMP systems it adds two extra locks to such critical kernel
paths as the write system call. Thus, gating should only be added
as needed.

Details on the use and current status of snapshots in FFS can be
found in /sys/ufs/ffs/README.snapshot so for brevity and timelyness
is not included here. Unless and until you create a snapshot file,
these changes should have no effect on your system (famous last words).
2000-07-11 22:07:57 +00:00
Duncan Barclay 6b55e51be0 Add attribute memory setup warnings 2000-07-11 21:31:59 +00:00
Mark Murray 4d0e6f79d6 Storing to a pointer is (effectively) atomic; no need to protect this
with splhigh(). However, the entropy-harvesting routine needs pretty
serious irq-protection, as it is called out of irq handlers etc.

Clues given by:	bde
2000-07-11 19:37:25 +00:00
Kirk McKusick d4c1816924 Clean up warning about undeclared function by declaring softdep_fsync
in mount.h instead of ffs_extern.h. The correct solution is to use
an indirect function pointer so that the kernel does not have to be
built with options FFS, but that will be left for another day.
2000-07-11 19:28:26 +00:00
Mark Murray 7978f67e28 I think I need to move the newly static variables to the random_state
structure; remind myself in the cooments. Also regroup all the Yarrow
variables at the top of the variable list; they are "special".
(no functional change).
2000-07-11 18:35:33 +00:00
Nick Sayer 5f5af81697 Reserve 149 for the TAP device. Look for it in a source tree near you
soon.
2000-07-11 15:13:49 +00:00
Yoshihiro Takahashi 2446144f7a Merge from the following changes.
sys/conf/files.i386		1.321
sys/dev/syscons/syscons.c	1.343
sys/i386/isa/spkr.c		1.46
sys/isa/fd.c			1.183 and 1.185
sys/isa/syscons_isa.c		1.14
sys/isa/vga_isa.c		1.18
2000-07-11 12:50:34 +00:00
Seigo Tanimura fb0ef52838 Finally merge newmidi.
(I had been busy for my own research activity until the last weekend)

Supported devices:

SB Midi Port			(sbc + midi)
SB OPL3				(sbc + midi)
16550 UART			(midi, needs a trick in your hint)
CS461x Midi Port		(csa + midi)

OSS-compatible sequencer	(seq)

Supported playing software:

playmidi			(We definitely need more)

Notes:

/dev/midistat now reports installed midi drivers. /dev/sndstat reports
only pcm drivers. We need the new name(pcmstat?).

EMU8000(SB AWE) does not sound yet but does get probed so that the OPL3
synth on an AWE card works.

TODO:

MSS/PCI bridge drivers
Midi-tty interface to support general serial devices
Modules
2000-07-11 11:49:33 +00:00
Alfred Perlstein 4c8545c13d #elsif -> #elif
Noticed by: green
2000-07-11 09:41:29 +00:00
Brian Feldman 87a478de7b One should never allocate 4-kilobyte structs and such on the interrupt
stack.  It's bad for your machine's health.

Make the two huge structs in reseed() static to prevent crashes.  This
is the bug that people have been running into and panic()ing on for the
past few days.

Reviewed by:	phk
2000-07-11 06:47:38 +00:00
Poul-Henning Kamp ae74d73718 Newbusify this driver at an expense of 40 extra lines of code. 2000-07-10 19:33:41 +00:00
John Baldwin 492f000557 Always install loader.4th, defaults/loader.conf, and support.4th instead of
only doing so if loader.rc does not exist.  This fixes the problem where
installworld doesn't update /boot/loader.4th, resulting in device.hints not
being loaded after updating past the config(8) changes, which resulted in
mcclock0 not being probed, and a nice kernel panic during boot.
2000-07-10 16:52:42 +00:00
Warner Losh ce1dd19461 Remove the XE_DEBUG define. It shouldn't be defined now that things
are working.  Add a small blurb about XE_DEBUG as it might be useful
to some people troubelshooting problems in the future.

Submitted by:	"Kevin Oberman" <oberman@es.net>
2000-07-10 16:46:21 +00:00
Matt Jacob cf2458c90e Beef up a bit descriptions of SCSI devices and what the drive. 2000-07-10 15:37:03 +00:00
Matt Jacob 08a7e04845 Removing commented out devices I added. 2000-07-10 15:18:20 +00:00
Poul-Henning Kamp 88bab4e40c Finish repo-copy:
Move ufs/ufs/ufs_disksubr.c to kern/subr_disklabel.c.

These functions are not UFS specific and are in fact used all over the place.
2000-07-10 13:48:06 +00:00
Kris Kennaway 682199d834 Don't call printf without a format string. 2000-07-10 07:13:36 +00:00
Mark Murray fb15ada363 Provide more splsofttq() protection for the reseed task (running out of
taskqueue_swi).
2000-07-10 06:40:23 +00:00
Kris Kennaway 8c8970cf16 Don't call printf with no format string. 2000-07-10 06:40:06 +00:00
Kris Kennaway 487730cc8b Don't call printf with no format string. This is technically a security
vulnerability and could in principle be used to upload a new kernel from the
bootloader :-)
2000-07-10 06:33:55 +00:00
Kris Kennaway 26eaf5dcb8 Don't call printf with no format string.
Reviewed by:	msmith
2000-07-10 05:51:56 +00:00
Matt Jacob f919331938 Do the same thing for TurboLaser that was done for Rawhide- make room
for secondary (bridged) PCI busses by making primary PCI instances
16 units apart.
2000-07-10 02:40:49 +00:00
Matt Jacob aa5904a62a Coordinate with change to mcpcia_pci.c- major primary busses on each
hose are 16 PCI instances apart. This allows us to recognize secondary
PCI busses (at least to a first level) until the pci infrastructure is
fixed.

Turn on support for secondary cycles, too.  Redo debug printouts.
2000-07-10 00:34:18 +00:00
Matt Jacob bc08581099 Don't let the infrastructure assign the 'next' PCI bus for us.
Instead, for now (until we get a pci infrastructure cleanup),
assign the PCI bus number to be mcpcia bus instance << 4. This
is to allow secondary bridges some room to be recongnized on
4100 systems.
2000-07-10 00:32:02 +00:00
Boris Popov 2ff087318a Correct SYSINIT execution order in the case when KLD contains more
than one SYSINIT with the same 'subsystem' id and different 'order' id.

Reviewed by:	peter
2000-07-09 23:58:56 +00:00
Mark Murray 43975bd56c Make sure that tasks (running out of taskqueue_swi at splsofttq)
are not interfered with by the harvester.
2000-07-09 16:00:31 +00:00
Alexander Langer d0a28baf34 Add missing "a" in "Soft updates is technique".
PR:		19770
Submitted by:	Udo Erdelhoff <ue@nathan.ruhr.de>
2000-07-09 15:44:02 +00:00
Jun-ichiro itojun Hagino b474779f46 be more cautious about tcp option length field. drop bogus ones earlier.
not sure if there is a real threat or not, but it seems that there's
possibility for overrun/underrun (like non-NOP option with optlen > cnt).
2000-07-09 13:01:59 +00:00
Alexander Langer d61e6649d5 Since this file is doc now, reorganize its structure.
Currently, many drivers support more than one bus of ISA, EISA, MCA,
PCI.

Before this commit, we had, for example, some SCSI devices listed more
than once, iirc, some up to three times (ISA/EISA, MCA, PCI).

Since now the "device" line is common for all of them and they only
differ for the hints stuff, I did the following:

First, list Busses: (E)ISA, MCA, PCI and explain, that only ISA
needs the hints stuff.

Move NIC/SCSI stuff, which were the only split sections, behind these
stuff.  Describe all drivers only one time and list all supported
chips.

List all device (+ hints for ISA, if possible).

I've also added few additional supported chips to some drivers, xl for
example and some SCSI drivers.

Also, softupdates is no longer disabled by default, so the comment should
not say, it's not enabled by default due to license issues.

Approved by:	asmodai

To come:	include PAO devices (imp volunteered for help)
2000-07-09 12:34:53 +00:00
Mark Murray 11197ed12c Small style change; make function names less likely to clash with
existing names. "null" is too common a string; use "null_".
2000-07-09 12:29:24 +00:00
Mark Murray a909184e9d Add entropy-harvesting calls.
/dev/random now has new-and-improved entropy!
2000-07-09 12:26:38 +00:00
Mark Murray 585ebe2b41 Yarrow tweaks; separate the fast and slow reseed tasks so that they don't
stomp on each other; provide constant names (as enums) for the harvester
to use (makes it more self-documenting).
2000-07-09 11:52:12 +00:00
Mark Murray 769afb047c Fix bug with a vraiable that needs to be per-process, not static;
fix formatting of long macros.

Pointed out by:	bde
2000-07-09 11:49:07 +00:00
Jun-ichiro itojun Hagino 595b8a1cdd repair IPV6_JOIN_GROUP to IPv6 all multi.
From: ume
2000-07-09 11:17:17 +00:00
Matt Jacob 6e95418137 Thanks for Andrew Gallatin pointing out that freeing contigmalloc'd
items via free is bad.
2000-07-09 00:18:21 +00:00
Matt Jacob 9215675bc3 Use %p to print a pointer. 2000-07-08 23:24:08 +00:00
Matt Jacob 64ed91d595 Update SCSI device section, per Peter Wemm. I still
think the commented entries in GENERIC are the
right thing to do.
2000-07-08 07:44:01 +00:00
Matt Jacob 62d132e3ab Oops- remove the '0' appended to targbh. 2000-07-08 07:05:40 +00:00
Matt Jacob a4846ce28f Add in the commented out SCSI device entries of
#device         ses             # SCSI Environmental Services (and SAF-TE)
#device         targ            # SCSI Target Mode Code
#device         targbh          # SCSI Target Mode Blackhole Device
#define         pt              # SCSI Processor Target Device

so that people know that they are there.
2000-07-08 07:05:06 +00:00
Matt Jacob 94ad21f31a Add in the commented out SCSI device entries of
#device         ses             # SCSI Environmental Services (and SAF-TE)
#device         targ            # SCSI Target Mode Code
#device         targbh0         # SCSI Target Mode Blackhole Device
#define         pt              # SCSI Processor Target Device

so that people know that they are there.
2000-07-08 07:02:58 +00:00
Kirk McKusick cc3962a9cd Delete README as it is now obsolete. Relevant information is in
README.softupdates.
2000-07-08 02:32:49 +00:00
Kirk McKusick 876578906d Update to reflect current status. 2000-07-08 02:31:21 +00:00
Andrew Gallatin 19a6b3fea6 use contigfree() rather than free() to free memory allocated with
contigmalloc().

reviewed by: wpaul
2000-07-08 00:14:12 +00:00
Brian Feldman 7ceba2d755 Remove two micro-pessimizations I made. Bruce is teaching me well :)
KTRPOINT(p, KTR_GENIO) is more uncommon than error == 0, so it should
be first in the && statement.
2000-07-07 22:11:37 +00:00
Brian Feldman 9d1cfdce2a Change that &@!$# UIO_READ to be UIO_WRITE. I tested the ktrace stuff,
but somehow... pass the pointy hat, again!
2000-07-07 21:52:15 +00:00
John Baldwin 18601b5712 Remove commented out NOMAN variable. 2000-07-07 20:37:11 +00:00
Duncan Barclay 766748ceac Move newbus detection code to alloc routines.
Work around pccard nasties.
2000-07-07 19:13:11 +00:00
David E. O'Brien dd0fdb828a MFS: adjust University of California's copyright. 2000-07-07 18:35:11 +00:00
Boris Popov 3660ebc2c0 Fix support for more than 256 simultaneous mounts. Theoretical limit
is 2^16 mounts per fs type.

Reported by:	Troy Arie Cobb <tcobb@staff.circle.net> via phk
Reviewed by:	bde
2000-07-07 14:01:08 +00:00
Mark Murray fd8b5fb2c7 Honour appropriate no-crypto flags. 2000-07-07 09:38:01 +00:00
Mark Murray da3fb6b476 Darn; didn't commit this with the rest of the entropy gathering code. 2000-07-07 09:06:54 +00:00
Mark Murray c9ec235ca1 Add entropy gathering code. This will work whether the module is
compiled in or loaded.
2000-07-07 09:03:59 +00:00
Kris Kennaway f2542885f0 Bump __FreeBSD_version to note KAME upgrade 2000-07-07 08:39:31 +00:00
Kris Kennaway 549922405f Add missing #include to unbreak IPSEC_DEBUG builds
Submitted by:	Jim Bloom <bloom@reyim.ne.mediaone.net>
2000-07-07 08:36:00 +00:00
Greg Lehey 45b65a5e33 Suppress a warning message about trigraphs.
Approved-by: itojun
2000-07-07 04:09:51 +00:00
Bill Paul 8484ad351d Fix a minor bug in the MAC address unscrambling code.
(Some shift rights should have been shift lefts.)
2000-07-06 19:21:07 +00:00
Julian Elischer 561e4fb9f6 Don't forget to set our MAC address into packets we wre sending out via
netgraph. Eventually we may need to have a separate hook for packets
that already have a source AMC address but for now just drop it in.
Should fix PPPoE.
2000-07-06 15:35:59 +00:00
Nick Hibma 1d3e7ea3dd Properly fix world.
Sorry for breaking things in the first place.
2000-07-06 13:23:35 +00:00
Ollivier Robert ee76ce7fa5 Fix buildworld. 2000-07-06 08:37:34 +00:00
Bill Paul 95674596b9 Add support for the National Semiconductor DP83815 fast ethernet
controller chip. This chip is currently being used on the NetGear
FA312-TX adapter, which I guess is a replacement for the FA310-TX
(PNIC-based).

I added support for this chip by modifying the sis driver since
the SiS 900 and the NS DP83815 have almost the same programming
interface (the RX filter programming and PHY access methods are
different, but the general configuration, DMA scheme and register
layout are identical).

I would have had this done a lot sooner, but getting the damn MAC
address out of the EEPROM proved to be more complicated than expected.
2000-07-06 06:02:04 +00:00
John Baldwin 8dfe6fb59c - Inline all the functions that are only called once. This results in a
savings of 68 bytes in boot2.
- Also add a comment warning that you can't remove the empty exit()
  function.
2000-07-06 01:51:27 +00:00
John Baldwin 54ff3ae038 Doh. The disklabel is not 0x200 bytes of zeros, but it is 0x200 bytes long. 2000-07-06 00:29:40 +00:00
John Baldwin a6bef20793 Clarify the comments in here a bit. The first sector of boot2 is not just
zeros, it is actually the disklabel itself.  boot2.ldr is simply a
placeholder in the boot2 binary.
2000-07-06 00:22:50 +00:00
John Baldwin bd61ce880f Emulate the WBINVD instruction when it is called by the BIOS. 2000-07-06 00:13:21 +00:00
Bill Paul 1be1972c4b Close PR# 19617: add support for VIA VT6102 NICs to VIA Rhine driver. 2000-07-05 21:37:21 +00:00
Jun-ichiro itojun Hagino b2874e0082 add list of KAME files - may not be 100% correct 2000-07-05 19:05:19 +00:00
Nick Hibma 0c880a36fb Use the packed attribute for the descriptor on the wire 2000-07-05 08:11:43 +00:00
John Baldwin 9701cd40b4 Support for unsigned integer and long sysctl variables. Update the
SYSCTL_LONG macro to be consistent with other integer sysctl variables
and require an initial value instead of assuming 0.  Update several
sysctl variables to use the unsigned types.

PR:		15251
Submitted by:	Kelly Yancey <kbyanc@posi.net>
2000-07-05 07:46:41 +00:00
Matt Jacob 1fcf5deb4a Oops! If we're deciding a command is now really dead, make *darned*
sure that it really is by issuing a ISPCTL_ABORT_CMD just on the
off chance the f/w will start it up again and, ha ha, start using
the DMA resources we gave it but are now taking away.
2000-07-05 06:44:17 +00:00
Matt Jacob 3e97a5b432 Clean up ISPCTL_ABORT_CMD function to not be too chatty if it succeeds,
or even if it fails with INVALID_PARM (which just means that the handle
doesn't refer to an active commane).
2000-07-05 06:41:36 +00:00
Warner Losh 5d10777c46 End two weeks of on and off debugging. Fix the crash on the Nth
insertion of a CF card, for random values of N > 1.  With these fixes,
I've been able to do 100 insert/remove of the cards w/o a crash with
lots of system activity going on that in the past would help trigger
the crash.

The problem:

FreeBSD creates dev_t's on the fly as they are needed and never
destroys them.  These dev_t's point to a struct disk that is used for
housekeeping on the disk.  When a device goes away, the struct disk
pointer becomes a dangling pointer.  Sometimes when the device comes
back, the pointer will point to the new struct disk (in which case the
insertion will work).  Other times it won't (especially if any length
of time has passed, since it is dependent on memory returned from
malloc).

The Fix:

There is one of these dev_t's that is always correct.  The
device for the WHOLE_DISK_SLICE is always right.  It gets set at
create_disk() time.  So, the fix is to spend a little CPU time and
lookup the WHOLE_DISK_SLICE dev_t and use the si_disk from that in
preference to the one that's in the device asking to do the I/O.  In
addition, we change the test of si_disk == NULL meaning that the dev
needed to inherit properties from the pdev to dev->si_disk !=
pdev->si_disk.  This test is a little stronger than the previous test,
but can sometimes be fooled into not inheriting.  However, the results
of this fooling are that the old values will be used, which will
generally always be the same as before.  si_drv[12] are the only
values that are copied that might pose a problem.  They tend to change
as the si_disk field would change, so it is a hole, but it is a small
hole.

One could correctly argue that one should replace much of this code
with something much much better.  I would be on the pro side of that
argument.

Reviewed by: phk (who also ported the original patch to current)
Sponsored by: Timing Solutions
2000-07-05 06:01:33 +00:00
Robert Watson 89b7801213 o Introduce cap_{get,set}_{file,fd}() syscall wrappers, associated with
soon to be committed syscall stubs.  These calls will be used to get
  and set capability state associated with executables.

Obtained from:	TrustedBSD Project
2000-07-05 04:20:59 +00:00
Jun-ichiro itojun Hagino 7ee982bcac split net.inet6.ip6.rtexpire (and others) from net.inet.ip.*.
From: Andrzej Bialecki <abial@webgiro.com>
2000-07-05 01:40:29 +00:00
Jun-ichiro itojun Hagino 261216553f correct compilation with IPSEC_IPV6FWD.
From: Ollivier Robert <roberto@keltia.freenix.fr>
2000-07-05 01:14:45 +00:00
Cameron Grant 05861de62a enable newpcm module building 2000-07-04 23:35:21 +00:00
Cameron Grant 4f767b9d7d newpcm module makefiles
once built, 'kld_load snd_driver; kldunload snd_driver' will load all sound
drivers and unload all unattached ones.  attached drivers do not yet support
unloading.
2000-07-04 23:32:15 +00:00
Robert Watson 950ec7e473 o Update e-mail address associated with /dev/audit to reflect
FreeBSD.org e-mail.
o Notice also that it's listed as "aud" not "audit" which will
  probably change in the near future with updates to the auditing
  implementation.
2000-07-04 20:40:20 +00:00
Jun-ichiro itojun Hagino 2f0dab8f41 be sure to wipe out m_pkthdr when you set M_PKTHDR, you may see junk pointer
in m_pkthdr portion.
actually, we should not change pkthdr mbuf <-> non-pkthdr mbuf.
2000-07-04 18:43:32 +00:00
Munechika SUMIKAWA d5015639d8 Add 'device stf', 6to4(one of IPv6 over IPv4 encapsulations) interface. 2000-07-04 17:37:21 +00:00
Jun-ichiro itojun Hagino 686cdd19b1 sync with kame tree as of july00. tons of bug fixes/improvements.
API changes:
- additional IPv6 ioctls
- IPsec PF_KEY API was changed, it is mandatory to upgrade setkey(8).
  (also syntax change)
2000-07-04 16:35:15 +00:00
Yoshihiro Takahashi 6601e641fd Sync with sys/i386/conf/GENERIC revisions 1.258 and 1.259. 2000-07-04 12:31:46 +00:00
Poul-Henning Kamp 77978ab8bc Previous commit changing SYSCTL_HANDLER_ARGS violated KNF.
Pointed out by:	bde
2000-07-04 11:25:35 +00:00
Poul-Henning Kamp 0cfaeeee87 Fix the "almost clone" semantics. 2000-07-04 10:06:34 +00:00
John Baldwin 9a20f99adf Replace the PQ_*CACHE options with a single PQ_CACHESIZE option that you
set equal to the number of kilobytes in your cache.  The old options are
still supported for backwards compatibility.

Submitted by:	Kelly Yancey <kbyanc@posi.net>
2000-07-04 08:55:18 +00:00
Kirk McKusick 22e5a6234e Get userland visible flags added for snapshots to give a few days
advance preparation for them to get migrated into place so that
subsequent changes in utilities will not fail to compile for lack
of up-to-date header files in /usr/include.
2000-07-04 04:58:34 +00:00
Kirk McKusick c904bbbdd8 Simplify and rationalise the management of the vnode free list
(preparing the code to add snapshots).
2000-07-04 04:32:40 +00:00
Kirk McKusick e6796b67d9 Move the truncation code out of vn_open and into the open system call
after the acquisition of any advisory locks. This fix corrects a case
in which a process tries to open a file with a non-blocking exclusive
lock. Even if it fails to get the lock it would still truncate the
file even though its open failed. With this change, the truncation
is done only after the lock is successfully acquired.

Obtained from:	 BSD/OS
2000-07-04 03:34:11 +00:00
Kirk McKusick 3764219663 If a buffer flush fails when trying to reclaim a vnode, it is too
late to save the vnode, so just toss any remaining unwritten buffers
rather than leaving them lying around to make trouble in the future.
2000-07-04 03:23:29 +00:00
Matt Jacob 9678910bae A side effect of new 12160 f/w- there is only one set whether target
mode enabled or not now (like the FC cards).
2000-07-04 02:06:00 +00:00
Matt Jacob 99af801d6b roll new Qlogic 2200 firmware in place 2000-07-04 02:05:13 +00:00
Matt Jacob 8c4eab6214 roll new Qlogic 2100 firmware in place 2000-07-04 02:04:48 +00:00
Matt Jacob 615493f292 roll new 12160.h firmware in place 2000-07-04 02:04:24 +00:00
Matt Jacob c464389f4b Remove obsolete isp_dogactive tag. 2000-07-04 01:06:42 +00:00
Matt Jacob 8bdda719ae Fix completely stupid and idiotiuc sprintfs in isp_inline.h with
with the STRNCAT function.
2000-07-04 01:06:23 +00:00
Matt Jacob f6e75de230 Add in config_hook for catching when interrupts are safe- this allows
us to not the ints are ok and also to (re)ENABLE isp interrupts. Remove
all splcam()/splx() invocates and replace them with ISP_LOCK/ISP_UNLOCK
macros.
2000-07-04 01:05:43 +00:00
Matt Jacob df9d46b6d9 Add in isp_lock/isp_unlock inlines. Add in an islocked/intsok flag
to isp_osinfo substructure (all in prep for SMP). Define MBOX_WAIT_COMPLETE
and MBOX_NOTIFY_COMPLETE macros so that we can now (temp) use tsleep
to wait for mailbox completion. Requires us to guess whether we're
servicing an interrupt or not- will use intr_nesting_level.

Add local strncat function.
2000-07-04 01:04:35 +00:00
Matt Jacob 1d460ef8d5 Change delay loop in new isp_mboxcmd to the use of the new MBOX_WAIT_COMPLETE
macro. Change notification of completion of a mailbox command in isp_intr
to MBOX_NOTIFY_COMPLETE macro.
2000-07-04 01:02:38 +00:00
Matt Jacob 469b6b9efb Change startup locking. Use new isp_handle_index function
for indexing off of handles to get dma maps.
2000-07-04 01:01:15 +00:00
Kirk McKusick bdbd3ff7cf Update tags directive to reflect the new location of soft updates
and the reorganization of the eisa directory.
2000-07-04 00:18:43 +00:00
Cameron Grant e71eb9c328 do-nothing module that depends on all sound drivers 2000-07-03 21:00:44 +00:00
Cameron Grant f314f3dad2 add module metadata. this is a hack, sound drivers will eventually present a
bus to which pcm, mixer, etc will attach.
2000-07-03 20:52:27 +00:00
Poul-Henning Kamp b7ffb34243 Pull the rug under block mode devices. they return ENXIO on open(2) now. 2000-07-03 13:48:37 +00:00
Poul-Henning Kamp 7095e0970e Experiemntal ascii based device configuration mechanism.
This may or may not survive, decision will be made well before 5.0-R
2000-07-03 13:34:18 +00:00
Poul-Henning Kamp 3275cf7379 Make the two calls from kern/* into softupdates #ifdef SOFTUPDATES,
that is way cleaner than using the softupdates_stub stunt, which
should be killed when convenient.

Discussed with:	mckusick
2000-07-03 13:26:54 +00:00
Poul-Henning Kamp 3d5c4fdcf2 Include SOFTUPDATES in NOTES/LINT by default. 2000-07-03 13:24:25 +00:00
Poul-Henning Kamp a5b5959dc8 Account for packets we clean out when we disconnect. 2000-07-03 13:08:56 +00:00
Poul-Henning Kamp 9282307a5d Add device_set_softc() which does the obvious.
Not objected to by:	dfr
2000-07-03 13:06:29 +00:00
Poul-Henning Kamp 82d9ae4e32 Style police catches up with rev 1.26 of src/sys/sys/sysctl.h:
Sanitize SYSCTL_HANDLER_ARGS so that simplistic tools can grog our
sources:

        -sysctl_vm_zone SYSCTL_HANDLER_ARGS
        +sysctl_vm_zone (SYSCTL_HANDLER_ARGS)
2000-07-03 09:35:31 +00:00
Chris Costello d41c16130b Instead of just blindly setting -rw-rw-rw-:
o Set access mode to -r--r--r-- if SS_CANTRCVMORE is set and the receive
  buffer is empty.

o Set access mode to --w--w--w- is SS_CANTSENDMORE is set.

Discussed with:	alfred
2000-07-02 23:56:45 +00:00
Gerard Roudier 3b2b8a84d3 - Various comment fixes and additions.
- Add 2 explicit (paranoid?) memory barriers in the
  interrupt code (After the reading of the `flag' and
  prior to looking at the data, of course. :-) ).
- Remove obsolete informations from the README.sym file.

This commit actually results in no object difference
for IA32, but 2x`mb' added for Alpha.
2000-07-02 21:26:50 +00:00
Chris Costello 417779230b Report -rw-rw-rw file access modes in soo_stat.
Reviewed by:	alfred
2000-07-02 19:31:00 +00:00
Ollivier Robert c790e2240e This is the patch to make my soundcard, a Creative Ensoniq AudioPCI (an
es1371 chip, device id 0x58801274 rev 0x02).

Submitted by:	Kenneth Wayne Culver <culverk@wam.umd.edu>
2000-07-02 14:17:41 +00:00
Brian Feldman 42ebfbf227 Modify ktrace's general I/O tracing, ktrgenio(), to use a struct uio *
instead of a struct iovec * array and int len.  Get rid of stupidly trying
to allocate all of the memory and copyin()ing the entire iovec[], and
instead just do the proper VOP_WRITE() in ktrwrite() using a copy of
the struct uio that the syscall originally used.

This solves the DoS which could easily be performed; to work around the
DoS, one could also remove "options KTRACE" from the kernel.  This is
a very strong MFC candidate for 4.1.

Found by:	art@OpenBSD.org
2000-07-02 08:08:09 +00:00
Brian S. Dean c6d3f3bfc1 Fix my own style bugs (use of spaces instead of tabs for indentation).
This is a style-only change.
2000-07-01 02:40:13 +00:00
Archie Cobbs c38d75f43d Previous commit didn't work; this time really fix it. 2000-06-30 16:38:24 +00:00
Archie Cobbs 44ce4b7dcd Provide forward declarations for struct ifnet and struct mbuf
to avoid compiler warnings.
2000-06-29 22:30:42 +00:00
Archie Cobbs 6ec86086e7 Fix kernel build breakage when 'device ether' was not included. 2000-06-29 19:14:28 +00:00
Archie Cobbs 6c66bbed1a Move the securelevel check before loading KLD's into linker_load_file(),
instead of requiring every caller of linker_load_file() to perform the
check itself. This avoids netgraph loading KLD's when securelevel > 0,
not to mention any future code that may call linker_load_file().

Reviewed by:	dfr
2000-06-29 17:57:04 +00:00
Alexander Langer dba11ce52b - MSDOSFS can do both FAT _and_ FAT32. Since the name "MSDOS" might be
confusing, explecitely mention this.
- softupdates' README is no longer in contrib/softupdates. Fix new location.
2000-06-29 10:45:55 +00:00
Boris Popov 5badeabaca Move #ifdef to the right place. 2000-06-29 09:26:26 +00:00
John Baldwin 0b74850760 Change the fault message to say 'BTX halted' isntead of 'System halted' to
avoid confusion.

Submitted by:	George Scott <George.Scott@its.monash.edu.au>
2000-06-29 08:24:50 +00:00
Paul Saab 898e18b849 Only try to detect Linksys PCMCIA cards when we are in a pccard
environment.  This fixes the breakage to ISA ethernet cards.

Reviewed by:	peter
2000-06-29 07:31:37 +00:00
Satoshi Asami 1dea2d58f0 Increment __FreeBSD_version to mark perl5 upgrade in -current. (I
know, a little late, but snaps with the new perl5 aren't showing up
yet so it should still help.)
2000-06-29 06:26:13 +00:00
Andrey A. Chernov 5911ecd993 Add randomdev_load="NO" 2000-06-29 06:10:14 +00:00
Boris Popov 99063cf89e If kernel compiled with INVARIANTS:
On unload, remove references from freelist to memory type defined by module.
Print a warning if module defines and allocate its own memory type, but
didn't free it all on unload.

Reviewed by:	peter
2000-06-29 03:41:30 +00:00
Andrew Gallatin d8cbedb6b0 remove breakage that snuck in with my last commit
pointed out by: peter
2000-06-29 02:26:48 +00:00
John Baldwin 52f5035190 Rework the detecting of the rdmsr and wrmsr instructions in the v86
monitor so that the codepath is cleaner and easier to maintain in the
future.
2000-06-29 01:25:31 +00:00
Boris Popov 6843189ab9 Fix memory leakage on module unload.
Spotted by:	fixed INVARIANTS code
2000-06-29 01:19:12 +00:00
Boris Popov 432a84000f Fix memory leakage on module unload.
Spotted by:	fixed INVARIANTS code
2000-06-29 01:12:47 +00:00
Peter Wemm c20ac811f3 Add device_identify methods so that we do not need the
hint.sc.0.at=isa and hint.vga.0.at=isa  hints in order for these to
probe/attach.
2000-06-28 22:53:35 +00:00
Archie Cobbs e962a82308 Fix incorrectly implemented receive ACK timeout algorithm:
instead of bumping the recvAck counter by one, pretend that
all outstanding xmit packets are acknowleged, and restart
transmitting anew, with an empty (but halved) transmit window.

Put a lower bound on the adaptive timeout value.
2000-06-28 19:43:34 +00:00
Chris Costello 726bd7bebf fdesc_getattr:
Don't fake any file types, just set vap->va_type to IFTOVT(stb.st_mode).
  If something does not report its mode, vap->va_type is set to VNON
  accordingly.
2000-06-28 19:18:25 +00:00
Chris Costello 0e8363eca9 Report a file type (S_IFIFO) in kqueue_stat(). 2000-06-28 19:16:27 +00:00
Mark Murray d44f401738 Staticize a variable.
This fixes the case where linking randomdev into the kernel statically
can cause panics at shutdown time.

Reported by:	sos
2000-06-28 18:51:15 +00:00
Roger Hardiman 231b1f331e Update to driver 2.14. Adds new Tuner types for Hauppauge WinTV cards 2000-06-28 15:09:12 +00:00
KATO Takenori 1753374bc6 Disabled ida, amr and mlx devices. 2000-06-28 03:25:47 +00:00
KATO Takenori 2e76b6aefc Merged from sys/i386/i386/userconfig.c revision 1.181. 2000-06-28 03:23:42 +00:00
KATO Takenori 65c8c4cd2c Merged from sys/i386/isa/spkr.c revision 1.47. 2000-06-28 03:20:56 +00:00
KATO Takenori aae33d3c2a Merged from sys/i386/isa/npx.c revision 1.83. 2000-06-28 03:19:44 +00:00
KATO Takenori 9e3aaab780 Merged from sys/i386/isa/isa_dma.c revision 1.6. 2000-06-28 03:18:51 +00:00
KATO Takenori 3606d88937 Merged from sys/i386/isa/clock.c revision 1.152. 2000-06-28 03:17:51 +00:00
KATO Takenori 8ff264ff5b Merged from sys/i386/conf/GENERIC revisions 1.261 and 1.262. 2000-06-28 03:15:27 +00:00
Alfred Perlstein 1a61fa5e0d don't panic the system when fpathconv is called on an unsupported filetype. 2000-06-27 23:08:36 +00:00
Alfred Perlstein 974c7068d7 by changing the logic here we can support dynamic additions of new
filetypes.

Reviewed by: green
2000-06-27 22:46:35 +00:00
Alfred Perlstein ff56ceb1da use warnings
use strict
add 'usage'
2000-06-27 22:41:12 +00:00
Alfred Perlstein 70cb8de9ba if there are leading zeros fail the lookup
Pointed out by: Alexander Viro <viro@math.psu.edu>
2000-06-27 21:37:17 +00:00
John Baldwin bce816b9cc - Don't blindly assume that there are 8 hard drives installed. Instead,
use the BIOS Equipment List to determine how many hard drives are
  installed and if the drive number we received in %dl is valid.
- Don't bother to disable interrupts when setting up the stack.  The 8086
  and beyond implicitly disable interrupts after an instruction that sets
  %ss (for example, a pop or a mov) so that you can safely set %ss and %sp
  in two consecutive instructions.  An exception to this is the lss
  instruction, which can set both registers simultaneously and thus doesn't
  need this hack.
- Add support for EDD BIOS extensions to support booting off of hard drives
  of nearly arbitrary length.
2000-06-27 20:04:10 +00:00
Matt Jacob 28445eef28 Fix usage of DELAY (SYS_DELAY is the platform independent local
define).  Fix stupidity wrt checking whether we've gone to
LOOP_PDB_RCVD loopstate- it's okay to be greater than this state.
D'oh! Protect calls to isp_pdb_sync and isp_fclink_state with IS_FC
macros.

Completely redo mailbox command routine (in preparation to make this
possibly wait rather than poll for completion).

Make a major attempt to solve the 'lost interrupt' problem

1. Problem

The Qlogic cards would appear to 'lose' interrupts, i.e., a legitimate
regular SCSI command placed on the request queue would never complete
and the watchdog routine in the driver would eventually wakeup and
catch it. This would typically only happen on Alphas, although a
couple folks with 700MHz Intel platforms have also seen this.

For a long time I thought it was a foulup with f/w negotiations of
SYNC and/or WIDE as it always seemed to happen right after the
platform it was running on had done a SET TARGET PARAMETERS mailbox
command to (re)enable sync && wide (after initially forcing
ASYNC/NARROW at startup). However, occasionally, the same thing
would also occur for the Fibre Channel cards as well (which, ahem,
have no SET TARGET PARAMETERS for transfer mode).

After finally putting in a better set of watchdog routines for the
platforms for this driver, it seemed to be the case that the command
in question (usually a READ CAPACITY) just had up and died- the
watchdog routine would catch it after ~10 seconds. For some platforms
(NetBSD/OpenBSD)- an ABORT COMMAND mailbox command was sent (which
would always fail- indicating that the f/w denied knowledge of this
command, i.e., the f/w thought it was a done command). In any case,
retrying the command worked. But this whole problem needed to be
really fixed.

2. A False Step That Went in The Right Direction

The mailbox code was completely rewritten to no longer try and grab
the mailbox semaphore register and to try and 'by hand' complete
async fast posting completions. It was also rewritten to now have
separate in && out bitpatterns for registers to load to start and
retrieve to complete. This means that isp_intr now handles mailbox
completions.

This substantially simplifies the mailbox handling code, and carries
things 90% toward getting this to be a non-polled routine for this
driver.

This did not solve the problem, though.

3. Register Debouncing

I saw some comments in some errata sheets and some notes in a Qlogic
produced Linux driver (for the Qlogic 2100) that seemed to indicate
that debouncing of reads of the mailbox registers might be needed,
so I added this.  This did not affect the problem. In fact, it made
the problem worse for non-2100 cards.

5. Interrupt masking/unmasking

The driver *used* to do a substantial amount of masking/unmasking
of the interrupt control register. This was done to make sure that
the core common code could just assume it would never get pre-empted.

This apparently substantially contributed to the lost interrupt
problem.  The rewrite of the ICR (Interrupt Control Register),
which is a separate register from the ISR (Interrupt Status Register)
should not have caused any change to interrupt assertions pending.
The manual does not state that it will, and the register layout
seems to imply that the ICR is just an active route gate. We only
enable PCI Interrupts and RISC Interrupts- this should mean that
when the f/w asserts a RISC interrupt and (and the ICR allows RISC
Interrupts) and we have PCI Interrupts enabled, we should get a
PCI interrupt. Apparently this is a latch- not a signal route.

Removing this got rid of *most* but not all, lost interrupts.

5. Watchdog Smartening

I made sure that the watchdog routine would catch cases where the
Qlogic's ISR showed an interrupt assertion. The watchdog routine
now calls the interrupt service routine if it sees this. Some
additional internal state flags were added so that the watchdog
routine could then know whether the command it was in the middle
of burying (because we had time it out) was in fact completed by
the interrupt service routine.

6. Occasional Constipation Of Commands..

In running some very strenous high IOPs tests (generating about
11000 interrupts/second across one Qlogic 1040, one Qlogic 1080
and one Qlogic 2200 on an Alpha PC164), I found that I would get
occasional but regular 'watchdog timeouts' on both the 1080 and
the 2100 cards. This is under FreeBSD, and the watchdog timeout
routine just marks the command in error and retries it.

Invariably, right after this 'watchdog timeout' error, I'd get a
command completion for the command that I had thought timed out.
That is, I'd get a command completion, but the handle returned by
the firmware mapped to no current command. The frequency of this
problem is low under such a load- it would usually take an 30
minutes per 'lost' interrupt.

I doubled the timeout for commands to see if it just was an edge
case of waiting too short a period. This has no effect.

I gathered and printed out microtimes for the watchdog completed
command and the completion that couldn't find a command- it was
always the case that the order of occurrence was "timeout, completion"
separated by a time on the order of 100 to 150 ms.

This caused me to consider 'firmware constipation' as to be a
possible culprit. That is, resubmission of a command to the device
that had suffered a watchdog timeout seemed to cause the presumed
dead command to show back up.

I added code in the watchdog routine that, when first entered for
the command, marks the command with a flag, reissues a local timeout
call for one second later, but also then issues a MARKER Request
Queue entry to the Qlogic f/w. A MARKER entry is used typically
after a Bus Reset to cause the f/w to get synchronized with respect
to either a Bus, a Nexus or a Target.

Since I've added this code, I always now see the occasional watchdog
timeout, but the command that was about to be terminated always
now seems to be completed after the MARKER entry is issued (and
before the timeout extension fires, which would come back and
*really* terminate the command).
2000-06-27 19:44:31 +00:00
Matt Jacob b85389e117 Add in the enabling of interrupts (to isp_attach). Clean up a busted
comment. Check against firmware state- not loop state when enabling
target mode. Other changes have to do with no longer enabling/disabling
interrupts at will.

Rearchitect command watchdog timeouts-

First of all, set the timeout period for a command that has a
timeout (in isp_action) to the period of time requested *plus* two
seconds. We don't want the Qlogic firmware and the host system to
race each other to report a dead command (the watchdog is there to
catch dead and/or broken firmware).

Next, make sure that the command being watched isn't done yet. If
it's not done yet, check for INT_PENDING and call isp_intr- if that
said it serviced an interrupt, check to see whether the command is
now done (this is what the "IN WATCHDOG" private flag is for- if
isp_intr completes the command, it won't call xpt_done on it because
isp_watchdog is still looking at the command).

If no interrupt was pending, or the command wasn't completed, check
to see if we've set the private 'grace period' flag. If so, the
command really *is* dead, so report it as dead and complete it with
a CAM_CMD_TIMEOUT value.

If the grace period flag wasn't set, set it and issue a SYNCHRONIZE_ALL
Marker Request Queue entry and re-set the timeout for one second
from now (see Revision 1.45 isp.c notes for more on this) to give
the firmware a final chance to complete this command.
2000-06-27 19:31:02 +00:00
Matt Jacob cc28790740 Clean up private storage so that we can use the spriv_field0 to
store a bitmask of whether we've set a value into ccb->ccb_h.status,
whether we're in the watchdog routine for this command now, whether
we've set a grace period for this command and whether this command is
actually done.

See comments of rev 1.45 of isp.c for more complete information.
2000-06-27 19:22:13 +00:00
Matt Jacob e2adf86e4e Add 8 bits of volatile mailbox busy mask- this will be the bitmask of
output mailbox values we want to get back out of the chip once a mailbox
command is done. Add storage for the maximum number of output mailbox
registers to the softc.

Roll minor version number.
2000-06-27 19:17:39 +00:00
Matt Jacob 40e88de6c3 Add mailbox bitmask macros (numbers of available mailbox registers
based upon Qlogic chip type). Define maximum mailboxes. Add INT_PENDING_MASK
macro. Change mailbox offset macro name.
2000-06-27 19:15:43 +00:00
Matt Jacob 986973a448 Add an isp_handle_index function- this is prepatory to loading more into
the handle (i.e., generation number), so we will now need a function that
will take a handle and return a flat index [ 0 .. maxhandles-1 ] for
auxillary routines that need an index to get at buddy store values
(like dma maps or xflist pointers).
2000-06-27 19:14:14 +00:00
Alfred Perlstein 35b1da8080 remove crufty exec stuff, perl is in the base system
make it work with warnings on (there was some harmless use of uninitialized
variables)
make it work with 'use strict'

Approved by: peter
2000-06-27 19:09:55 +00:00
Ruslan Ermilov 36e6576b44 Fixed PunchFWHole():
- ipfw always rejected rule with `neither in nor out' diagnostics.
- number of src/dst ports was not set properly.
2000-06-27 14:56:07 +00:00
Mark Murray 1f67cd8737 I am guilty of an act of ommission. There is no longer a /dev/urandom
device with Yarrow, and although I coded for that in dev/MAKEDEV, I forgot
to _tell_ folks.

This commit adds back the /dev/urandom device (as a duplicate) of /dev/random,
until such time as it can be properly announced.

This will help the openssl users quite a lot.
2000-06-27 09:38:40 +00:00
Poul-Henning Kamp a8b1f9d2c9 Move prtactive to vfs from ufs. It is used all over the place. 2000-06-27 07:46:22 +00:00
John Baldwin 2960c255b4 Comment this. 2000-06-26 23:58:04 +00:00
Archie Cobbs 55f205ecae Build ng_ether(4) KLD. 2000-06-26 23:41:08 +00:00
Archie Cobbs e1e1452d61 Make the ng_ether(4) node type dynamically loadable like the rest.
This means 'options NETGRAPH' is no longer necessary in order to get
netgraph-enabled Ethernet interfaces. This supports loading/unloading
the ng_ether.ko and attaching/detaching the Ethernet interface in any
order.

Add two new hooks 'upper' and 'lower' to allow access to the protocol
demux engine and the raw device, respectively. This enables bridging
to be defined as a netgraph node, if so desired.

Reviewed by:	freebsd-net@freebsd.org
2000-06-26 23:34:54 +00:00
John Baldwin cbf3fb883e Add in support for EDD to support large disks via LBA. This uses a
method similar to that of the loader to avoid potentially breaking older
drives in that we only use EDD if the desired cylinder is > 1023.
2000-06-26 22:57:16 +00:00
Gerard Roudier 2096333bc2 - Fix a harmless compilation warning on Alpha.
(Reported by Matthew Jacob)
- Fix a couple of __inline__ (changed to __inline).
- Check also against DT_DATA_IN phase on parity/crc error.
  (Merged from Pamela Delaney's changes in the Linux driver)
- Fix support for phase mismatch handling from the C code for
  the C1010 (only useful for testing issue).
- Add an asynchonous notification handler for `lost device'
  (AC_LOST).
2000-06-26 21:09:45 +00:00
Coleman Kane 56d1396217 Add 3dfx to the makefile, the new home for the kmod to interface /dev/3dfx. 2000-06-26 20:35:44 +00:00
Archie Cobbs 3cd7db2297 - Start sequence numbers at zero instead of one; the rest of the
world seems to interpret the spec this way
- Initialize transmit window to two instead of one; helps get things
  going initially when the first packet may get dropped
- Really fix the shutdown + timeout race condition this time
2000-06-26 19:43:24 +00:00
Neil Blakey-Milner 47fdd692c6 Add sysctl descriptions to a few sysctls. Simply "documentation".
PR:		kern/8015
Submitted by:	Stefan Eggers <seggers@semyam.dinoco.de>
2000-06-26 13:52:31 +00:00
Mark Murray d040e2d053 Better style(9) for the module build. 2000-06-26 12:18:09 +00:00
Mark Murray d4262fb0dd style(9) fixes from BDE.
We shouldn't use '#include ""', rather '#include<>'.
2000-06-26 12:14:20 +00:00
Peter Wemm 19dde96380 Fix some fat-fingering of the isic lines. (argh!)
Fix some negative options that got turned on.

Submitted by:	bde (mostly)
2000-06-26 10:04:00 +00:00