Commit Graph

5062 Commits

Author SHA1 Message Date
pst
67857c5707 Close kern/614 - wait up to an hour for a tape operation like "fsf" (slow drives) 1996-02-08 06:23:49 +00:00
wollman
458006d550 Add a couple of macros I expect to need. 1996-02-07 21:52:57 +00:00
wollman
5d4cf224aa Comment out netccitt, netimp, and netiso entries, since we
no longer ship this code.

Submitted by:	davidg
1996-02-07 20:06:22 +00:00
wollman
88a3e24de1 Define a new socket option, SO_PRIVSTATE. Getting it returns the state
of the SS_PRIV flag in so_state; setting it always clears same.
1996-02-07 16:19:19 +00:00
dyson
88532580c7 Apparent fix for a pipe hang problem. 1996-02-07 06:41:56 +00:00
wollman
d5b2f00dce Kill netccitt. The code is ancient, nobody wants to maintain it, and it
doesn't compile cleanly.
1996-02-06 21:07:22 +00:00
wollman
a2d5b5c9bf Get rid of netiso. It hasn't compiled in some time, there are no
applications, and nobody uses it.
1996-02-06 21:02:09 +00:00
wollman
4c8887d923 Comment out ISO, CCITT, LLC, and HDLC with a note to the effect
that we no longer ship source for these protocols.
1996-02-06 20:57:46 +00:00
wollman
25ee6cca2a Clean up Ethernet drivers:
- fill in and use ifp->if_softc
	- use if_bpf rather than private cookie variables
	- change bpf interface to take advantage of this
	- call ether_ifattach() directly from Ethernet drivers
	- delete kludge in if_attach() that did this indirectly
1996-02-06 18:51:28 +00:00
jkh
3a4dbb3ce7 Fix METEOR_TEST_VIDEO case.
Submitted by:	Jim Lowe <james@miller.cs.uwm.edu>
1996-02-05 23:04:05 +00:00
wollman
9bfe2ca847 Provide a direct entry point for IP input. This actually results
in a slight decrease in performance, but will lead to better
performance later.
1996-02-05 20:36:02 +00:00
wollman
b87b197fab Make me feel a little better by filling in reasonable values for rmx_sendpipe
and rmx_recvpipe.  This has no demonstrable effect on performance.
(ttcp reports about 44 Mbit/s for all the buffer sizes I tried between
16384 and 65536.)
1996-02-05 19:34:27 +00:00
wollman
0f4941f370 Fill in the corresponding ether address of multicast and broadcast
pseudo-``ARP entries'' so arp(8) doesn't show them as `unresolved'.
1996-02-05 18:04:30 +00:00
mpp
27e5218d1c Correct some man page cross references and some file
locations.
1996-02-05 17:32:16 +00:00
dg
8f7e0fb9a7 Unspam my changes in rev 1.54 that John spammed in rev 1.55. 1996-02-05 14:23:19 +00:00
ache
83f2da5e45 Deliver all bells to current console, use different pitch
for non-originating bells.
1996-02-05 14:08:39 +00:00
dyson
8682ae1fc5 More fixes from bde.
Only modify times on success.
	splhigh() around time variable usage.
	Make atomic writes more posix compliant.
	Spelling errors.
Submitted by:	bde
1996-02-05 05:50:34 +00:00
dyson
01c2e97c89 Kva space allocated for direct buffer wasn't quite big enough. The
system can panic easily without this patch.
1996-02-05 05:17:15 +00:00
dyson
f8428b2cd3 Changed vm_fault_quick in vm_machdep.c to be global. Needed for
new pipe code.
1996-02-04 22:09:12 +00:00
dg
c053427517 Rewrote cpu_fork so that it doesn't use pmap_activate, and removed
pmap_activate since it's not used anymore. Changed cpu_fork so that
it uses one line of inline assembly rather than calling mvesp() to
get the current stack pointer. Removed mvesp() since it is no longer
being used.
1996-02-04 21:20:53 +00:00
dyson
276899d730 Improve the performance for pipe(2) again. Also include some
fixes for previous version of new pipes from Bruce Evans.  This
new version:

Supports more properly the semantics of select (BDE).
Supports "OLD_PIPE" correctly (kern_descrip.c, BDE).
Eliminates incorrect EPIPE returns (bash 'pipe broken' messages.)
Much faster yet, currently tuned relatively conservatively -- but now
	gives approx 50% more perf than the new pipes code did originally.
	(That was about 50% more perf than the original BSD pipe code.)

Known bugs outstanding:
	No support for async io (SIGIO).  Will be included soon.

Next to do:
	Merge support for FIFOs.

Submitted by: bde
1996-02-04 19:56:35 +00:00
pst
da64467214 Document kernel config flags better and add bidirectional override 1996-02-04 10:23:33 +00:00
pst
fa0f914f53 Tell userconfig about qcam 1996-02-04 10:03:19 +00:00
pst
eeb6a1a35f Add ability to bypass the auto-detection code. It used to be rock solid
for me, but has gotten a bit flakey in bidirectional parallel port mode.

Fix a bug in bidirectional parallel port transfers, more work is still
needed here (testers welcome).

Minor cleanup.
1996-02-04 10:02:35 +00:00
joerg
b7b17e09c4 Create symlinks for vnboot and bootvn, too. 1996-02-03 21:12:27 +00:00
peter
1146260c40 Fill in a lot of the missing blanks from the version I posted...
(better check to see that I've not misspelt somebody's name here, this
 info was collected from some strange places..)
1996-02-03 14:50:52 +00:00
ache
7e54aa0dab Implement CD_MEDIA_CATALOG request for read_subchannel
Obtained from: NetBSD
1996-02-03 14:33:56 +00:00
ache
a7443136fb Since ioc_read_subchannel don't used for hardware, remove padding.
Now almost all my changes backed out, expect one comment
about network byte order of LBA.
1996-02-03 14:19:13 +00:00
joerg
660a4cf0c0 Add a quirk record for the Tandberg 42XX series. Not only that these
drives require ST_Q_SNS_HLP, they also wrongly accept a blocksize of
1024 in the first place (for a QIC-150 cartridge), but complain later
about it.  The hack is to only probe for 512 for them.

Reorder the entries in st_decide_mode() so that QIC >= 525 is properly
accepted as variable blocksize.
1996-02-03 13:31:13 +00:00
phk
fb13b8ddcf Make the sorting of IPFW rules an option. You don't want it to sort them.
>>>WARNING<<<  you may have to revisit your firewall setup.
1996-02-03 11:48:12 +00:00
ache
12102ecb9d Detect yet one kind of device (taken from NetBSD)
Use more accurate TOC size calculation
1996-02-03 00:06:49 +00:00
ache
a724de6de3 Simplify READTOCENTRYS by removing fake leadout code,
SCSI system do it for us
1996-02-02 23:43:40 +00:00
joerg
e23399eaf5 Add the HP4020i CD-R as a known device.
Reorder the CD-R entries in knowndevs[].

Submitted by:	fred@jjarray.umd.edu (Fred Cawthorne)
1996-02-02 22:59:48 +00:00
joerg
e13396326f Add the Emulex MD21 ESDI-to-SCSI bridge as a known device (with more than
one LUN).
Submitted by:	Wilko Bulte
1996-02-02 22:57:27 +00:00
ache
bc4a7990f2 Implement PREVENT & CLOSE ioctls 1996-02-02 22:08:28 +00:00
ache
f690ea66de Remove close tray on open - works very bad with xcdplayer 1996-02-02 21:18:02 +00:00
ache
1dbf29acdc Exchange addr_type<->control 1996-02-02 20:54:27 +00:00
ache
92f57819e0 Calculate TOC size to match what scsi cd says.
Exchange control<->addr_type fields
1996-02-02 20:50:04 +00:00
ache
00cb60f46f I forget the fact that cd_read_toc reads toc header in any case 1996-02-02 20:43:11 +00:00
ache
de77025d55 Remove #pragma pack, use byte filler in ioc_read_subchannel
instead, all other structures already aligned
1996-02-02 20:41:11 +00:00
pst
26db461f3e Remove the ability for the user mode programs to specify bidirectional
vs unidirectional transfer modes.  The kernel handles hardware, user mode
programs shouldn't get in the way.

This cleans up some really ugly grots that I hated too. :-)

Suggested by: Sujal Patel <smpatel@wam.umd.edu>
1996-02-02 20:37:51 +00:00
pst
4207bcc720 Add support for Connectix QuickCam(tm)
* this is my unoptimized driver, it works fine, it's not as fast as it
* could be (yet) -- I have yet to merge in ideas from other QuickCam
* developers.
1996-02-02 19:27:57 +00:00
pst
2982676e0d Add support for Connectix QuickCam(tm)
* warning: this user interface is still in flux pending negotiations
* with other quickcam driver authors.  It is _not_ compatible with the
* original linux interface due to the fact that it was too restrictive.
1996-02-02 19:26:37 +00:00
pst
acb82eb21b Add Peter's list of major numbers 1996-02-02 19:12:43 +00:00
dg
ee3d120406 Killed last change - it was bogus. cpu_switch() already assumes that
return address is on the stack.
1996-02-02 18:30:06 +00:00
pst
9cb3ec85d3 Add in hooks for quickcam driver 1996-02-02 06:55:35 +00:00
wosch
ec52b9e55d add ruid and rgid to file 'status' 1996-02-02 05:19:20 +00:00
ache
f017f796fc Implement PLAYBLOCKS ioctl, add argument checking to other PLAY* ioctls
Obtained from: NetBSD (partially)
1996-02-01 19:15:41 +00:00
ache
aa6525c79f Frame whole file with #pragma pack(1) and #pragma pack(4),
structures listed here used to access hardware data directly
1996-02-01 18:18:54 +00:00
ache
b22c9963d3 Remove statement that does nothing now, forget in my prev. commit 1996-02-01 17:35:15 +00:00
ache
d1ddc81872 addr_type field was ever not assigned, control field was assigned incorrectly 1996-02-01 17:27:01 +00:00
ache
8e4aa03a96 Return to #pragma pack(4) after header is done
Obtained from: NetBSD
1996-02-01 17:19:46 +00:00
ache
de3cde140a Fix TOC size calculation: old code assing volume size here 1996-02-01 16:51:53 +00:00
ache
01dd9d5479 Oops, pick wrong volume size for leadout entry 1996-02-01 16:22:58 +00:00
ache
b3cccfa336 Add comment: reflect the fact that lba stored in network byte order 1996-02-01 16:16:11 +00:00
ache
f0bc7a6609 Oops, I pick wrong size field for leadout entry 1996-02-01 16:11:42 +00:00
jkh
51b17c5689 Sync with latest Meteor and Spigot sources from James.
Submitted by:	Jim Lowe <james@miller.cs.uwm.edu>
1996-02-01 07:36:34 +00:00
se
d42d2beca4 Slight modification of ncr_setmaxtags: set usrtags=0 for drives
that don't announce support for command queues.

SCSI_NCR_DFLT_TAGS can be specified in the kernel config file
and sets the default number of tags per disk drive.
A value of 0 means "no tags".

Minor correction in debug messages: Values from the msg_in
buffer were being printed in the msg_out trace message ...
1996-01-31 19:24:34 +00:00
gibbs
039957a808 Free the externalizing buffer. 1996-01-31 18:46:36 +00:00
gibbs
7117d2e0cf Properly calculate the amount of the devconf to output in SYSCTL_OUT.
The code outputs the dc then calls the device specific externalize
routines to fill in the dc_data area.  The old code assumed that dc_data
started one byte from the end of the dc, but with the compiler optimizing
alignment and padding, this isn't always the case.  Do an explicit
&(dc.dc_data) - &dc.  This fixes lsdev -c which must have been broken
for some time.
1996-01-31 18:05:19 +00:00
gibbs
c1d13430cf aha1742.c aic7770.c bt74x.c
- Call eisa_registerdev as soon as we have a device match.  This allows the
   "eisa_add_*" routines to tweak kdc_datalen as the kdc grows and shrinks.

eisaconf.c
 - externalize the linked lists that hold our ioaddrs and maddrs.
1996-01-31 18:02:19 +00:00
dg
f7e207c60f "out of space" -> "out of swap space". 1996-01-31 13:14:21 +00:00
dg
d31b06efba Improved killproc() log message and made it and the other similar message
tolerant of p_ucred being invalid. Starting using killproc() where
appropriate.
1996-01-31 12:44:33 +00:00
dg
66bb81b8ee Print a more descriptive message when the mb_map is filled (out of mbuf
clusters), and tell the operator what to do about it (increase maxusers).
1996-01-31 12:05:52 +00:00
asami
8b9cb8fedd Fix one warning and fix one bug found while looking at another warning (but
caused by a different reason):

. #ifndef __FreeBSD__ around check for negative size, FreeBSD size_t is
  unsigned

. Disable mirror/parity if interleave size is 0 (i.e., serial concatenation).
1996-01-31 11:25:46 +00:00
olah
09077f7acf Fix a bug related to the interworking of T/TCP and window scaling:
when a connection enters the ESTBLS state using T/TCP, then window
scaling wasn't properly handled.  The fix is twofold.

1) When the 3WHS completes, make sure that we update our window
scaling state variables.

2) When setting the `virtual advertized window', then make sure
that we do not try to offer a window that is larger than the maximum
window without scaling (TCP_MAXWIN).

Reviewed by:	davidg
Reported by:	Jerry Chen <chen@Ipsilon.COM>
1996-01-31 08:22:24 +00:00
jkh
c035295183 Add an entry for my HP Model 4020i CDR drive. 1996-01-31 07:32:11 +00:00
dyson
b4a48be7d8 Fix another problem with the new pipe code, pointed out by Bruce Evans.
This one fixes a problem with interactions with signals.
1996-01-31 06:00:45 +00:00
asami
565f8b6987 Mirror support. When CCDF_MIRROR is set:
(1) The reads are always done from the first n/2 disks.

(2) Each write is done twice, to the "data" disk (in the first half) and
    the "mirror" disk (in the second half).

ccdbuffer() now takes an extra argument (struct ccdbuf **) and stores
the pointer to ccdbuf in there.  In case of a mirrored write, it
allocates and stores two pointers.  The "residual" is also doubled
for mirrored writes so that ccdiodone() can correctly tell when all
the writes are done.
1996-01-31 03:28:21 +00:00
dyson
78108c6c2f Fix some problems with return codes on the new pipe stuff. Bruce Evans
found the problems, and this commit will fix the "first batch" :-).
1996-01-31 02:05:12 +00:00
mpp
d6779c281f Fix a bunch of spelling errors in the comment fields
of a bunch of system include files.
1996-01-30 23:33:04 +00:00
ache
6cdd16b07b Audio part: various improvements from NetBSD driver
Convert LBA to network order now
1996-01-30 23:27:20 +00:00
ache
42c8a1d37f Bugfix: don't convert LBA to host order, they must stay in network order. 1996-01-30 23:11:45 +00:00
ache
19ebe9bcfb Don't convert LBA to host order, they must stay in network order
as old code does.
1996-01-30 23:11:06 +00:00
mpp
f3dd75a38d Fix a bunch of spelling errors in the comment fields of
a bunch of system include files.
1996-01-30 23:02:38 +00:00
asami
7b3fa6ae27 Prepare for adding mirroring. Check for flags (mirror forces uniform),
reduce the size to half, etc.  Right now it only uses the first n/2 disks
for both read and write.
1996-01-30 22:34:53 +00:00
asami
85df1b8faa Add mirror flag. 1996-01-30 22:33:31 +00:00
wollman
212c3eba09 Fix a logic error in determining whether something is page-aligned
that became evident while I was thinking about something else.
(No, I am not working on the wd driver itself.)
1996-01-30 19:04:09 +00:00
wollman
0f051dbe15 No longer use the cyclecounter to attempt to correct for late or missed
clock interrupts.

Keep a 1-in-16 smoothed average of the length of each tick.  If the
CPU speed is correctly diagnosed, this should give experienced users
enough information to figure out a more suitable value for `tick'.
1996-01-30 18:56:47 +00:00
ache
a6fe55033b OOPS, forget to adjust starting track to not physically read
leadout entry
1996-01-30 16:38:30 +00:00
ache
b907f5fc5a Use ntohs/ntohl when reading TOC instead of hardcoded byte swapping.
Put fake entry len for MSF format too.
1996-01-30 16:12:18 +00:00
ache
9d251a7f88 Calculate leadout entry instead of honor ATAPI request
(it can be wrong for some devices)
1996-01-30 15:25:12 +00:00
ache
4801968f5e READTOCENTRYS: make fake leadout entry 1996-01-30 14:30:43 +00:00
ache
9e0a71c3ee READTOCENTRYS: protect against stack overflow when incorrect data
stored in CD's TOC
1996-01-30 13:15:28 +00:00
ache
37f4a0aab1 READTOCENTRYS: handle 0 and lead out requests, add argument checking 1996-01-30 12:59:00 +00:00
dg
7b11911f52 savectx() strikes again: the saved stack pointer wasn't properly adjusted
to remove the return address. It's only the frame pointer and luck that
allowed the code to work at all.
1996-01-30 12:54:21 +00:00
peter
ed8a6cec36 Call pipe_stat() when presented with a DTYPE_PIPE file in the linux
fstat() syscall, rather than panic("linux newfstat").

(Note: I've extracted this from a larger set of diffs, I'm confident I've
 not missed any dependencies but can't modload it to test it on my system)
1996-01-30 12:23:17 +00:00
ache
757048e121 Don't generate EINVAL for data_len too big in READTOCENTRYS, it
reduces automatically to reasonable value in the code below
1996-01-30 12:07:15 +00:00
ache
13a5a1d1e4 Fix READTOCENTRYS partialy based on kientzle@netcom.com patch partialy on
my own ideas
1996-01-30 11:32:20 +00:00
ache
b2ad84f5ce Fix audio part, especially READTOCENTRYS inspired by NetBSD driver
and my own ideas
1996-01-30 10:31:12 +00:00
dg
e7566de9d1 Increase tmpstk size to 8K and make certain it is longword aligned. 1996-01-30 07:59:02 +00:00
dg
4697e89bc7 Restore my change to the watchdog params that Paul spammed in rev 1.18. 1996-01-30 07:25:44 +00:00
mpp
91826993d1 Fix a typo in a comment. 1996-01-30 02:56:08 +00:00
se
42c5ea8f89 Add heuristic to detect multi-function devices that don't announce this
feature in the header type register, though it is required by the PCI spec.
This should correctly probe both functions of the Intel 82371FB chip,
without the need for a special case based on the device ID.
1996-01-30 01:14:29 +00:00
joerg
12324b6255 Remove redundant declaration for worminit(). Dunno why my config(8)
didn't generate it, but it's supposed to.
1996-01-29 19:46:26 +00:00
dg
f13dc7b998 Added a check/panic for vm_map_find failing to find space for the page
tables/u-pages when forking. This is a "can't happen" case. :-)
1996-01-29 12:10:30 +00:00
dg
33311f68ed Implement what I mentioned in rev 1.18: limit per-bucket allocations to
60% of physical memory or 60% of malloc area size, whichever is smaller.
1996-01-29 11:12:37 +00:00
dg
bc2512f99f Fixed two bugs in the calculation of the malloc area (kmem_map) size:
1) The calculation didn't account for NMBCLUSTERS, so if a large number of
   clusters was specified, it would leave little or no space for kernel
   malloc.
2) It was bogusly restricted to v_page_count. This doesn't take into
   account the sparseness of the malloc area and would have caused
   problems on machines with small amounts of memory. It should probably
   instead be changed to set the malloc limit to be constrained by
   the amount of memory, but I didn't do this.
1996-01-29 09:58:34 +00:00
gibbs
2d24ffe647 Add LIST_INSERT_BEFORE and TAILQ_INSERT_BEFORE. These are used by the
new eisaconf code.
1996-01-29 03:20:44 +00:00
gibbs
cab528dc9e Prevent media eject on first open and re-enable ejection on last close.
The previous behavior was based on the lifetime of a "mount session"
which isn't very obvious.
1996-01-29 03:19:23 +00:00
gibbs
809a50d9ae Update copyright. 1996-01-29 03:18:20 +00:00
gibbs
6757073e1c Kernel printf now returns int. 1996-01-29 03:18:05 +00:00
gibbs
2e4a124f9a Changes to support Performance enhancements in the sequencer.
Bring back the polling code (for dumps mostly), but protect it
with splbio() to make it safe for reprobes.
1996-01-29 03:17:39 +00:00
gibbs
c2da320533 Finally commit Serge's multicast and "misc other changes" patch. I
don't have a network to test it on here, but it does probe my card okay.

Submitted by: "Serge A. Babkin" <babkin@hq.icb.chel.su>
1996-01-29 03:16:14 +00:00
gibbs
0b627d75b7 Another pass through eisaconf. Ioaddrs and Maddrs are link lists now.
The Bt driver is the only one that actually registers multiple addresses.

Probe output is formatted to 80 columns.
1996-01-29 03:13:23 +00:00
gibbs
e94d9bd8af Performance optimizations. Unroll all bcopies. Use PIO to transfer SCBs
since setting up the DMA is too costly.  Restructure for efficiency.

Pause the sequencer when a parity error occurs so that the kernel driver
knows during which phase the error was encountered.
1996-01-29 03:12:06 +00:00
dyson
e2c043171a Fixed an uninitialized variable (argument to vm_map_find) -- problem
that DG detected, and promptly found a fix.
Submitted by:	davidg
1996-01-29 02:57:33 +00:00
dyson
2e58df0ad2 Added sys_pipe into files. 1996-01-28 23:43:06 +00:00
dyson
894b801eee Enable the new fast pipe code. The old pipes can be used with the
"OLD_PIPE" config option.
1996-01-28 23:41:40 +00:00
dyson
026024aadd Added new files to support the new fast pipes. After the follow-on
commits, pipe performance should increase significantly.  The pipe(2)
system call is currently supported, while fifofs will be added later.
1996-01-28 23:38:26 +00:00
joerg
72b11e691f Make worm.c compile with -Wall -Werror again.
. remove some unused variables
. declare worminit() right this time, it's actually extern (?)
. use wormminphys(), now that it's already there (hope i've got this right)
1996-01-28 23:33:23 +00:00
julian
65e9defd06 Submitted by: rich (which one?)
Another special case for probing multi-CD cdrom drives.

2nd try at this patch.
1996-01-28 22:41:44 +00:00
wollman
c02be74f05 Implement a prototype interface to bus-master IDE DMA on the Triton
chipset.  This does not attempt to do anything special with the timing
on the hope that the BIOS will have done the right thing already.  The
actual interface from the wd driver to the new facility is not
implemented yet (this commit being an attempt at prodding someone else
to do it because looking at the wd driver always confuses the h*** out of me).
1996-01-28 22:16:20 +00:00
jkh
fbcc7783ad Back out the previous change. It's not correct for -current. 1996-01-28 21:51:57 +00:00
jkh
fabcee231e Add an entry for the "MBR-7", whatever that is.
Submitted by:	rich
1996-01-28 20:43:49 +00:00
jkh
da1e719a0f 3c590 driver for FreeBSD
Submitted by:	Frederick Earl Gray <fgray@owlnet.rice.edu>
1996-01-28 20:31:11 +00:00
dyson
b3020b7bf5 An earlier modification had decreased CPU usage, but also
decreased performance.  This essentially undoes that change.
1996-01-28 18:25:54 +00:00
phk
fd7d88027b make devfs_add_devswf a little smarter about '/'; 1996-01-28 10:07:55 +00:00
phk
571dda46ed Fix DEVFS, remove unused vars. 1996-01-28 10:02:38 +00:00
joerg
71d56aaf50 Minor but fatal spelling error when merging my code into -current.
Also declared worminit() to avoid a compiler warning.  Seems that the
other SCSI drivers don't declare XXinit() yet, so perhaps we'd also
create a typedef for these func's.
1996-01-28 09:56:04 +00:00
bde
05e0fabe88 Fixed dangling pointer bugs in DIOCSDINFO.
Enabled DEVFS support.  It doesn't work while devfs is mounted
(add_devfs_devsw() doesn't work then), but seems to be safe.
1996-01-28 08:15:44 +00:00
rgrimes
cfeedcc0b6 Add missing ${DESTDIR} to afterinstall: target. 1996-01-27 23:57:06 +00:00
wollman
3ebe21e07b Decode configuration for the IDE part of the Triton chipset. This
includes a hack in the probe code: the 82371FB is a multifuction
device, but doesn't properly set the configuration bit which
indicates this.  So, we just hard-wire all 82371FBs as multifunction
devices.

This does not actually make the bus-master IDE stuff work, although
if anyone wants to work on that, I have the databooks that tell
how to use it.
1996-01-27 20:14:32 +00:00
joerg
643a8f4acd Add <sys/wormio.h>, containing the declarations that are shared between
kernel and userland.
1996-01-27 17:49:47 +00:00
joerg
21e93e2a9f The Great Merge.
The worm driver is alpha-usable!  I've stuffed everything that is
needed into the kernel driver, including the logic to select
between different vendor's quirks.

Disclaimer: this has by now _only_ been tested on a heavily tweaked
2.0.5R system.  I've done my best to retrofit it into -current, but
i don't have a chance yet to test it in a -current environment.
1996-01-27 17:48:12 +00:00
bde
b5ea338f46 [Oops, forgot to commit this together with things that depend on it.]
First attempt at creating devfs entries for sliced devices.  Doesn't
quite work yet, so the heart of it is disabled.

Added bdev and cdev args to dsopen().

Create devfs entries in dsopen() and (unsuccessfully) attempt to make
them go away at the right times.  DEVFS is #undefed at the start so
that this shouldn't cause problems.
1996-01-27 09:34:21 +00:00
bde
4cf50d85ee First attempt at creating devfs entries for sliced devices. Doesn't
quite work yet, so the heart of it is disabled.

Added bdev and cdev args to dsopen().

drivers:
Fixed device names, links, minor numbers and modes.

wd.c:
Started actually supporting devfs.

diskslice.h:
Added devfs tokens to structs (currently 576 of them per disk! :-().

subr_diskslice.c:
Create devfs entries in dsopen() and (unsuccessfully) attempt to make
them go away at the right times.  DEVFS is #undefed at the start so
that this shouldn't cause problems.
1996-01-27 04:18:15 +00:00
bde
b367666afd Allocate DMA bounce buffers only when requested by drivers. Only the
fd and wt drivers need bounce buffers, so this normally saves 32K-1K
of kernel memory.

Keep track of which DMA channels are busy.  isa_dmadone() must now be
called when DMA has finished or been aborted.

Panic for unallocated and too-small (required) bounce buffers.

fd.c:
There will be new warnings about isa_dmadone() not being called after
DMA has been aborted.

sound/dmabuf.c:
isa_dmadone() needs more parameters than are available, so temporarily
use a new interface isa_dmadone_nobounce() to avoid having to worry
about panics for fake parameters.  Untested.
1996-01-27 02:33:48 +00:00
bde
ae64a265a8 Declared new functions isa_dmainit() and isa_dmadone_nobounce().
Sorted and KNFised declarations.
1996-01-27 01:57:02 +00:00
bde
1cdb5a951c Cleaned up unused #includes and some other historical cruft.
Sorted and KNFised declarations.
1996-01-27 01:56:30 +00:00
bde
24c35ad108 Fixed allocation of DMA buffers. The DMA bounce buffers were sometimes
overrun by 2 pages.

Fixed the (unused) values returned from device attach functions.

Fixed checking of unit number in device open functions - don't load bad
pointers or print error messages about the contents of bad pointers.

Removed unused #includes.

asc.c:
Fixed premature setting of flags in ascopen() - copied the better order
in gscopen().

gsc.c:
Fixed conflict handling for drq:
- fail the probe if the configured drq doesn't match the actual drq.
- set the configured drq to match the actual drq in the autoconfig case.

Reviewed by:	Nobody; authors didn't respond to mail.
1996-01-27 00:53:58 +00:00
bde
0f99c673dc Added a `boundary' arg to vm_alloc_page_contig(). Previously the only
way to avoid crossing a 64K DMA boundary was to specify an alignment
greater than the size even when the alignment didn't matter, and for
sizes larger than a page, this reduced the chance of finding enough
contiguous pages.  E.g., allocations of 8K not crossing a 64K boundary
previously had to be allocated on 8K boundaries; now they can be
allocated on any 4K boundary except (64 * n + 60)K.

Fixed bugs in vm_alloc_page_contig():
- the last page wasn't allocated for sizes smaller than a page.
- failures of kmem_alloc_pageable() weren't handled.

Mutated vm_page_alloc_contig() to create a more convenient interface
named contigmalloc().  This is the same as the one in 1.1.5 except
it has `low' and `high' args, and the `alignment' and `boundary'
args are multipliers instead of masks.
1996-01-27 00:13:33 +00:00
wollman
ae614ac290 Delete the if_private[] array in struct ifnet; this turned out to be
of limited utility.  In their place, add bunch of pointers
which will eventually be needed by the polled-interrupt scheme we're working
here.  (It will probably be a while before the code is written and
committed here.)  At the same time, a `void *if_softc' field
was added to the beginning of the structure to make certain driver
writers happier.

The practical upshot of all this is that you need to
recompile utilities such as netstat which manipulate struct ifnet.
1996-01-26 22:09:54 +00:00
phk
eca1779166 Fix a bug I made in the devfs. 1996-01-26 12:42:39 +00:00
phk
2dd896405c The last part of the ether_sprint -> %6D change.
Sorry for the delay.
(%D is for hexdumping.)
1996-01-26 09:29:29 +00:00
joerg
a628d85b60 Correctly initialize the `btprobing' variable. It's always been 0,
causing a bogus error message to appear if no board has been fond.
1996-01-25 23:03:07 +00:00
joerg
a00d9f26ca Remove the "no board found at" message, ia rather similar message with
the same information is printed one line below by the generic isa code
anyway.
1996-01-25 23:00:42 +00:00
wollman
6fd0c86ccc Correctly identify the various parts of the Triton chipset. 1996-01-25 20:38:31 +00:00
se
45ff9914bf Add support for multi-function devices. 1996-01-25 18:32:00 +00:00
ache
e764e499b9 Change RUKEYMAP sligtly 1996-01-25 16:37:20 +00:00
phk
8891fd7f8c Avoid local sprintfs and other printf'isms. 1996-01-25 07:21:50 +00:00
phk
395d897625 Make devfs_add_devfsf() which takes printf style args. 1996-01-25 07:17:31 +00:00
phk
b744a1f417 Don't use %r, we havn't got it anymore.
Submitted by: bde
1996-01-25 07:15:40 +00:00
peter
eb3b1f018c This time, really make the procfs work when reading stuff from the UPAGES.
This is a really ugly bandaid on the problem, but it works well enough for
'ps -u' to start working again.  The problem was caused by the user
address space shrinking by a little bit and the UPAGES being "cast off" to
become a seperate entity rather than being at the top of the process's
vmspace.  That optimization was part of John's most recent VM speedups.

Now, rather than decoding the VM space, it merely ensures the pages are
in core and accesses them the same way the ptrace(PT_READ_U..) code does,
ie: off the p->p_addr pointer.
1996-01-25 06:05:38 +00:00
bde
aaffa65628 Fixed spelling of s_namlen so that this compiles again. 1996-01-25 00:45:37 +00:00
bde
bdbbbadb36 Restored newline at the end of panic messages. 1996-01-25 00:17:22 +00:00
phk
e7b9c377f8 Use new printf features rather than local kludges. 1996-01-24 21:12:23 +00:00
phk
defff6cc5b Remove %r hack, we have vprintf() now.
Add %D for "dumping" data.  Good for ethernet/MAC addresses and such.
Handle 1 < radix < 37.
1996-01-24 20:56:20 +00:00
phk
b9b02a56e8 Extend to handle all radix < 37 1996-01-24 20:51:26 +00:00
wollman
18835fb2f0 Fix memory leak in case of adding a host route on top of another one.
Pointed-out-by:  Bill Fenner <fenner@parc.xerox.com>
1996-01-24 20:27:19 +00:00
wollman
d49cf7fbf1 Disable $Log$ 1996-01-24 20:01:27 +00:00
peter
be43fa0648 Attempt to fix the procfs LKM after making some of the procfs
code shared with ptrace and "standard" in the config.
1996-01-24 19:34:49 +00:00
mpp
35fc06f05c Add a check to prevent a computation from underflowing and causing
a panic due to an attaempt to allocate a buffer for a terabyte or
so of data when an attempt is made to create sparse data (e.g.
a holey file) more than 1 block past the end of the file.

Note:  some other areas of this code need to be looked at,
since they might cause problems when the file size exceeds 2GB,
due to storing results in ints when the computations are being
done with quad sized variables.

Reviewed by:	bde
1996-01-24 18:52:18 +00:00
peter
945d0db76f Add commands for ptrace get/set registers.. (Same numbers as NetBSD) 1996-01-24 18:51:48 +00:00
peter
8e4035cf40 procfs_machdep.c is now shared with ptrace as well. It is now no longer
optional.
1996-01-24 18:47:58 +00:00
peter
60f6ecc87d procfs_{mem|regs|fpregs}.c are now completely shared with ptrace(),
and are no longer optional.  This cuts down some code duplication.
1996-01-24 18:44:42 +00:00
peter
7ce7970731 Major fixes for procfs..
Implement a "variable" directory structure. Files that do not make
sense for the given process do not "appear" and cannot be opened.
For example, "system" processes do not have "file", "regs" or "fpregs",
because they do not have a user area.

"attempt" to fill in the user area of a given process when it is being
accessed via /proc/pid/mem (the user struct is just after
VM_MAXUSER_ADDRESS in the process address space.)

Dont do IO to the U area while it's swapped, hold it in place if possible.

Lock off access to the "ctl" file if it's done a setuid like the other
pseudo-files in there.
1996-01-24 18:41:41 +00:00
peter
372aa68f42 Major fixes for ptrace()...
PT_ATTACH/PT_DETACH implemented now and fully operational.
PT_{GET|SET}{REGS|FPREFS} implemented now, using code shared with procfs
PT_{READ|WRITE}_{I|D} now uses code shared with procfs
ptrace opcodes now fully permission checked, including ownerships.
doing an operation to the u-area on a swapped process should no longer
panic.
running gdb as root works for me now, where it didn't before.
general cleanup..

Note, that this has some tightening of permissions/access checks etc.
Some of these may be going too far..  In particular, the "owner" of the
traced process is enforced.  The process that created or attached to
the traced process is now the only one that can "do" things to it.
1996-01-24 18:29:00 +00:00
peter
021011c8f8 proc.h: Add PHOLD()/PRELE() macros to ensure the U area is not swapped
while doing ptrace/procfs in it.
ptrace.h: uncomment PT_ATTACH/PT_DETACH, I am committing code to do this.
1996-01-24 18:11:23 +00:00
joerg
af65cb03e8 Hide the probe warnings behind `bootverbose'. 1996-01-23 22:55:08 +00:00
se
9516aa2caf Make PCI interrupt handlers return void like everybody else does.
Reviewed by:	davidg
1996-01-23 21:48:28 +00:00
wollman
1d9e7dac5c Spelling error: Busting -> Bursting. 1996-01-23 21:31:51 +00:00
phk
5a1d479ab0 Remove some now unused printfoids. 1996-01-23 21:17:59 +00:00
wollman
7b8816e057 Got the sense of the L1 cache enabled test wrong; fixed. 1996-01-23 20:36:49 +00:00
wollman
5de35f4d42 Add support for dumping the configuration of the Intel
82371FB PCI ISA IDE Xcellerator (sic) chip.  The IDE function
will not be done until Stefan tells me how to access it.
1996-01-23 20:21:24 +00:00
fenner
ef1b06ef29 First piece of fixing ppp/proxy arp problem:
If an attempt to add a route fails because an "ARP table" entry is in
the way, remove the ARP entry and retry the add.

Reviewed by:	nate
1996-01-23 05:15:30 +00:00
dg
4332d58d94 Simplified savectx() a little and fixed a bug that caused it to return
garbage in the child process rather than "1" like it is supposed to.

Reviewed by:	bde
1996-01-23 02:39:24 +00:00
wollman
6ae0d73e93 Add register definitions for Intel 82437FX (Triton System Controller) 1996-01-22 22:43:48 +00:00
phk
285a427184 bounds check the radix, just in case. 1996-01-22 13:21:33 +00:00
mpp
d1e27e627b Changed the description of SIGSYS to better reflect what
it means when that signal is received.  Closes PR# 686.
1996-01-22 12:31:15 +00:00
julian
dcd9f7224a Obtained from: uthreads package 1996-01-22 00:32:08 +00:00
julian
619b731f5b Reviewed by: julian and (hsu?)
Submitted by:	 John Birrel(L?)

changes for threadsafe operations
1996-01-22 00:02:33 +00:00
joerg
7c9652cccf Initialize the cpu_class variable. This prevents i386 machines from
panicing with a privileged instruction fault early at boot time.
Submitted by:	rock@wurzelausix.CS.Uni-SB.DE (D. Rock)
1996-01-21 20:57:03 +00:00
bde
7e5df308af Fixed the one remaining %r. 1996-01-21 19:18:46 +00:00
phk
db9288fd24 One missed printf in the debugger.
Found By: bde
1996-01-21 16:30:43 +00:00
joerg
c4433ab5dc Implement an optional TIMEOUT value while entering the boot parameter
string.  This avoids indefinite hangs e.g. when used on a noisy serial
console.  It's not turned on by default.
1996-01-21 11:30:12 +00:00
jkh
57ebe2846e Newest version of the Matrox Meteor driver. Tested with various MBONE
tools and found to work better with both nv and vic.
Submitted by:	Jim Lowe <james@miller.cs.uwm.edu>
1996-01-21 10:26:54 +00:00
julian
5386330407 Slightly improved debug messages for inserting new items 1996-01-21 09:43:31 +00:00
julian
cbee56e70f oops.
get the last edit right
1996-01-21 09:07:58 +00:00
julian
acadd91a43 Submitted by: Bruce Evans (bde)
better naming for  exported devfs function
and better place for the prototype
1996-01-21 09:03:15 +00:00
bde
8ead8d0e84 Removed last vestige of JREMOD. 1996-01-21 01:37:30 +00:00
dyson
30c85f81b1 Previous commit to vfs_cluster accidentally disabled read-ahead. Problem
fixed by initializing "alreadyincore" to 0 in the case of
sequential reads.
1996-01-20 23:24:16 +00:00
bde
b03cd89993 Removed stale #includes of "opt_sysvipc.h". 1996-01-20 21:36:31 +00:00
joerg
4b3be41309 Fold in my latest changes to the worm driver.
This makes it sorta usable, just for my ``proof-of-concept'' Perl
script i've been posting to freebsd-scsi.  The driver will be
overhauled further, this is just to provide Jordan with a base to
perform testing of his own with his HP burner.  Use entirely at your
own risk, expect a bunch of misburnt CD-R's when using it already in
this very green stage.

Note that by now the driver will only work when the CD-R has already
been in the drive at boot time.
1996-01-20 15:27:36 +00:00
joerg
fb3b6ba3b0 Make the "uk" device usable again. The open() always failed due to an internal driver
design problem.
1996-01-20 15:05:55 +00:00
nate
3453756aa9 Added a comment above the npx0 device line
# Mandatory, don't remove
1996-01-20 06:14:33 +00:00
phk
a40c665223 Reinstate AUTO_EOI_1. This did break suspend/resume on some portables.
In particular mine.  We may want to make it a negative option to
keep GENERIC sane, ie NO_AUTO_EOI_1.
1996-01-19 23:38:07 +00:00
dyson
99219205c8 Fixed vm_map_find for new vm changes. 1996-01-19 23:00:38 +00:00
dyson
f87f45ea51 Fixed vm_map_find for new vm updates. 1996-01-19 22:59:24 +00:00
phk
fd032b69a6 Imake %.*s really work. :-( 1996-01-19 21:05:52 +00:00
se
735dc86501 Fix bad typo: > was used instead of >> ...
Submitted by:	Matt Thomas <matt@lkg.dec.com>
1996-01-19 19:03:47 +00:00
se
45c6f961ff Improve PCI probe messages by printing the bus number.
Add missing newline to PCI to PCI bridge message.

Submitted by:	Matt Thomas <matt@lkg.dec.com>
1996-01-19 19:01:19 +00:00
peter
eabe12547d Some trivial fixes to get it to compile again, plus some new lint:
- cpuclass should be cpu_class
- CPUCLASS_I386 should be CPUCLASS_386
(^^ those only show up if you compile for i386)
- two missing prototypes on new functions
- one missing static
1996-01-19 14:19:56 +00:00
phk
02594239cb Make result of sprintf zero terminated. Fix %r for sprintf case. 1996-01-19 11:38:18 +00:00
peter
751bd9fd9c remove tcp_lastport - it has not been used for quite a while (at least
since the hashed pcb's I think).
1996-01-19 08:02:34 +00:00
peter
2f93f3daa7 Change the default local address range for IP from 1024 through 5000
to 20000 through 30000.  These numbers are used for local IP port numbers
when an explicit address is not specified.

The values are sysctl modifiable under: net.inet.ip.port_{first|last}_auto

These numbers do not overlap with any known server addresses, without going
above 32768 which are "negative" on some other implementations.

20000 through 30000 is 2.5 times larger than the old range, but some have
suggested even that may not be enough... (gasp!)  Setting a low address
of 10000 should be plenty.. :-)
1996-01-19 08:00:58 +00:00
dyson
8fc8a772af Eliminated many redundant vm_map_lookup operations for vm_mmap.
Speed up for vfs_bio -- addition of a routine bqrelse to greatly diminish
	overhead for merged cache.
Efficiency improvement for vfs_cluster.  It used to do alot of redundant
	calls to cluster_rbuild.
Correct the ordering for vrele of .text and release of credentials.
Use the selective tlb update for 486/586/P6.
Numerous fixes to the size of objects allocated for files.  Additionally,
	fixes in the various pagers.
Fixes for proper positioning of vnode_pager_setsize in msdosfs and ext2fs.
Fixes in the swap pager for exhausted resources.  The pageout code
	will not as readily thrash.
Change the page queue flags (PG_ACTIVE, PG_INACTIVE, PG_FREE, PG_CACHE) into
	page queue indices (PQ_ACTIVE, PQ_INACTIVE, PQ_FREE, PQ_CACHE),
	thereby improving efficiency of several routines.
Eliminate even more unnecessary vm_page_protect operations.
Significantly speed up process forks.
Make vm_object_page_clean more efficient, thereby eliminating the pause
	that happens every 30seconds.
Make sequential clustered writes B_ASYNC instead of B_DELWRI even in the
	case of filesystems mounted async.
Fix a panic with busy pages when write clustering is done for non-VMIO
	buffers.
1996-01-19 04:00:31 +00:00
fenner
d9db1417ad Add definitions for ICMP router discovery.
Reviewed by:	wollman
1996-01-19 01:19:08 +00:00
ache
b1f0e8424f Fix buffer sizes calculation looking into new Linux driver.
Save 112K for SB, 64K for PAS and 64K for MSS.
Since PAS use SB emulation, 176K normally saved for it.
Few minor optimizations added like in Linux driver.
1996-01-18 20:54:15 +00:00
se
97c5aa5ded Change default value of MAX_LUN from 1 to 8. 1996-01-18 19:59:23 +00:00
phk
1525c6d7bd Make %.*s work. 1996-01-18 10:23:02 +00:00
olah
93bd3a261b Be more conservative when T/TCP extensions are disabled. In particular,
do not send data and/or FIN on SYN segments in this case.
1996-01-17 09:35:23 +00:00
ache
974b820640 Workaround missing interrupts - dma_reset on them (when timeout occurse).
When you start tracker and produce some heavy disk activity,
output interrupts becomes lost and I don't know how to solve it
finally. Newly added code at least allows recovery after timeout.
1996-01-17 05:43:38 +00:00
phk
e033942d45 Use the new & improved printf rather than homegrown kludges.
Proposed by: bde
1996-01-16 18:13:18 +00:00
phk
3298f0814f Remove local TRUE & FALSE definitions.
Fall into debugger on negative blk#.
1996-01-16 18:11:24 +00:00
phk
34a97f9682 Fix a printf, well, actually break it, that is...
We don't have the ability to print 64bit things yet...
1996-01-16 18:10:19 +00:00
phk
80fe9dce33 Add support for %.{int|*}s 1996-01-16 18:08:57 +00:00
dg
0b3d2c7fe7 Make sure the mountpoint is marked busy before doing operations on it.
This fixes a panic that freefall suffered last night.

Obtained partially from 4.4-lite2, but minus the new bug that it introduced
1996-01-16 13:07:14 +00:00
ache
f41ed39086 Small modification to my prev change:
1) set aborting flags for all signals because tsleep exited
not by timeout and not by wakeup.
2) Simplify expression.
1996-01-16 12:29:37 +00:00
bde
bb2aa4f2a6 Moved BCD declarations to the correct header (libkern.h).
Fixed BCD declarations.  They didn't match their definitions...

libkern.h, bcd.c:
KNFised.  `indent' worked 99% perfectly on bcd.c.  It worked 99%
_imperfectly_ on subr_prf.c.
1996-01-16 10:23:22 +00:00
ache
1f410eb051 1) Fix comments: 386bsd -> FreeBSD, some other wrong info.
2) Use CURSIG(curproc) in PROCESS_ABORTING instead of junk code was there.
3) Reanimate timeout code in DO_SLEEP by setting WK_TIMEOUT flag
   which is never set in old code.
4) DO_SLEEP: set aborting flag on interrupting singnals as supposed, not
   on signals which do nothing as in old code.
5) Cleanup WAKE_UP macro, WK_WAKEUP not used.
6) Remove wrong typecasts in sleep/wakeup code.
1996-01-16 10:19:23 +00:00
bde
65c0136ca9 Removed declarations of nonexistent functions copyoutstr(), fuiword()
and suiword().  They are no longer referenced in the machine-independent
code (I think fuiword() and suiword() were only used by old versions of
ptrace(), and copyoutstr() by old versions of exec).

Added `const' where appropriate.

Changed u_int to size_t' where appropriate.

Named last arg of copystr() and copyinstr() better.
1996-01-16 09:57:25 +00:00
bde
d4ab6cfcb3 Removed declarations of nonexistent functions. 1996-01-16 07:42:08 +00:00
ache
957026871d Since new bcd* macros not argument range overflow resistant,
fix argument overflow for years >= 2000
1996-01-16 06:35:40 +00:00
ache
ad0738fce4 sleep/wakeup macros was designed to do it on random address in the stack.
This random address can be matched (with some probability) with another
sleep addresses from other drivers, which can cause strange sleep/wakeup
sequence. Rewrite this ugly code to do the right thing.
1996-01-16 06:07:09 +00:00
se
a072ff8139 Back out patch 1.53. The problem report that had made me commit this
change turned out to have been caused by some other change, and the
patch should have had no effect at all (just made the code a little
longer).
1996-01-15 23:51:10 +00:00
se
3c03dbc458 Disable handshake timeout. Some devices don't send an ACK for several
seconds ...

Submitted by:	wolf
1996-01-15 23:16:39 +00:00
phk
c3e6222aa5 Get rid of two and a half printf in the kernel.
Add more features to the one remaining to handle the job:
	+	signed quantity.
	#	alternate format
	-	left padding
	*	read width as next arg.
	n	numeric in (argument specified) default radix.

Fix the DDB debugger to use these.
Use vprintf in debug routine in pcvt.

The warnings from gcc may become more wrong and  intolerable because
of this.

Warning:  I have not checked the entire source for unsupported or
changed constructs, but generally belive that there are only a few.

Suggested by: bde
1996-01-15 22:41:03 +00:00
phk
cec94deabe My wife is busy making me a new conical hat, so you don't need to
send any to me this time.  Commited an old copy of this files where
the tables were swapped.  Duh!.
1996-01-15 21:26:43 +00:00
phk
53601cdcfd Soren called an said that I screwed up badly, so I backup until
I find out how... Sorry.
1996-01-15 21:12:50 +00:00
phk
ad0d6ac8db Remove some unused vars, use new hex2ascii macro. 1996-01-15 16:15:27 +00:00
phk
866d9567ab Make bin2bcd and bcd2bin global macroes instead of having local
implementations all over the place.
1996-01-15 10:28:44 +00:00
dg
7a93e91835 This driver really is for the Pro/100B and not for the Pro/100 (and in fact
doesn't even work with a Pro/100)...updated to reflect this.
1996-01-15 10:12:41 +00:00
phk
62673efe98 Add the bcd <-> bin and hex -> ascii tables. 1996-01-15 10:03:49 +00:00
se
f9c7af3d08 Make the NCR driver on the boot floppy kernel not negotiate synch. SCSI
transfers for CDROM drives.
1996-01-15 00:10:15 +00:00
bde
c53b410003 Fixed an overflowing multiplication in vnstrategy() by replacing it with
the standard macro dbtob().  The non-B_PAGING case now works well enough
to run newfs on a 32GB virtual drive.

Fixed numerous bogus variable types and one overflowing multiplication
in the B_PAGING case of vnstrategy().  Swapping to virtual drives larger
than 2GB might work now.
1996-01-14 20:32:14 +00:00
bde
d1eb245b0a Partially fixed negative and truncated "Avail" counts in df output.
This fixes PR943.

ffs/ffs_vfsops.c:
ffs_statfs() multiplied by (100 - minfree) as part of calculating the
minfree percentage (complemented in 100%), so with the standard minfree
of 8, it was broken for file systems of size >= 1TB/92 = 11GB.  Use the
standard freespace() macro instead.  This also fixes a rounding bug (the
"Avail" count was sometimes 1 too small).

ffs/* (not fixed):
The freespace() macro multiplies by minfree, so with the standard
minfree of 8, it is broken for file systems of size >= 1TB/8 = 128GB.
This bug is more serious since it affects block allocation.

ffs/ffs_alloc.c (not fixed):
Ordinary users are sometimes allowed to allocate 1 (partial) block
too many so that the "Avail" count goes negative.  E.g., if there is
1 fragment available and the file is fairly large, one more full
block is allocated.

df/df.c:
ufs_df() used/uses essentially the same code as ffs_statfs(), so it
had/has the same bugs.

ufs_df() gratuitously replaced "Avail" counts of < 0 by 0, so it
gave different results for non-mounted file systems in this case.
1996-01-14 18:55:09 +00:00
joerg
167b5f5854 Bump the timeout in st_load() from 5 to 15 minutes. My Tandberg
TDC3620 takes 4.5 minutes to retenstion a QIC-250 cartridge, so the
5 minutes seem to be too tight.
1996-01-14 16:29:01 +00:00
sos
158fdfef06 Add linux_mknod so that it will do mkfifo if needed... 1996-01-14 10:59:58 +00:00
gibbs
4eb0edb707 Register our softc at attach time. I forgot to do this in my last commit,
causing a panic.
1996-01-14 02:19:42 +00:00
phk
ea41ba61cb Document NFS_NOSERVER. 1996-01-13 23:30:10 +00:00
phk
9e14900495 Add an option NFS_NOSERVER which saves 100K in the install kernel (or
any other kernel that uses it).  Use with option NFS.
1996-01-13 23:27:58 +00:00
bde
b4cbe069b9 Fixed renaming of private DEBUG macro. The previous revision missed
one case in asc.c and almost all cases in gsc.c.
1996-01-13 20:43:10 +00:00
phk
806ab1ae70 Avoid bzero becomming a common symbol in all .o files. 1996-01-13 18:02:41 +00:00
bde
8a56d80536 Fixed handling of Feb 29 in resettodr(). 1996-01-12 17:33:12 +00:00
gibbs
1e4dbad756 Take a different approach to the SPIORDY race condition. Simply clear
SPIORDY just before we ack on the bus so that there is no chance to
see SPIORDY for the same byte twice.

Make some small modifications so that the Linux aic7xxx driver can use
our sequencer and register definition files verbatum.
1996-01-11 06:17:49 +00:00
se
00c8059b68 Add back initialization of "ncrp[unit]" since ncrcontrol relies on it. 1996-01-10 21:20:57 +00:00
ats
e5ea246b19 Add the 3C595 as a supported device for vx0. Delete the rest of the line
for the vx0 device, it is not needed as for all other pci devices.
1996-01-09 23:14:57 +00:00
ats
ecb5802a84 Add the pci-numbers for the 3c595 10/100Mb card to the driver. 1996-01-09 23:07:32 +00:00
se
4c496827e5 Add back nncr and ncrp for now. ncrcontrol relies on them.
(To be replaced by sysctl accesses some time ...)

Remove a backward jump from the NCR script, which allowed a SCSI target
to receive any number of NOP messages it desired. If a target indeed
does such a silly thing, make it fail at the next instruction, instead
of causing a timeout a few seconds later.
1996-01-09 19:57:49 +00:00
gibbs
136f35748b Don't bother setting the DSCommand register. Adaptec's own BIOS doesn't. 1996-01-09 16:14:53 +00:00
gibbs
9da24e43b6 Change the inb and outb routines slightly. It seems that waiting for
SPIORDY after polling REQINIT is a bad idea.
1996-01-09 16:14:03 +00:00
dg
376af46ac8 Fix logic bug (!= should be ==) in recent P2P/multicast kludge.
Reviewed by:	Bill Fenner <fenner@parc.xerox.com>
Submitted by:	Dave Marquardt <marquard@austin.ibm.com>
1996-01-09 08:26:07 +00:00
wpaul
3b2918e2d0 Fix the 'extraneous newline' problem a little more sensibly: just taking
it out fixes my problem but hoses the GUS MAX probe messages. Check what
device we have and print things appropriately for each.

Pointed out by: Jim Lowe <james@miller.cs.uwm.edu>
1996-01-09 03:19:51 +00:00
peter
94d839041d clean up si_dprintf a bit so that it uses vararg argument parsing that does
not cause warnings, and uses printf() to do a vprintf()-like output.
1996-01-09 03:01:45 +00:00
guido
128060c302 Fix a bug where having a process listening to both a INADDR_ANY and a
local address, that was assigned with ifconfig alias and netmask
0xffffffff, would receive duplictae udp packets.
This behaviour can easily be seen by having named run, and using the alias
address as the name server.
This solution is not the pretiest one, but after talk with Garreth, it
is seen as the most easy one.
1996-01-08 20:59:06 +00:00
ache
010b876e8e Replace ugly year/month calculations in resettodr to more clean
variants, idea taken from NetBSD clock.c.
At least year calculation was wrong, pointed by Bruce.
Use different strategy to store year for BIOS without RTC_CENTURY
1996-01-08 18:50:14 +00:00
joerg
6869555537 MTRETENS for the wt driver. This patch got lost with
my previous commit.
1996-01-08 12:46:15 +00:00
joerg
41bcdb612e Implement the MTRETENS command. 1996-01-08 12:26:15 +00:00
peter
7d1993a61c No longer generate empty opt_sysvipc.h, and no longer issue -DSYSVSHM etc
for the CFLAGS.  Now, it tracks whatever the booted kernel has rather than
being specifying what features your kernel has at lkm build time.
1996-01-08 05:36:17 +00:00