Commit Graph

14612 Commits

Author SHA1 Message Date
Greg Lehey
09c1cbfe92 struct drive: add fields for debugging lockdrive deadlocks. 1999-04-10 08:12:44 +00:00
Greg Lehey
f83e10d7ca set_sd_state:
If a drive is down, take "empty" sds down.  Previously they were
  unchanged, which cause set_plex_state to take them up under some
  circumstances.
1999-04-10 08:12:12 +00:00
Greg Lehey
ff17305f57 When VINUMDEBUG is set, add function basename() to return the base
name of a file.  Used by MMalloc and lockdrive.
1999-04-10 08:11:44 +00:00
Greg Lehey
7ffb59f668 lockdrive: Add debug calls to catch occasional deadlocks on drives.
The problem is probably gone, but the debug checks remain
	   for a while.
1999-04-10 08:11:21 +00:00
Greg Lehey
cea0c59dfa Add flag keyword w. 1999-04-10 08:10:55 +00:00
Greg Lehey
301ef407a4 daemon_save_config:
Fix a potential drive deadlock when saving config to a non-existent
  drive.

Add debug calls to catch occasional deadlocks on drives.  The problem
(above) is probably gone, but the debug checks remain for a while.
1999-04-10 08:10:24 +00:00
Greg Lehey
c73d47fca5 Define macro LOCKDRIVE for debugging drive locking deadlocks. 1999-04-10 08:09:49 +00:00
Greg Lehey
385e19fcb6 Add declaration for basename()
Change lockdrive definition if VINUMDEBUG is set.
1999-04-10 08:09:27 +00:00
Greg Lehey
ec3a729692 Add debug calls to catch occasional deadlocks on drives. The problem
is probably gone, but the debug checks remain for a while.

update_plex_config: Catch yet another divide-by-zero problem when
		    detaching the last subdisk from a striped plex.

Uncovered-by: Michael Reifenberger <root@nihil.plaut.de>
1999-04-10 08:08:45 +00:00
KATO Takenori
89f657276f Sync with sys/i386/i386/userconfig.c revision 1.133. 1999-04-10 04:44:33 +00:00
KATO Takenori
6b21bf93e7 Sync with sys/i386/conf/files.i386 revision 1.233. 1999-04-10 04:42:46 +00:00
Greg Lehey
1566f7801c Add kldstat macro, which basically does the same thing as kldstat(8) 1999-04-10 04:04:16 +00:00
Alan Cox
53134efb59 pmap_remove_pte:
Use "loadandclear" to update the pte.

pmap_changebit and pmap_ts_referenced:
	Switch to pmap_TLB_invalidate from invltlb.
1999-04-10 02:58:17 +00:00
Nik Clayton
c64aec80f8 Add a warning bout the SoundBlaster and ISA DMA locking up the machine,
and a possible workaround.

PR:		docs/5358
Submitted by:	Matthew Dillon
Reviewed by:	nik
1999-04-09 21:14:56 +00:00
Dag-Erling Smørgrav
5a00f36414 Allow setting MAXFILES in the kernel config. 1999-04-09 16:28:11 +00:00
Greg Lehey
d85bfa1067 update_plex_config: Eliminate a potential divide-by-zero.
Tripped-over-by: Karl Pielorz <kpielorz@tdx.co.uk>
1999-04-09 01:20:22 +00:00
Greg Lehey
4a10e91653 Modify parameter checking in LongJmp to match the reality of an
enlarged kernel memory space.

Paniced-over-by:  Karl Pielorz <kpielorz@tdx.co.uk>
		  Michael Reifenberger <root@nihil.plaut.de>
1999-04-09 01:17:50 +00:00
Nick Hibma
948d2900b2 1) Add Lucent USS-720 eval kit
2) Rename Epson printer cable to proper name
1999-04-08 23:26:50 +00:00
Nick Hibma
95b1c9ac5d 1) Add AKS USB-HASP 0.6
2) Rename Lucent -> Epson
   (Undoes previous commit, Mike agrees)
1999-04-08 23:13:17 +00:00
Mike Smith
0858cc98d3 Add the Lucent USS-720 ISD Smart Cable. 1999-04-08 20:50:51 +00:00
Andrew Gallatin
61ddd9cc3c A quick fix to get kernels building again under EGCS 1999-04-08 20:32:51 +00:00
Nick Hibma
5628cc3116 In preparation of the commit of the umass driver and to make life easier
for testers.
1999-04-08 17:58:07 +00:00
Bill Paul
4473c5ec86 Make ASIX driver work on FreeBSD/alpha, add to GENERIC. 1999-04-08 17:42:48 +00:00
Bill Paul
e31c685452 Add PCI IDs for the Compex RL100-TX, which uses the Macronix 98713 chip. 1999-04-08 17:38:05 +00:00
KATO Takenori
4ebe777123 o sys/i386/include/soundcard.h
Reduce synth_info.name lenght for binary compatibility.

o sys/i386/isa/sound/mpu401.c
   Reduce mpu device number info to avoid overflow of mpu_synth_info.name.

Submitted by:	Akio Morita <amorita@meadow.scphys.kyoto-u.ac.jp>
1999-04-08 08:09:34 +00:00
Bill Paul
4a408dcb9e Add missing SYSCTL_DECL(_net_link); required by newer sysctl implementation.
Noticed by: Matthew Dodd <winter@jurai.net>
1999-04-07 23:26:43 +00:00
Justin T. Gibbs
5a151d297c Correct an invalid (and unused) #define in 93cx6.c
Freeze the transaction queue for any type of scsi status other than "okay".
1999-04-07 23:02:45 +00:00
Justin T. Gibbs
2ea77ad9af Improve bt_cmd() so that it has a better chance of working when there
are pending I/O transactions.  It is not clear that is works 100% of
the time under SMP, but since the bt_cmds() that are sent after other
CPUs are started are not critical, the driver will function until I
can figure out why this is the case.
1999-04-07 23:01:43 +00:00
Justin T. Gibbs
fcbe355ab9 Beef up the error handling routine to handle more errors.
Compensate for a bug in the AdvanSys firmware where a valid queue
full condition can be reported via a different error code.
1999-04-07 22:59:12 +00:00
Justin T. Gibbs
cbcf29f8ea Remove camq_regen(). We already perform modular comparisons
for generation counts, so no further steps to deal with generation
count wrap are required.
1999-04-07 22:57:54 +00:00
Justin T. Gibbs
8bad620d54 Remove camq_regen(). We already perform modular comparisons
for generation counts, so no further steps to deal with generation
count wrap are required.

Fix an off by one problem in the camq heap code.
1999-04-07 22:57:48 +00:00
Julian Elischer
29089b519d Two cosmetic changes, one a typo and the other, a clarification. 1999-04-07 22:22:06 +00:00
Nick Sayer
c0bd94a75d More secure clock management. Allow positive steps only once per second
for as much as one second, but no more. Allows a miscreant to
double-time march the clock, but no worse.

XXX Unlike putting negative deltas in a while(1), performing small
positive steps inside of a while(1) will return EPERM for the
unpermitted ones. Repeated negative deltas are clamped without
error (but the kernel does log a notice).
1999-04-07 19:48:09 +00:00
Matt Jacob
3f92429a24 Fix last delta so file would compile again- I think I got it
right. Add a clarifying (to me at least) comment. Some formatting
fixes.
1999-04-07 17:32:21 +00:00
Peter Wemm
bfda1e3ff7 Disable the mtrr copy calls, it doesn't work with the i686_mem.c stuff.
This should make it compile/link again.
1999-04-07 17:08:40 +00:00
Nick Hibma
7ae8132edd Added macro logprintf 1999-04-07 17:07:07 +00:00
Nick Sayer
fcae3aa61f If securelevel>1, allow the clock to be adjusted negatively only up to
1 second prior to the highest the clock has run so far. This allows
time adjusters like xntpd to do their work, but the worst a miscreant
can do is "freeze" the clock, not go back in time.

We still need to decide on an algorithm to clamp positive adjustments.
As it stands, it is possible to achieve arbitrary negative adjustments
by "wrapping" time around.

PR:		10361
1999-04-07 16:36:56 +00:00
Greg Lehey
2005b07aa8 1. Modify config to issue different code for debugging.
2.  Config complains if you use -g:

    Debugging is enabled by default, there is no ned to specify the -g option

3.  Config warns you if you don't use -s:

    Building kernel with full debugging symbols.  Do
    "config -s BSD" for historic partial symbolic support.
    To install the debugging kernel, do make install.debug

    (BSD was the name of the config file I used; I print out the same
    name).

4.  Modify Makefile.i386, Makefile.alpha, Makefile.pc98 and config to
    work if a kernel name other than 'kernel' is specified.  This is
    not absolutely necessary, but useful, and it was relatively easy.
    I now have a kernel called /crapshit :-)

5.  Modify Makefile.i386, Makefile.alpha, Makefile.pc98 "clean" target
    to remove both the debug and normal kernel.

6.  Modify all to install the stripped kernel by default and the debug
    kernel if you enter "make install.debug".

7.  Update version number of Makefiles and config.
1999-04-07 09:28:03 +00:00
Mike Smith
f59734592a Generic memory range attribute interface. 1999-04-07 03:59:32 +00:00
Mike Smith
facdaf9e33 Remove inactive pmap_setdevram()/pmap_setvidram consumer code. 1999-04-07 03:59:13 +00:00
Mike Smith
1f2d03c05e Add defines for the P6 model-specific registers. 1999-04-07 03:58:15 +00:00
Mike Smith
4ffd949eaa mem.c
Split out ioctl handler a little more cleanly, add memory
	range attribute handling for both kernel and user-space
	consumers.

pmap.c
	Remove obsolete P6 MTRR-related code.

i686_mem.c
	Map generic memory-range attribute interface to the P6 MTRR
	model.
1999-04-07 03:57:45 +00:00
Mike Smith
90ea793afe Add i686_mem.c - memory range attribute support for P6 processors. 1999-04-07 03:55:36 +00:00
Mike Smith
2beb6ea1c9 Remove unused/unimplemented pmap_setdevram() 1999-04-07 03:34:32 +00:00
Alan Cox
b2e2337ba1 Fix a performance problem with the new getnewbuf() code: in an outofspace
condition ( bufspace > hibufspace ), an inappropriate scan of the empty
queue was performed looking for buffer space to free up.

Submitted by:	Matthew Dillon <dillon@apollo.backplane.com>
1999-04-07 02:41:54 +00:00
Nick Hibma
61f973056b fix typo 1999-04-06 23:09:58 +00:00
Bill Paul
2075407db2 Remove teensy-weensy bit of debug code that crept in.
Oh, I forgot to mention: this driver also works on FreeBSD/alpha (big
thanks to Andrew Gallatin). And there is a 2.2.x version available for
those who stubbornly refuse to upgrade.
1999-04-06 22:56:21 +00:00
Poul-Henning Kamp
bbca5c9c2c failled spell-check 1999-04-06 21:15:18 +00:00
Bill Paul
d02c233129 Add driver support for gigabit ethernet adapters based on the Alteon
Networks Tigon 1 and Tigon 2 chipsets. There are a _lot_ of OEM'ed
gigabit ethernet adapters out there which use the Alteon chipset so
this driver covers a fair amount of hardware. I know that it works with
the Alteon AceNIC, 3Com 3c985 and Netgear GA620, however it should also
work with the DEC/Compaq EtherWORKS 1000, Silicon Graphics Gigabit
ethernet board, NEC Gigabit Ethernet board and maybe even the IBM and
and Sun boards. The Netgear board is the cheapest (~$350US) but still
yields fairly good performance.

Support is provided for jumbo frames with all adapters (just set the
MTU to something larger than 1500 bytes), as well as hardware multicast
filtering and vlan tagging (in conjunction with the vlan support in
-current, which I should merge into -stable soon). There are some hooks
for checksum offload support, but they're turned off for now since
FreeBSD doesn't have an officially sanctioned way to support checksum
offloading (yet).

I have not added the 'device ti0' entry to GENERIC since the driver
with all the firmware compiled in is quite large, and it doesn't really
fit into the category of generic hardware.
1999-04-06 17:08:31 +00:00
Guy Helmer
b6e0f7ece8 Replace LKM with KLD.
Submitted by:	Nathan Ahlstrom <nrahlstr@winternet.com>
1999-04-06 13:57:33 +00:00
Alan Cox
47b9dbd431 Two changes to pmap_remove_all:
1. Switch to pmap_TLB_invalidate from invltlb, eliminating a full TLB
flush where a single-page flush suffices.  (Also, this eliminates some
unnecessary IPIs.)

2. Use "loadandclear" to update the pte, eliminating a race condition
on SMPs.

Change #2 should be committed to -STABLE.
1999-04-06 04:52:27 +00:00
Peter Wemm
964462c09d Remove (but leave place markers) P_NOSWAP and P_PHYSIO - they were only
used for preventing swapouts of the UPAGES and there is another mechanism
for that (PHOLD/PRELE using p->p_lock).
1999-04-06 03:23:09 +00:00
Peter Wemm
c8da68e917 Don't forcibly kill processes that are locked in-core via PHOLD - it was
just checking P_NOSWAP before.
1999-04-06 03:14:56 +00:00
Peter Wemm
6ac1f14d0b Use PHOLD/PRELE() instead of P_PHSYIO. 1999-04-06 03:12:22 +00:00
Peter Wemm
637cae1dd4 Only use p->p_lock (manage by PHOLD()/PRELE()) - P_NOSWAP/P_PHYSIO is no
longer set.
1999-04-06 03:11:34 +00:00
Peter Wemm
30c56d468c Hold the mfs process's upages in-core with PHOLD rather than P_NOSWAP. 1999-04-06 03:08:43 +00:00
Peter Wemm
8a0d8193f2 Hold nfsd's upages in-core with PHOLD rather than P_NOSWAP. 1999-04-06 03:07:54 +00:00
Peter Wemm
2ada239c12 Use reference counted PHOLD/PRELE rather than the P_PHYSIO flag. 1999-04-06 03:06:51 +00:00
Peter Wemm
0cbbb7bffd Use PHOLD/PRELE rather than P_PHYSIO. 1999-04-06 03:05:36 +00:00
Peter Wemm
57dc594832 Use the reference counted PHOLD()/PRELE() rather than P_PHYSIO. 1999-04-06 03:04:47 +00:00
Peter Wemm
af8ad83e5c Use the reference-counted PHOLD()/PRELE() rather than P_NOSWAP. 1999-04-06 03:03:34 +00:00
Peter Wemm
88b4f4ee55 LK_RETRY is a vn_lock() flag, not one for lockmgr(). 1999-04-06 03:02:11 +00:00
Daniel C. Sobral
459b9f6fce Reactivate trace! after making it egcs-friendly. 1999-04-06 02:43:06 +00:00
Julian Elischer
8d17e69460 Catch a case spotted by Tor where files mmapped could leave garbage in the
unallocated parts of the last page when the file ended on a frag
but not a page boundary.
Delimitted by tags PRE_MATT_MMAP_EOF and POST_MATT_MMAP_EOF,
in files alpha/alpha/pmap.c i386/i386/pmap.c nfs/nfs_bio.c vm/pmap.h
    vm/vm_page.c vm/vm_page.h vm/vnode_pager.c miscfs/specfs/spec_vnops.c
    ufs/ufs/ufs_readwrite.c kern/vfs_bio.c

Submitted by: Matt Dillon <dillon@freebsd.org>
Reviewed by: Alan Cox <alc@freebsd.org>
1999-04-05 19:38:30 +00:00
Nick Hibma
7b9e192e28 1) Add the defines for the Mass Storage class
2) Add comments
	3) Add UE_DIR to replace the querying of UE_IN directly
1999-04-05 17:23:54 +00:00
Nick Hibma
ff0ccda34e change wrong names in prototypes (pipe to dev) 1999-04-05 17:19:48 +00:00
Nick Hibma
5163f215e0 Add the defines for the Iomega Zip 100 drive 1999-04-05 17:12:46 +00:00
Nick Hibma
1294cd03e1 bugfix: initialise timeout for usbd_device_request as well.
moved statements around to reflect sequence in the struct, to make
	finding these discrepancies easier.
1999-04-05 17:01:52 +00:00
Peter Wemm
5734634f4c Make ppbus compile under egcs. I'm not sure about this casting-to-union-
-containing-the-type stuff, but gcc seemed to do it implicitly..
1999-04-05 15:43:11 +00:00
Robert Nordier
0e5731f9f4 Fix damage introduced in previous commit. 1999-04-05 07:36:30 +00:00
Robert Nordier
bf0eae60c5 Optimize better for space.
Thanks to: jdp
1999-04-05 07:24:51 +00:00
Peter Wemm
fa8e1794b5 There's not much point in the EXPORTMFS #ifdef. I've had this sitting
in my tree for 12+ months, and I just noticed that NetBSD have (I think,
I've just seen the commit, not the change) just zapped it there.
It wasn't in the options files or LINT either.
1999-04-05 06:39:10 +00:00
Greg Lehey
0ad9aafaa2 Add debug flag DEBUG_EXITFREE to log problems freeing memory on exit. 1999-04-05 04:03:45 +00:00
Greg Lehey
31e318aced remove_plex: If we don't find the plex in a volume to which it
claims to belong, remove it anyway.
1999-04-05 04:02:59 +00:00
Greg Lehey
599fbeb550 free_vinum: Clean out bdevsw entry before unloading kld.
Repeatedly-tripped-over-by: Vallo Kallaste <vallo@matti.ee>

		When VINUMDEBUG is set, free any memory found still
		allocated.

		Only log errors if DEBUG_EXITFREE is set.
1999-04-05 04:02:09 +00:00
Greg Lehey
6560c980ca 'fr' macro: trace back to new kernel base 0xc0000000 1999-04-05 03:55:44 +00:00
John Polstra
6f2a248bff Bump __FreeBSD_version to 400004 now that the __deregister_frame_info
bug is fixed in the dynamic linker.  I think it might be handy to
know about this to deal with some coming make world bootstrapping
issues.
1999-04-05 02:39:13 +00:00
Dmitrij Tejblum
5cc4ab5323 Regenerate (padding for pread and pwrite). 1999-04-04 21:43:36 +00:00
Dmitrij Tejblum
8fe387ab84 Add standard padding argument to pread and pwrite syscall. That should make them
NetBSD compatible.

Add parameter to fo_read and fo_write. (The only flag FOF_OFFSET mean that
the offset is set in the struct uio).

Factor out some common code from read/pread/write/pwrite syscalls.
1999-04-04 21:41:28 +00:00
David E. O'Brien
df5ee53868 Remove the string ">>> FreeBSD/i386 BOOT". I need to reduce the size of
boot2 by 16 bytes.  I expect this to be temperary until the boot2 authors
can do the proper fix.
1999-04-04 21:15:41 +00:00
Poul-Henning Kamp
a508801763 Fix a division which I had made a multiplication.
Fix return value from ntp_adjtime().

Submitted by:	jhay
1999-04-04 19:56:04 +00:00
Poul-Henning Kamp
34cffbe3f6 Dang, lost some LL's there. 1999-04-04 10:53:59 +00:00
Poul-Henning Kamp
f425c1f631 Update to latest version from Dave Mills. Mostly textual. 1999-04-04 10:28:42 +00:00
Alan Cox
876318eca0 Two changes to vm_map_delete:
1. Don't bother checking object->ref_count == 1 in order to set
OBJ_ONEMAPPING.  It's a waste of time.  If object->ref_count == 1,
vm_map_entry_delete will "run-down" the object and its pages.

2. If object->ref_count == 1, ignore OBJ_ONEMAPPING.  Wait for
vm_map_entry_delete to "run-down" the object and its pages.
Otherwise, we're calling two different procedures to delete
the object's pages.

Note: "vmstat -s" will once again show a non-zero value
for "pages freed by exiting processes".
1999-04-04 07:11:02 +00:00
Greg Lehey
7b2a16a33a Correct forgotten defs in defproc macro 1999-04-04 03:33:45 +00:00
KATO Takenori
f110e2e328 Fix for console mouse.
Submitted by:	Nobuyuki Koganemaru <kogane@koganemaru.co.jp>
1999-04-04 02:53:08 +00:00
Matt Jacob
3c6e29e07a Make firmware revision a triple. Clean up some FC init stuff for
board versions with no BIOS. Separate mailbox interrupts from
IOCB interrupts. Read OUTMAILBOX5 while RISC_INT is active- not
after you clear it (potential race condition). Clear out older broken
BIG_ENDIAN goop. Don't negotiate narrow/async for LVD busses at startup
if already in LVD mode. Note usage of presumptive 1040C revision. For
all the LIP, PDB Changed, Loop UP/DOWN async events, mark fw state
as unknown as well as marking the need to do a getpdb on targets- after
a LIP for certain the f/w has to do PRLI/PLOGI for all targets again
and marking f/w state as unknown gives us a fighting chance to (start
to) hold up for that to complete.
1999-04-04 02:28:29 +00:00
Matt Jacob
8ea807adf5 oops on this last 1999-04-04 02:22:42 +00:00
Matt Jacob
92718a7fc7 F/W revisions now a tuple (not a duple). Fix pre-CAM code. 1999-04-04 01:35:03 +00:00
Matt Jacob
bc3dacd6c7 Fix for pre-CAM kernels (again). Turn back on fast posting. 1999-04-04 01:34:06 +00:00
Matt Jacob
3c0e51c709 Remove incorrect BIG_ENDIAN defines and substitute in the SBus only macros
that will SBusify an isp header or the lun/target portions of a request IOCB-
and have these only valid iff __sparc__ (no non-sparc SBus machine that *I*
know about).
1999-04-04 01:32:09 +00:00
Matt Jacob
12b36e2d97 Change f/w revision to major,minor,micro version. Add in ISP1040C definition. 1999-04-04 01:26:08 +00:00
Matt Jacob
57fb3fbbac roll ISP1040 and ISP2100 f/w to latest release 1999-04-04 01:20:25 +00:00
Matt Jacob
ab6d004056 Read the board revision and trim cache line size back from 16 to 1
for early revision 2100 boards. Make sure to turn ROM off for these
boards.
1999-04-04 01:14:02 +00:00
John Polstra
182d6068cd Add a missing declaration that broke the compilation of this file. 1999-04-03 22:36:56 +00:00
John Polstra
4fe88fe637 Restore support for executing BSD/OS binaries on the i386 by passing
the address of the ps_strings structure to the process via %ebx.
For other kinds of binaries, %ebx is still zeroed as before.

Submitted by:	Thomas Stephens <tas@stephens.org>
Reviewed by:	jdp
1999-04-03 22:20:03 +00:00
KATO Takenori
90aba8be4e Sync with sys/i386/isa/wd.c revision 1.191. 1999-04-03 15:51:54 +00:00
KATO Takenori
e82834ca32 Sync with sys/i386/isa/sio.c revision 1.234. 1999-04-03 15:51:14 +00:00
Bruce Evans
0fc8c5569a Fixed some style bugs (mainly vinum ones and ones fixed in Lite2 but
not here).
1999-04-03 07:21:14 +00:00
KATO Takenori
cd9559886a Include nss.h only when PC98 is defined.
Pointed out by:	"Pierre Y. Dampure" <pierre.dampure@k2c.co.uk>
1999-04-03 02:32:54 +00:00
Alan Cox
087e80a934 Put in place the infrastructure for improved UP and SMP TLB management.
In particular, replace the unused field pmap::pm_flag by pmap::pm_active,
which is a bit mask representing which processors have the pmap activated.
(Thus, it is a simple Boolean on UPs.)

Also, eliminate an unnecessary memory reference from cpu_switch()
in swtch.s.

Assisted by:	John S. Dyson <dyson@iquest.net>
Tested by:	Luoqi Chen <luoqi@watermarkgroup.com>,
		Poul-Henning Kamp <phk@critter.freebsd.dk>
1999-04-02 17:59:49 +00:00
Poul-Henning Kamp
2def3dba56 We don't need to splbio() around biodone(). 1999-04-02 13:58:24 +00:00
Poul-Henning Kamp
1f8601aee2 Add back cxswitch() it was used afterall. 1999-04-02 13:58:01 +00:00
Poul-Henning Kamp
c4a6db710a Don't open window for race condition.
Detected by:	Reg Clemens <reg@dwf.com>
1999-04-02 13:57:21 +00:00
KATO Takenori
95e56ffcb0 Use files under sys/boot/i386 instead of copying under sys/boot/pc98.
Submitted by:	Takahashi Yoshihiro <nyan@dd.catv.ne.jp>
1999-04-02 08:59:11 +00:00
KATO Takenori
bd5934b045 o sys/i386/include/soundcard.h
Add Sound Card ID for the nss(NEC PC-9801-86 Sound System) driver.
      Old name of this driver was pcm driver in FreeBSD 2.2.x.
  Fix lack of the length of the name member of the synth_info structure.
      (attach_mpu401 in sys/i386/isa/sound/mpu401.c requires 33 chars.)

o sys/i386/isa/sound/dev_table.h
  Add the DMAbuf flags definition DMA_DISABLE.
  Add the nss driver entry.

o sys/i386/isa/sound/dmabuf.c
  Add the DMA_DISABLE flag check in DMAbuf_outputintr and DMAbuf_inputintr
      to disable DMA control in FIFO only use (nss driver required).

o sys/i386/isa/sound/local.h
  Add the nss driver entry.

o sys/i386/isa/sound/mpu401.c
  Replace inb function in probe_mpu401 to mpu401_status macro.
  Wrap macro argument for above replace.
  Add I/O port maping macro for NEC PC-98x1 arch.
  Add delay in NEC PC-98x1 arch.

o sys/i386/isa/sound/pcm86.c
  Change driver name to avoid name space conflict to new pcm driver.
  Fix NEC PC-9801-86 driver to work on RELENG_3 branch or latter.

o sys/i386/isa/sound/sound_calls.h
  Fix the mpuintr definition.
  Add the nss driver entry.
      attach_nss, probe_nss, nssintr

o sys/i386/isa/sound/soundcard.c
  Fix lack of the mpuintr registration.
  Add the nss driver entry.

o sys/pc98/conf/files.pc98
  Add the nss driver entry.

Reviewed by:	kato
Submitted by:	Akio Morita <amorita@meadow.scphys.kyoto-u.ac.jp>
1999-04-02 08:51:06 +00:00
Poul-Henning Kamp
89f96f7b90 fix polarity reversal.
Noticed by:	jhay
1999-04-01 17:08:06 +00:00
Nick Sayer
db49f041ae Import PCI pccard bridge chip probing from PAO. Hopeful prelude for
broadening chipset support in -current.

Reviewed by:	joerg
Obtained from:	PAO
1999-04-01 15:28:10 +00:00
KATO Takenori
812d50e7a5 Sync with sys/i386/isa/sio.c revision up to 1.233. 1999-04-01 13:44:15 +00:00
KATO Takenori
8ee56ad2ed Sync with sys/i386/isa/npx.c revision 1.66. 1999-04-01 13:41:40 +00:00
KATO Takenori
3ba4fb4098 Sync with sys/i386/conf/files.i386 revision up to 1.232. 1999-04-01 13:40:47 +00:00
KATO Takenori
02418719d1 Delete the aic driver. 1999-04-01 13:39:27 +00:00
Bill Paul
8919d7d4e7 Make the Macronix driver work on FreeBSD/alpha and add to GENERIC.
Like the PNIC, we have to copy packet headers in the receive handler
because the chip will only DMA to longword aligned buffers.

Also do some mindor cleanups.
1999-04-01 02:09:37 +00:00
Nick Hibma
44e361fd80 added vision camera 1999-03-31 23:53:48 +00:00
Bill Paul
11ebc6f0fa Shorten device names so that the pci probe lines don't exceed 80 chars
and wrap to a second line.

Put 'command never completed' message inside #ifdef DIAGNOSTIC/#endif to
stop people worrying about it (it's harmless).
1999-03-31 15:45:15 +00:00
Kazutaka YOKOTA
fd99a054d9 Follow up to the recent vm86 change in rev. 1.19.
- Make a copy of the information block returned in the vm86 space
  by the VESA BIOS init function.  Otherwise it will be overwritten
  by subsequent BIOS calls in the same vm86 context.
1999-03-31 15:27:00 +00:00
Eivind Eklund
3ee9bf69aa Add NTFS 1999-03-31 15:23:31 +00:00
Nick Sayer
4db9b34751 Add support for bridging to if_tx.c
PR:		10534
Submitted by:	nsayer
1999-03-31 13:50:52 +00:00
Søren Schmidt
b31d9a1d23 The DEVFS case was screwed by my last commit here.. 1999-03-31 12:30:58 +00:00
Greg Lehey
96c60597a8 Destaticize some variables to allow checking on them when exiting. 1999-03-31 08:43:12 +00:00
Greg Lehey
dbb49f899b daemonq_return request: Clean up request queue and free all memory
before returning to die.
1999-03-31 08:42:52 +00:00
Greg Lehey
e6bd890603 free_drive: free the drive free list if it has one. 1999-03-31 08:42:04 +00:00
Greg Lehey
f990bcd3db vinumattach: Remove some really old, dead cruft.
free_vinum:	Wait for daemon to stop by checking the
		vinum_conf.flags & VF_DAEMONOPEN.

vinum_modevent:
		When compiled with VINUMDEBUG, check if we have
		forgotten to free any memory, and log an error if we
		have.

vinumopen:	Allow open of an empty subdisk (otherwise we can't
		initialize it).
1999-03-31 08:41:18 +00:00
Joerg Wunsch
9859e703f6 Make <DEL> an alternative rubout character for command input; many
serial terminals use this as their default rubout key.
1999-03-31 08:28:42 +00:00
Greg Lehey
293904653d Various bug fixes to make them actually work. 1999-03-31 05:54:20 +00:00
Bill Paul
25223996f1 Insert ifmedia_set() that I forgot and put in the vtophys() hack for
the alpha. Now the ThunderLAN driver works on the alpha (both my
sample cards check out.) Update the alpha GENERIC config to include
ThunderLAN driver now that I've tested it.
1999-03-31 04:04:14 +00:00
Nick Sayer
a44e3914d5 Merge from RELENG_2_2, per luigi. Fixes the ntoh?() issue for the
firewall code when called from the bridge code.

PR:             10818
Submitted by:   nsayer
Obtained from:  luigi
1999-03-30 23:45:34 +00:00
Nick Sayer
cd965a7436 Merge from RELENG_2_2, per luigi. Fixes the ntoh?() issue for the
firewall code when called from the bridge code.

PR:		10818
Submitted by:	nsayer
Obtained from:	luigi
1999-03-30 23:45:14 +00:00
Eivind Eklund
e048f09fdf Fix the oltr entries. 1999-03-30 21:32:43 +00:00
Nick Sayer
9bc318bff0 SX ISA cards are only 32k wide in 8 bit mode (which is the only
mode supported by the manufacturer).

PR:		6255
Submitted by:	nsayer
1999-03-30 21:22:39 +00:00
Bill Paul
5563ee5462 Fix a line wrap bogon. 1999-03-30 19:33:47 +00:00
Bill Paul
85c47a212e Various updates for the ThunderLAN driver:
- When trying to map ports, if mapping TL_PCI_LOIO or TL_PCI_LOMEM fails,
  try mapping the other one. Apparently, some ThunderLAN parts swap these
  two registers while others don't.

- Add support for bitrate (non-MII) PHYs. If no MII-based PHY is found,
  program the chip for bitrate mode. This is required for the TNETE110
  part, which doesn't have MII support. (It's also obsolete, but there
  are still some people out there who have them.) With this change and the
  change above, the Compaq Netflex-3/P 10baseT/BNC board works correctly.
  (Thanks to Matthew Dodd for getting me one of these cards.)

- Convert to bus_space_foo() for register accesses.

- Add changes to support FreeBSD/Alpha. I still have to actually test
  this in my Alpha box so I'm not going to update /sys/alpha/conf/GENERIC
  yet.
1999-03-30 17:07:20 +00:00
Poul-Henning Kamp
da3b4fb7ee rganize the various modes (CISCO/AUTO/DEMAND/LEASED) a little bit better,
centralize the code.

Remember to call TLF/TLS on the hardware in CISCO mode.
1999-03-30 13:28:26 +00:00
Poul-Henning Kamp
4738ca443e Organize the various modes (CISCO/AUTO/DEMAND/LEASED) a little bit better,
centralize the code.

Remember to call TLF/TLS on the hardware in CISCO mode.
1999-03-30 13:28:23 +00:00
Søren Schmidt
74fa06c717 Make ISA only systems compile again.. 1999-03-30 13:09:47 +00:00
Poul-Henning Kamp
35c08af0ad Reduce overhead of PPS when not active.
Pointed out by:	bde
1999-03-30 12:41:04 +00:00
Poul-Henning Kamp
fea1204c42 Specfic prototypes not needed.
Patiently explained by:	bde
1999-03-30 11:44:59 +00:00
Poul-Henning Kamp
323753d200 Add PPS-API support for DCD on serial ports.
Submitted by:	jhay
Slightly changed by:	phk
1999-03-30 09:02:38 +00:00
Poul-Henning Kamp
8e798ef12b Even more unbogotification of prototypes.
Not complained about by:	bde
1999-03-30 09:01:47 +00:00
Poul-Henning Kamp
6a5d592ae8 Purging lint from the Bruce filter. 1999-03-30 09:00:45 +00:00
Greg Lehey
ec78ad25c9 Add flag VF_CREATED 1999-03-30 05:01:42 +00:00
Greg Lehey
fd7505f096 Change the lengths of many ioctl parameters, which occasionally caused
EFAULTS due to sloppy programming.
1999-03-30 05:01:23 +00:00
Greg Lehey
8cb67ba580 Revise use of the vinum_conf variables drives_used, subdisks_used,
plexes_used and volumes_used.  Now these fields are only informative,
and the <object>_allocated count is used for searches, etc.  This also
required checking the object state before doing things with the
presumed object.

Problems-reported-by: Kiril Mitev <kiril@ideaglobal.com>

VINUM_<object>CONFIG: return ENXIO rather than EFAULT if an object
doesn't exist.
1999-03-30 05:01:06 +00:00
Greg Lehey
18bf283fec Revise use of the vinum_conf variables drives_used, subdisks_used,
plexes_used and volumes_used.  Now these fields are only informative,
and the <object>_allocated count is used for searches, etc.  This also
required checking the object state before doing things with the
presumed object.

Problems-reported-by: Kiril Mitev <kiril@ideaglobal.com>

vinum_scandisk: increment drive use count when we find a good one.
1999-03-30 05:00:19 +00:00
Greg Lehey
c22d0bffee Revise use of the vinum_conf variables drives_used, subdisks_used,
plexes_used and volumes_used.  Now these fields are only informative,
and the <object>_allocated count is used for searches, etc.  This also
required checking the object state before doing things with the
presumed object.

Problems-reported-by: Kiril Mitev <kiril@ideaglobal.com>

Remove unused (and braindead) functions volume_index, plex_index,
sd_index and drive_index.

Add a flag VF_CREATED for volumes.  VF_NEWBORN was being used in two
capacities, and they clashed, my Lord, they clashed.

find_object: restructure the search loop as a result of the change in
variable use.

Decrement object use count in the remove_<object> functions, not in
the free_<object> functions, which are often called with partially
initialized (and uncounted) objects.
1999-03-30 04:59:59 +00:00
Greg Lehey
8c1e93bf98 Revise use of the vinum_conf variables drives_used, subdisks_used,
plexes_used and volumes_used.  Now these fields are only informative,
and the <object>_allocated count is used for searches, etc.  This also
required checking the object state before doing things with the
presumed object.

Problems-reported-by: Kiril Mitev <kiril@ideaglobal.com>
1999-03-30 04:59:32 +00:00
Kenneth D. Merry
4a64714fd8 Delete all references to the "aic" driver. It isn't in the tree, and
may not show up for a while, and I'm tired of people asking about it.

Perhaps this will eliminate some of the confusion.
1999-03-29 17:56:28 +00:00
Kazutaka YOKOTA
ccd4815963 Make the splash screen alternate "fade out" and "fade in" action at
regular intervals, when the module is used as a screen saver.

Submitted by: asami
1999-03-29 15:13:53 +00:00
Kazutaka YOKOTA
d1a9e1a0cb Another round of fix for palette loading.
- Don't try to change DAC width when unnecessary.
- Convert 8 bit DAC data to 6 bit DAC data before unloading the vesa
  KLD module.
1999-03-29 15:10:56 +00:00
Søren Schmidt
20f20ae658 Fix bug in the Promise code that resultet in PIO always being selected. 1999-03-29 14:24:42 +00:00
Poul-Henning Kamp
c867b0e582 Spelling fixes.
PR:		10764
Submitted by:	Chris Piazza <cpiazza@home.net>
1999-03-29 14:00:46 +00:00
Doug Rabson
6350e58a8a Add some useful functions to the device framework:
* bus_setup_intr() as a wrapper for BUS_SETUP_INTR
* bus_teardown_intr() as a wrapper for BUS_TEARDOWN_INTR
* device_get_nameunit() which returns e.g. "foo0" for name "foo" and unit 0.
* device_set_desc_copy() malloc a copy of the description string.
* device_quiet(), device_is_quiet(), device_verbose() suppress probe message.

Add one method to the BUS interface, BUS_CHILD_DETACHED() which is called
after the child has been detached to allow the bus to clean up any memory
which it allocated on behalf of the child.

I also fixed a bug which corrupted the list of drivers in a devclass if
a driver was added to more than one devclass.
1999-03-29 08:54:20 +00:00
Doug Rabson
ecc6e7d5ef Fix a bug which prevented more than two clients from sharing a resource. 1999-03-29 08:30:17 +00:00
Doug Rabson
67e7cb89d9 Call ptrace_u_check with the right size. 1999-03-29 08:29:22 +00:00
Dmitrij Tejblum
a4ca0596ca Ifdef declaration of a conditionally defined function "timezero". 1999-03-28 23:28:18 +00:00
Dmitrij Tejblum
f4694a8785 Fix syntax error. While I am here, comment out a negative option and add
another two commented out negative options.
1999-03-28 23:08:12 +00:00
Dmitrij Tejblum
f1cde7a270 Back out half of 1.32: don't print a message on every failed mount attempt.
It is too chatty and hardly useful. 2 mesages in somewhat usual cases are
left for now.
1999-03-28 23:00:33 +00:00
Søren Schmidt
55bfaed1c0 Fourth update to the new ATA/ATAPI driver:
Well, better late than newer, but things has been hectic
around here, sorry for the long delay.

DMA support has been added to the ATA disk driver.
This only works on Intel PIIX3/4, Acer Aladdin and Promise controllers.
The promise support works without the BIOS on the board,
and timing modes are set to support up to UDMA speed. This
solves the problems with having more than one promise controller
in the same system.
There is support for "generic" DMA, that might work on other
controllers, but now you have been warned :)
More chipset specific code will come soon, I have to find testers
with the approbiate HW, more on that when I have it ready.

The system now uses its own major numbers, please run MAKEDEV
with the devices you need (ad?, acd?, afd?, ast?).
For now the disk driver will also attach to the old wd major
so one can at least boot without this step, but be warned, this
will eventually go away. The bootblocks will have to be changed
before one can boot directly from an "ad" device though.

Fixed problems:

    All known hang problems should be solved
	The probe code has been sligthly changed, this should solve
	the reports I have lying around (I hope).

    Hangs when accessing ata & atapi device on the same channel simultaniously.
	A real braino in ata_start caused this, fixed.

As usual USE AT YOUR OWN RISK!!, this is still pre alpha level code.
Especially the DMA support can hose your disk real bad if anything
goes wrong, agaiin you have been warned :)

But please tell me how it works for you!

Enjoy!

-Søren
1999-03-28 18:57:20 +00:00
Doug Rabson
f1f1b5e0c1 Fix some warnings. 1999-03-28 17:52:17 +00:00
Doug Rabson
e8d4dc28dc Fix a few warnings. 1999-03-28 17:33:38 +00:00
Doug Rabson
7e2bb9dbfe Remove trigraph. 1999-03-28 17:33:14 +00:00
Greg Lehey
ccaba9fc2b Restructure the .gdbinit files:
.gdbinit.crash contains a top-level .gdbinit suitable for debugging
               crash dumps

.gdbinit.serial contains a top-level .gdbinit suitable for serial
              debugging

Each of these two files reads the following files:

.gdbinit.kernel: This file contains general macros suitable for kernel
               debugging.  It is not related to vinum

.gdbinit.vinum:  This file contains macros specific to debugging
               vinum.

.gdbinit.paths:  Contains information about the location of the source
               and object files on the system.
1999-03-28 09:12:17 +00:00
Greg Lehey
61f64b85ae Restructure the .gdbinit files:
.gdbinit.crash contains a top-level .gdbinit suitable for debugging
               crash dumps

.gdbinit.serial contains a top-level .gdbinit suitable for serial
		debugging

Each of these two files reads the following files:

.gdbinit.kernel: This file contains general macros suitable for kernel
		 debugging.  It is not related to vinum

.gdbinit.vinum:  This file contains macros specific to debugging
		 vinum.

.gdbinit.paths:  Contains information about the location of the source
		 and object files on the system.
1999-03-28 09:10:56 +00:00
Greg Lehey
dfb9ab7989 Add definition LongJmp for longjmp if -DVINUMDEBUG.
Change some comment texts
1999-03-28 08:55:04 +00:00
Greg Lehey
d7c4c59f03 set_sd_state: Handle sd_empty correctly. In particular, require
force to bring a subdisk of a RAID-5 plex out of this
		state.

update_plex_state:  Rewrite yet again.
1999-03-28 08:54:48 +00:00
Greg Lehey
d8118f9d41 Put some \ns in some log messages. 1999-03-28 08:54:25 +00:00
Greg Lehey
1238689209 Add function LongJmp which checks the parameters before calling
longjmp.  I suspect that the occasional double panic may be the result
of incorrect parameters to longjmp.  This happens, of course, like the
entire file, only with -DVINUMDEBUG.
1999-03-28 08:54:03 +00:00
Greg Lehey
738082e8b0 Remove longjmp declaration. 1999-03-28 08:53:46 +00:00
Greg Lehey
d0fe90e337 Add declaration for forceup () (in vinumstate.c)
Add declarations for setjmp, cmd_buf and longjmp.
1999-03-28 08:53:23 +00:00
Greg Lehey
f41c5231bf Remove longjmp declaration.
give_sd_to_plex: Don't set Raid-5 subdisk state here.

config_subdisk: handle the name parameter correctly when the subdisk
		was referenced in a previous plex definition.  The
		name parameter must come first.

		Handle autosizing relatively correctly.  There is
		still a danger of losing drive space if problems
		occur with an autosized subdisk.

		Set state to empty, not up, when complete.  This also
		solves a nagging problem about enforcing the need to
		initialize RAID-5 plexes.

config_plex:    handle the name parameter correctly when the plex
		was referenced in a previous volume definition.  The
		name parameter must come first.

		Handle initial state better.

update_plex_config:
		Calculate the trim factor for RAID-5 plexes correctly.

		Set the number of down subdisks correctly when reading
		from disk config.
1999-03-28 08:53:02 +00:00
Greg Lehey
cec9815419 Remove longjmp declaration.
free_vinum:	Put a timeout on waiting for the daemon to die.
1999-03-28 08:52:33 +00:00
Greg Lehey
bd51f0eff9 Add 'referenced' states to subdisks and plexes. 1999-03-28 08:52:11 +00:00
Greg Lehey
89d8b5e853 Add support for SiS 5591/5595 chipset.
Contributed-by: "Richard Seaman, Jr." <dick@tar.com>

Tested-by:	Chris Piazza <cpiazza@home.net>
		Tugrul Galatali <tugrul@ianai.BlackSun.org>
		grog

This code includes lots of stuff for verbose probing.  I'm not 100%
sure that the output of the verbose probe is correct, but everything
else works fine, and -CURRENT was broken for the 5591 before, so I'm
committing it anyway.
1999-03-28 05:05:12 +00:00
Alan Cox
ad5fca3b4a Mainly, eliminate the comments about share maps. (We don't have share maps
any more.)  Also, eliminate an incorrect comment that says that we don't
coalesce vm_map_entry's.  (We do.)
1999-03-27 23:46:04 +00:00
Nick Hibma
e1c81f1d94 Cleaning up of code, remove unneeded cruft and make
code more compact.
1999-03-27 23:08:44 +00:00
Nick Hibma
2bee57be2f Fixed line counting error. 1999-03-27 22:41:40 +00:00
Alan Cox
4160ccd978 Added pread and pwrite. These functions are defined by the X/Open
Threads Extension.  (Note: We use the same syscall numbers as NetBSD.)

Submitted by:	John Plevyak <jplevyak@inktomi.com>
1999-03-27 21:16:58 +00:00
Bill Paul
8fe2c75e31 Make the xl and pn drivers work on FreeBSD/alpha and add them to
sys/alpha/conf/GENERIC.

Note: the PNIC ignores the lower few bits of the RX buffer DMA address,
which means we have to add yet another kludge to make it happy. Since
we can't offset the packet data, we copy the first few bytes of the
received data into a separate mbuf with proper alignment. This puts
the IP header where it needs to be to prevent unaligned accesses.

Also modified the PNIC driver to use a non-interrupt driven TX
strategy. This improves performance somewhat on x86/SMP systems where
interrupt delivery doesn't seem to be as fast with an SMP kernel as
with a UP kernel.
1999-03-27 20:41:25 +00:00
Steve Price
d5477a461b Bump __FreeBSD_version to denote that we now have a functional
dladdr(3) implementation.

Discussed with:	jdp, nate
1999-03-27 05:26:10 +00:00
Eivind Eklund
361d0ec590 Remove incorrect lock specs for vop_whiteout (introduced by Lite/2).
The lock specs are for vnodes only.

Add (hopefully correct) lock specs for vop_strategy, vop_getpages and
vop_putpages.
1999-03-27 03:08:07 +00:00
Eivind Eklund
4491ea9111 Correct a comment. 1999-03-27 02:39:01 +00:00
Alan Cox
cde9bc877b Changed vn_read/write such that fp->f_offset isn't touched
if uio->uio_offset != -1.  This fixes a problem with aio_read/write
and permits a straightforward implementation of pread/pwrite.

PR:		kern/8669
Submitted by:	John Plevyak <jplevyak@inktomi.com>
Reviewed by:	Matthew Dillon <dillon@apollo.backplane.com>
1999-03-26 20:25:21 +00:00
Luigi Rizzo
6d41201fc5 Use the correct length from the mbuf header instead of the one from
the IP header (this would not work for bridged packets).
This has been fixed long ago in the 2.2 branch.

Problem noticed by: a few people
Fix suggested by: Remy Nonnenmacher
1999-03-26 14:15:59 +00:00
Matt Jacob
3bd28825dd Annoying little nigglet- apparently *some* Qlogic temporarily ignore
settings you've just sent them and return random values if you follow
the set by a get. This causes problems when you latter run a Tag-enabled
command when you've command tagged mode off.
1999-03-26 00:33:13 +00:00
Nate Williams
efc7b6fd9d - Made the setting of the machdep.pccard.pcic_irq from the boot config file
actually work.

Reviewed by:	"Sean O'Connell" <sean@stat.Duke.EDU>, msmith
1999-03-26 00:20:25 +00:00
Matt Jacob
92c49d78da enable 1080 LVD support 1999-03-25 22:53:56 +00:00
Matt Jacob
4394c92f52 Add in 1080 LVD support and some basis also for the 1240. The port database
printout is now enabled.
1999-03-25 22:52:45 +00:00
Matt Jacob
7aae9d1348 roll internal tag level 1999-03-25 19:53:54 +00:00
Matt Jacob
dcb409d935 roll internal tag level 1999-03-25 19:47:33 +00:00
KATO Takenori
9939a2a908 Sync with sys/i386/isa/wd.c revision 1.190. 1999-03-25 08:29:32 +00:00
KATO Takenori
b2fa1a8926 Sync with sys/i386/isa/sio.c revision up to 1.231. 1999-03-25 08:26:50 +00:00
KATO Takenori
c87c3c5cc8 Sync with sys/i386/conf/majors.i386 revision 1.69. 1999-03-25 08:25:45 +00:00
Brian Somers
42889ed1d5 PacketAliasProxyRule takes a const char *
Reminded by: bde
1999-03-25 06:48:05 +00:00
Chuck Robey
dbc5af6d2b Add Turtle Beach Malibu soundcard (and a sample config) to CARDS as
a real example of a CS4237 soundcard.
Luigi said all contributions like this were welcome in this file.
1999-03-25 04:25:38 +00:00
Steve Price
9e7e4882cb Add support for Cardinal MVP288IV PnP modem.
Submitted by:	Alex Zepeda <garbanzo@hooked.net>
1999-03-25 00:32:54 +00:00
Dag-Erling Smørgrav
b56fecc80b Implement TUNSIFMODE and TUNSLMODE.
Submitted by:	Alfred Perlstein <bright@cygnus.rush.net>
1999-03-24 21:20:12 +00:00
Brian Somers
942759e756 Add a ``const'' and remove some inconsistent prototype args. 1999-03-24 20:28:58 +00:00
Steve Price
222b8f6a91 Add support for the USR3090 PnP modem.
PR:		10773
Submitted by:	Mike Durian <durian@boulderlabs.com>
1999-03-24 17:59:25 +00:00
Luigi Rizzo
efce68a2e9 add missing #include "opt_bdg.h" 1999-03-24 12:43:39 +00:00
Nick Hibma
acf3654412 Added a number of device names: Konica, Microsoft, Macally 1999-03-24 07:46:53 +00:00