Commit Graph

18222 Commits

Author SHA1 Message Date
mjacob
7cc44d2aca roll platform minor 1999-12-03 06:56:43 +00:00
mjacob
28a6d19c00 clean up sprintf and have buffer that won't overflow 1999-12-03 06:56:23 +00:00
mjacob
394174889a turn some messages into CFGPRINT messages 1999-12-03 06:55:39 +00:00
jkh
26fb1d34d5 Define name length differently for alpha in order to preserve
backwards compatibility.

Submitted by:	Andrew Gallatin <gallatin@cs.duke.edu>
Reviewed by:	mckusick
1999-12-03 02:23:34 +00:00
n_hibma
aaff10513a Fix the 'usb0: USB revision unknown, not supported' people have been seeing
by identifying the version in the PCI drivers.

The OHCI driver just presets this to 1.0 as it is not specified in the
PCI registers anywhere. This should be revisited once USB 2.0 is in
wide spread use.
1999-12-03 01:34:42 +00:00
billf
92aa1686d2 Remove the 'alpha, use at your own risk' death-statement.
Reviewed by:	mckusick (verbally at FreeBSDcon)
1999-12-03 00:40:31 +00:00
billf
3d7f6e72a3 Fix typo, add $FreeBSD$ 1999-12-03 00:34:26 +00:00
msmith
aadc1e0695 Remove the 'gzip' image activator. We're not using a.out anymore, so save
ourselves just over 8k.
1999-12-03 00:16:20 +00:00
imp
a5ed2dfc01 Print device names for children that fail to detach.
Free child array when we're done with it.

Forgotten by: imp
Submitted by: Nick Hibma <hibma@skylink.it>
1999-12-02 19:51:34 +00:00
imp
396ff7b963 Make pccardc beep actually work. The kernel was doing the wrong thing
with the beep information it had (like ignoring it).

Submitted by: sanpei@sanpei.org (MIHIRA-san Yoshiro)

Add $FreeBSD$ to pccard_beep.c while I'm here.
1999-12-02 19:46:41 +00:00
n_hibma
5b399fe673 Reserve 138 for usio, the USB sio driver by Doug Ambrisko, Whistle.
Also, change mail address in all case to n_hibma@freebsd.org
1999-12-02 19:45:19 +00:00
archie
47cb60fd85 Add 'const' to the bpf_filter() and bpf_validate() prototypes.
Remove a stale comment from bpf_validate().
1999-12-02 19:36:05 +00:00
sheldonh
96d57bca5e Reserve #137 for nCipher's nFast PCI hardware cryptographic
accelerator, for which open source drivers are under development,
for John Hartley <john@ncipher.com>.
1999-12-02 17:46:17 +00:00
n_hibma
9fbcb16d5f In one queue all the TDs (transfer descriptor, packets) for one transfer
are queued.  Traverse the queues vertically and then horizontally.
This means that TDs for one xfer are transmitted back to back until the
first NAK or error condition. Up to now we transmitted a TD per frame
and transmitted the next TD in the next frame.

The old approach is more fair if you have the end of the queue point at
the beginning of the control transfer queue, but also a lot more overhead
due to the fact that the QHs have to be read more often.

The new approach squirts the packets down the line as fast as possible
for one transfer and then does the next one. In the current situation,
with fairly empty USB buses, this is a more sensible approach. We might
have to revisit the scheduler later however.

It speeds up large transfers (Zip drive, Host-To-Host adapters) on UHCI
by a factor of 5 and makes it as fast as OHCI on the bus.

The next problem to solve is the question why the limit is 300kb/s and
not 1000/kb/s (kb == kilobyte).
1999-12-02 16:43:18 +00:00
n_hibma
c25db53ca5 Remove check for attached state.
sc = devclass_get_softc(devclass, unit);

doesn't return NULL during attach anymore, and produces the sc,
identical to (for devclass_get_unit(devclass, unit) != NULL that is):

   sc = device_get_softc(devclass_get_unit(devclass, unit));

Reviewed-by:   dfr
1999-12-02 16:30:21 +00:00
nyan
8eb4b40d98 Sync with sys/i386/conf/GENERIC revision up to 1.207. 1999-12-02 14:00:28 +00:00
mdodd
9a2933394d Remove the "MCA not supported" from RELNOTES.TXT and add
mention of the various devices that are supported.

Add some text and entry to LINT for 'controller mca0'.

I'd like to turn this option on in GENERIC as well as it
isn't impacting and has a small footprint.
1999-12-02 10:01:06 +00:00
imp
be66291a6b /tmp/msg 1999-12-02 05:46:22 +00:00
dcs
267971fd82 Add bus suffix to mii. 1999-12-02 03:48:50 +00:00
dcs
9c753785a8 Add if_ prefix to network drivers. 1999-12-02 03:47:46 +00:00
jlemon
e8ffbdb2ac Change the delayed ack time from 200ms to 100ms.
This results in closer behavior to earlier versions, where the fixed
200ms timer actually resulted in a delay anywhere from 1..200ms, with
the average delay being 100ms.

Pointed out by:	 dg
1999-12-02 03:25:19 +00:00
jlemon
8824ec0de5 Remove code to select APM version with flags to the apm0 device. This
code has been disabled for the last 4 months.

Prodded into action by:	 n_hibma
1999-12-02 03:13:11 +00:00
billf
35dcdd8499 Grammar nit. 1999-12-02 03:01:54 +00:00
msmith
73c5f3be1f Add the AMI MegaRAID and Mylex DAC960 drivers. Installation to arrays
on these controllers is now no different to the process for any other
supported disk controller.
1999-12-02 02:53:08 +00:00
archie
25b8ac3c90 Use m_dup() instead of m_copypacket() to duplicate the mbuf chain.
This fixes a bug where if the original packet was modified downstream
of the tee node, then the copy could get modified too.
1999-12-01 23:11:58 +00:00
archie
22ba679083 Eliminate compiler warning. 1999-12-01 22:56:51 +00:00
archie
8e6dc36b73 The functions m_copym() and m_copypacket() return read-only copies,
because in the case of mbuf clusters they only increment the reference
count rather than actually copying the data.

Add comments to this effect, and add a new routine called m_dup() that
returns a real, writable copy of an mbuf chain.

This is preliminary work required for implementing 'ipfw tee'.

Reviewed by:	julian
1999-12-01 22:31:32 +00:00
archie
abcc28c7f8 Add more comments describing how to use parse types and how they work. 1999-12-01 19:41:15 +00:00
archie
a5c64fe8bb Show how to supply a struct ng_cmdlist for (de)asciification
of control messages.

Suggested by:	julian
1999-12-01 19:40:37 +00:00
mckusick
579c93e793 Preferentially allocate the first indirect block in the same
cylinder group as the inode. This makes a 15% difference in
read speed for files in the 96K to 500K size range.
1999-12-01 19:33:12 +00:00
dcs
0636e4261d Add fairings. Do not depend on user actually supplying the arguments
he is supposed to supply.
1999-12-01 18:30:26 +00:00
sheldonh
2df4884127 Cosmetic changes to comments:
* Bring source file references in line with the style used in
	  GENERIC (i.e. src/sys/...).
	* Update outdated source file references.
	* Use proper URL syntax for URLs.
	* Update outdated URLs.

PR:		15194
Submitted by:	jedgar@fxp.org (Chris D. Faulhaber)
1999-12-01 16:25:24 +00:00
imp
01350b9e3f Forgot to commit this in last commit. 1999-12-01 15:45:39 +00:00
gallatin
e0b4381b55 A port of NetBSD's AlphaServer 1000 and 1000A support. Thanks to Cristian
Angelini for allowing me to use his AS1000 to do the port.

Note that this is untested on AlphaServer 1000A hardware.

Reviewed by:	dfr
Tested by:   	Cristian Angelini <chr.ang@biella.alpcom.it>
Obtained From: 	NetBSD
1999-12-01 15:25:04 +00:00
nyan
d3ccb923ec The 6th bit of configuration port is not defined on pc98.
Submitted by:	chi@bd.mbn.or.jp (Chiharu Shibata)
1999-12-01 14:15:30 +00:00
nyan
6a6837052c Sync with sys/isa/sio.c revision 1.276. 1999-12-01 13:40:03 +00:00
phk
1a595523be Initialize type correctly. 1999-12-01 10:20:21 +00:00
julian
649e533f7e Add NULL for new entrypoint. 1999-12-01 09:37:28 +00:00
julian
d09573a3cf Add explicit null entries for new entrypoints.
Forgotten by: Archie
1999-12-01 09:34:14 +00:00
julian
918bd93bf8 change intial timeout for session negotiation from 1 to 2 seconds.
One second was being hit too many times in normal situations.
1999-12-01 08:05:56 +00:00
imp
737361b49b Fix the hang on card eject problem and maybe the hang on suspend
problem.

o Create new timeout routine so we don't detach the card inside a ISR
  but instead drop back to spl0 via a timeout of 0.
o Actually delete the child of the pccard device rather than just faking
  it badly.
o Fix sio, ed and ep to have pccard detach routines that are int rather
  than void.
o Fix ep and ed pccard detach routines to use if_detach rather than just
  if_down.  if_detach destroys the device, while if_down just marks it
  down.  In this incarnation of the pccard things, we map the disable
  the slot action to detach the driver, which removes the driver from the
  device tree.  When that is done, a panic would soon follow as the
  ifconfig tried to down the device.

Didn't fix:
o Should cache the pccard dev child's pointer in struct slot
o remove now unused parts of struct slot
o Any driver using softc after detach has been called.  sio's softc used
  to be statically allocated, so you could check sc->gone, but that is
  now gone.
o Didn't remove gone from softc of drivers that use the old pccard method.

Didn't test:
o ed driver changes
o sio driver changes on pccards
o suspend (no laptop or apm support on my desktop)
1999-12-01 07:38:54 +00:00
green
b879977360 Separate some common sysctl code into sysctl_find_oid() and calling
thereof.  Also, make the errno returns  _correct_, and add a new one
which is more appropriate.
1999-12-01 02:25:19 +00:00
mckusick
a7a8ed1423 Collect read and write counts for filesystems. This new code
drops the counting in bwrite and puts it all in spec_strategy.
I did some tests and verified that the counts collected for writes
in spec_strategy is identical to the counts that we previously
collected in bwrite. We now also get read counts (async reads
come from requests for read-ahead blocks). Note that you need
to compile a new version of mount to get the read counts printed
out. The old mount binary is completely compatible, the only
reason to install a new mount is to get the read counts printed.

Submitted by:	Craig A Soules <soules+@andrew.cmu.edu>
Reviewed by:	Kirk McKusick <mckusick@mckusick.com>
1999-12-01 02:09:30 +00:00
dima
047f08a518 dummy version of read_random() until the real random driver is ported. 1999-11-30 23:49:54 +00:00
dima
b573ebb022 Add arc4random.c.
Please note that kernel is still broken on alpha.
1999-11-30 20:18:20 +00:00
shin
9298d6c8c5 Just to avoid warning message about trigraph.
Commented by: green
1999-11-30 16:24:36 +00:00
marcel
e25c88391a Implement linux_sigaltstack. 1999-11-30 15:02:28 +00:00
marcel
ce9f30fbf1 Implement sigaltstack. 1999-11-30 15:00:17 +00:00
dfr
8b0f80aa08 Add ESS1879.
Submitted by: MIHIRA Sanpei Yoshiro <sanpei@sanpei.org>
1999-11-30 09:11:06 +00:00
peter
031f01d30f Don't make the ktrace hook in tsleep() deref a null curproc after a panic.
PR:		15169
Submitted by:	David Gilbert <dgilbert@velocet.ca>
1999-11-30 09:01:46 +00:00
archie
99833e1e47 Update documentation to reflect new functionality. 1999-11-30 07:24:05 +00:00
mdodd
ea4e794bb8 Reduce code duplication.
Hopefully this clears up some confusion about the nature of
devclass_get_softc() vs. device_get_softc() as well.

The check against DS_ATTACHED remains as this is not
a change that modifies functionality.

Reviewed by:	Peter "in principle" Wemm
1999-11-30 07:06:03 +00:00
dillon
679b553dfa The symlink implementation could improperly return a NULL vp along with
a 0 error code.  The problem occured with NFSv2 mounts and also with
    any NFSv3 mount returning an EEXIST error (which is translated to 0
    prior to return).  The reply to the rpc only contains the file handle
    for the no-error case under NFSv3.  The error case under NFSv3 and
    all cases under NFSv2 do *not* return the file handle.  The fix is
    to do a secondary lookup to obtain the file handle and thus be able
    to generate a return vnode for the situations where the rpc reply
    does not contain the required information.

    The bug was originally introduced when VOP_SYMLINK semantics were
    changed for -CURRENT.  The NFS symlink implementation was not properly
    modified to go along with the change despite the fact that three
    people reviewed the code.  It took four attempts to get the current
    fix correct with five people.  Is NFS obfuscated?  Ha!

Reviewed by:	Alfred Perlstein <bright@wintelcom.net>
Testing and Discussion: "Viren R.Shah" <viren@rstcorp.com>, Eivind Eklund <eivind@FreeBSD.ORG>, Ian Dowse <iedowse@maths.tcd.ie>
1999-11-30 06:56:15 +00:00
archie
3c1a09eca3 Fix typo. 1999-11-30 06:47:54 +00:00
archie
81fceb37a9 Add two new generic control messages, NGM_ASCII2BINARY and
NGM_BINARY2ASCII, which convert control messages to ASCII and back.
This allows control messages to be sent and received in ASCII form
using ngctl(8), which makes ngctl a lot more useful.

This also allows all the type-specific debugging code in libnetgraph
to go away -- instead, we just ask the node itself to do the ASCII
translation for us.

Currently, all generic control messages are supported, as well as
messages associated with the following node types: async, cisco,
ksocket, and ppp.

See /usr/share/examples/netgraph/ngctl for an example of using this.

Also give ngctl(8) the ability to print out incoming data and
control messages at any time.  Eventually nghook(8) may be subsumed.

Several other misc. bug fixes.

Reviewed by:	julian
1999-11-30 02:45:32 +00:00
n_hibma
8cd679b7fc Commit for r1.29 of ugen.c was wrong. All the ugenX* device
entries were like the entries for ugen0* device.
1999-11-30 01:48:12 +00:00
peter
425ff1daf9 Make the pci driver compat shim return a preference for probe
rather than an "it's mine!" so that other newbus-aware drivers can
bid for the device too.  This should allow the sym driver to out-bid
the ncr driver for devices it supports without having to modify ncr.c
at all.  ncr would then function as a catch-all.
1999-11-30 01:34:46 +00:00
alfred
d7ac1dffb8 add linuxulator wrapper for SNDCTL_DSP_GETODELAY 1999-11-29 23:03:34 +00:00
alfred
45fc07fd1e tanimura implemented SNDCTL_DSP_GETODELAY for pcm.
Submitted by: tanimura
1999-11-29 23:01:59 +00:00
dillon
881e17e778 Remove vfs_getrootfsid() function (a temporary hack added a few months
ago to make BOOTP work again).  It is no longer required by BOOTP and
    no longer used.
1999-11-29 22:25:36 +00:00
phk
9809b71a89 Report swapdevices as cdevs rather than bdevs.
Remove unused dev2budev() function.
1999-11-29 21:37:18 +00:00
imp
2936ce7135 Sync generated files 1999-11-29 20:54:14 +00:00
imp
f431f7be50 Merge NetBSD 1.60 by jun:
Support for TDK LAC-CF010 by Ichiro Fukuhara
	(ichiro@ichiro.org) on kern/8900 ichiro test TDK CF Card on
	Opensource matsuri,tokyo and send patch to us.  thanx.
1999-11-29 20:53:36 +00:00
phk
70250fd70a Remove the now unused chrtoblk() function. 1999-11-29 20:50:58 +00:00
gallatin
85af5ac744 inline spl functions.
In combination with Doug's recent alpha_cpu.h, this reduces the cost
of ipl raising/lowering significantly.  This is most pronounced when
doing file reads.

Reviewed by: dfr
1999-11-29 20:31:45 +00:00
dfr
8aa3813a4d Implement inline assembler wrappers for PALcode calls and for alpha
specific instructions such as rpcc and mb. This should provide some
performance improvements and will allow me to delete the file pal.s.
To allow people time to update their loadable modules, I will leave pal.s
alone for now.
1999-11-29 19:57:51 +00:00
dan
2caf8b3c1a In the extremely miniscule chance that read_random returns <= 0, don't try
and use that return code as a modulus (panics are bad, mmmkay?)
1999-11-29 19:23:35 +00:00
dillon
be8594a1e7 Make BOOTP work again.
Submitted by:	Doug Ambrisko <ambrisko@whistle.com>
1999-11-29 18:51:04 +00:00
peter
948036bd20 Fix a stray (ifdef'ed) reference to a non-existing file. 1999-11-29 13:31:02 +00:00
nyan
63142e68cd - Fixed to support RSB-384/2000/3000.
- Fixed warnings.
1999-11-29 13:20:47 +00:00
nyan
8ebdea82c7 Sync with sys/i386/conf/files.i386 revision 1.282. 1999-11-29 12:26:30 +00:00
sos
3a4f419fb8 Better error handeling:
On UDMA CRC errors retry operation as it might be a fluke, if not fall
back to PIO mode on the failing drive. If you get alot of these your
cabeling is most likely not good enough.

On HARD error using DMA, retry once using PIO, if it succeds using PIO
fall back to PIO mode on the failing drive.
1999-11-29 12:24:51 +00:00
phk
8da3ba86dc Add a bit of sanity checking and problem avoidance in case the
timecounter hardware is bogus.

This will produce a new warning "microuptime() went backwards"
and try to not screw up the process resource accounting.
1999-11-29 11:29:04 +00:00
phk
d1d5bef807 How hard can it be to implement a 24bit counter in hardware ?
Make sure we read a likely value from the PIIX timecounter.

This should fix a large fraction of the "calcru: negative time"
warnings produced by SMP machines.

Another hole in one by: bde
Didn't belive Bruce:    phk
1999-11-29 11:27:40 +00:00
itojun
6081138a55 there's no memcmp() in kernel, use bcmp() instead.
in userland memcmp() is preferred for ANSI preference.
(from KAME repository)
1999-11-29 08:19:01 +00:00
imp
eb36f813ac Reconnect probing of the width of the isa bus, calling pcic_attach and
pcic_attach_sockets.  Rework bus width probe mapping and unmapping to
use the newbus bus_{allocate,release}_resource with a rid of 1 to work
on FreeBSD.  Remove a few now unneeded #includes.
1999-11-29 07:15:33 +00:00
imp
fdb44eb66c Flesh out the pccard bus_ methods with either the generic one (where
it would work), or a specialized one.  Most of these have been
creatively stolen from pccard_nkb, which in turn stole from isa
showing that generic bus_ versions of bus_{set,get,delete}_resource
might be profitable.

Fix a couple of minor bugs introduced in the last round of updates
from NetBSD.

Start on the pccard_ivar structure which will hold the resources and
slot number.

Add tcic as a possible attachment for pccard and rename the attachment
for pcicx to pcic since the name has changed since I originally wrote
this stuff.

Next up:
	stringing together the various memory and I/O
allocation/mapping primitives in i82365.c, final touches on the isa
attach routine and other fun stuff in that line of attach.
1999-11-29 06:42:55 +00:00
n_hibma
b4c5ebb3f4 Update de driver for the request->xfer changes.
Add a remark about how the system will panic after you've unplugged the
drive.
1999-11-28 23:55:52 +00:00
dan
08f9eb57a7 Address the concerns of the ``randomness'' of the initial PRNG. Now, we
use bits from /dev/random to stir the S-box.  Also add an internal counter to
keep the S-box stirred on a regular basis.

Reviewed by: msmith
1999-11-28 23:39:49 +00:00
n_hibma
b47b66375e Woops, it seems to fail initialisation. Disabled while I am figuring out
how to get the USB revision from the OHCI controller.

Now where did I leave that spec? ...
1999-11-28 22:56:26 +00:00
msmith
1de8077aec Use the correct mounted-from path when allocating the root mount, if we know
what it is.

Be more correct in unbusying the mountpoint (especially before freeing it).

Remove support for mounting 'r' devices as root.  You don't mount 'r'
devices anywhere else, and they're going away anyway.

Submitted by:	bde
1999-11-28 22:20:18 +00:00
imp
d2ef3b0fa0 Add resource activation routines to pcic driver. Minor cleanup of
socket attach code.  We now have at least a chance for pccard devices
appearing in the future.

This is a snapshot of ongoing work.  Proceed at your own risk.
1999-11-28 21:11:13 +00:00
n_hibma
adae2d80cb Correct the last parameter for clalloc 1999-11-28 21:07:11 +00:00
n_hibma
5d92bd7267 Synchronisation with NetBSD 1999/11/27
- more req[uest]->xfer changes.
- get the corresponding NetBSD Id's right

ohci.c
   - move untimeout above print statement
   - remove usb_delay that panics the system (tsleep in intr context) when
   ohcidebug > 5.

ugen.c
   - create the devices for endpoints with make_dev.

uhub.c
   - change from using usbdebug to uhubdebug
   - add more debugging statements
1999-11-28 21:01:06 +00:00
n_hibma
ad78000b31 Add devnames, the device names the drivers attached to for usbd.
0 -> NULL changes.
Add realloc (for OpenBSD)
1999-11-28 20:55:22 +00:00
n_hibma
8a7f66c087 Add a quirk for the Altec ASC495 speakers. They pretend to support the
audio class, but they don't
1999-11-28 20:48:08 +00:00
n_hibma
3a17f5fb10 Add PCI_USBREV_1_1 1999-11-28 20:47:27 +00:00
n_hibma
05b1cbb806 Add USB revision strings and numbers. 1999-11-28 20:46:29 +00:00
imp
fdfb931720 Add two modules for the pccard work: dev/pccard/card_if.m and
dev/pccard/power_if.m.

XXX There has got to be a better way to deal with this.
1999-11-28 20:18:50 +00:00
bde
d7156780d3 Removed special rules for building and cleaning device interface files
and empty options files.  The rules are now generated automatically in
bsd.kmod.mk.  Cleaned up related things ($S and ${CLEANFILES}).
1999-11-28 18:53:47 +00:00
bde
b4f2600d8e Build and clean device interface files (foo_if.[ch]) and empty options
files (opt_*.h) automatically (if they are in ${SRCS}).

Clean vnode_if.[ch] automatically (if one of them is in ${SRCS}, not just
if VFS_KLD is defined).

There are some complications to avoid using the "@" symlink before it
is built.
1999-11-28 17:52:40 +00:00
dan
c08e8bdab0 Introduce OpenBSD-like Random PIDs. Controlled by a sysctl knob
(kern.randompid), which is currently defaulted off.  Use ARC4 (RC4) for our
random number generation, which will not get me executed for violating
crypto laws; a Good Thing(tm).

Reviewed and Approved by: bde, imp
1999-11-28 17:51:09 +00:00
phk
bd4a9519d9 Convert dumpon to work on character devices instead of block devices.
NB: You may need to change your /etc/rc.conf!
1999-11-28 16:25:17 +00:00
brian
d5bd70def6 Call i4b_l4_drvrdisc, not i4b_l4_disconnect_ind to bring the link
down when the device is closed or carrier is removed.

This solves the disconnect problems when using user-ppp over isdn.

Suggested by: hm
1999-11-28 16:17:01 +00:00
eivind
987e083f00 Add the PCI id for the TI PCI-1251B PCI-CardBus bridge.
Submitted by:   Martin Blapp <mb@imp.ch>
1999-11-28 13:37:35 +00:00
bde
aecc1a16a1 Scheduler fixes equivalent to the ones logged in the following NetBSD
commit to kern_synch.c:

----------------------------
revision 1.55
date: 1999/02/23 02:56:03;  author: ross;  state: Exp;  lines: +39 -10
Scheduler bug fixes and reorganization
* fix the ancient nice(1) bug, where nice +20 processes incorrectly
  steal 10 - 20% of the CPU, (or even more depending on load average)
* provide a new schedclk() mechanism at a new clock at schedhz, so high
  platform hz values don't cause nice +0 processes to look like they are
  niced
* change the algorithm slightly, and reorganize the code a lot
* fix percent-CPU calculation bugs, and eliminate some no-op code

=== nice bug === Correctly divide the scheduler queues between niced and
compute-bound processes. The current nice weight of two (sort of, see
`algorithm change' below) neatly divides the USRPRI queues in half; this
should have been used to clip p_estcpu, instead of UCHAR_MAX.  Besides
being the wrong amount, clipping an unsigned char to UCHAR_MAX is a no-op,
and it was done after decay_cpu() which can only _reduce_ the value.  It
has to be kept <= NICE_WEIGHT * PRIO_MAX - PPQ or processes can
scheduler-penalize themselves onto the same queue as nice +20 processes.
(Or even a higher one.)

=== New schedclk() mechansism === Some platforms should be cutting down
stathz before hitting the scheduler, since the scheduler algorithm only
works right in the vicinity of 64 Hz. Rather than prescale hz, then scale
back and forth by 4 every time p_estcpu is touched (each occurance an
abstraction violation), use p_estcpu without scaling and require schedhz
to be generated directly at the right frequency. Use a default stathz (well,
actually, profhz) / 4, so nothing changes unless a platform defines schedhz
and a new clock.  Define these for alpha, where hz==1024, and nice was
totally broke.

=== Algorithm change === The nice value used to be added to the
exponentially-decayed scheduler history value p_estcpu, in _addition_ to
be incorporated directly (with greater wieght) into the priority calculation.
At first glance, it appears to be a pointless increase of 1/8 the nice
effect (pri = p_estcpu/4 + nice*2), but it's actually at least 3x that
because it will ramp up linearly but be decayed only exponentially, thus
converging to an additional .75 nice for a loadaverage of one. I killed
this, it makes the behavior hard to control, almost impossible to analyze,
and the effect (~~nothing at for the first second, then somewhat increased
niceness after three seconds or more, depending on load average) pointless.

=== Other bugs === hz -> profhz in the p_pctcpu = f(p_cpticks) calcuation.
Collect scheduler functionality. Try to put each abstraction in just one
place.
----------------------------

The details are a little different in FreeBSD:

=== nice bug ===   Fixing this is the main point of this commit.  We use
essentially the same clipping rule as NetBSD (our limit on p_estcpu
differs by a scale factor).  However, clipping at all is fundamentally
bad.  It gives free CPU the hoggiest hogs once they reach the limit, and
reaching the limit is normal for long-running hogs.  This will be fixed
later.

=== New schedclk() mechanism ===  We don't use the NetBSD schedclk()
(now schedclock()) mechanism.  We require (real)stathz to be about 128
and scale by an extra factor of 2 compared with NetBSD's statclock().
We scale p_estcpu instead of scaling the clock.  This is more accurate
and flexible.

=== Algorithm change ===  Same change.

=== Other bugs ===  The p_pctcpu bug was fixed long ago.  We don't try as
hard to abstract functionality yet.

Related changes: the new limit on p_estcpu must be exported to kern_exit.c
for clipping in wait1().

Agreed with by:		dufault
1999-11-28 12:12:14 +00:00
bde
1ad19bea4d Scheduler fixes equivalent to the ones logged in the following NetBSD
commit to kern_synch.c:

  ----------------------------
  revision 1.55
  date: 1999/02/23 02:56:03;  author: ross;  state: Exp;  lines: +39 -10
  Scheduler bug fixes and reorganization
  * fix the ancient nice(1) bug, where nice +20 processes incorrectly
    steal 10 - 20% of the CPU, (or even more depending on load average)
  * provide a new schedclk() mechanism at a new clock at schedhz, so high
    platform hz values don't cause nice +0 processes to look like they are
    niced
  * change the algorithm slightly, and reorganize the code a lot
  * fix percent-CPU calculation bugs, and eliminate some no-op code

  === nice bug === Correctly divide the scheduler queues between niced and
  compute-bound processes. The current nice weight of two (sort of, see
  `algorithm change' below) neatly divides the USRPRI queues in half; this
  should have been used to clip p_estcpu, instead of UCHAR_MAX.  Besides
  being the wrong amount, clipping an unsigned char to UCHAR_MAX is a no-op,
  and it was done after decay_cpu() which can only _reduce_ the value.  It
  has to be kept <= NICE_WEIGHT * PRIO_MAX - PPQ or processes can
  scheduler-penalize themselves onto the same queue as nice +20 processes.
  (Or even a higher one.)

  === New schedclk() mechansism === Some platforms should be cutting down
  stathz before hitting the scheduler, since the scheduler algorithm only
  works right in the vicinity of 64 Hz. Rather than prescale hz, then scale
  back and forth by 4 every time p_estcpu is touched (each occurance an
  abstraction violation), use p_estcpu without scaling and require schedhz
  to be generated directly at the right frequency. Use a default stathz (well,
  actually, profhz) / 4, so nothing changes unless a platform defines schedhz
  and a new clock.  Define these for alpha, where hz==1024, and nice was
  totally broke.

  === Algorithm change === The nice value used to be added to the
  exponentially-decayed scheduler history value p_estcpu, in _addition_ to
  be incorporated directly (with greater wieght) into the priority calculation.
  At first glance, it appears to be a pointless increase of 1/8 the nice
  effect (pri = p_estcpu/4 + nice*2), but it's actually at least 3x that
  because it will ramp up linearly but be decayed only exponentially, thus
  converging to an additional .75 nice for a loadaverage of one. I killed
  this, it makes the behavior hard to control, almost impossible to analyze,
  and the effect (~~nothing at for the first second, then somewhat increased
  niceness after three seconds or more, depending on load average) pointless.

  === Other bugs === hz -> profhz in the p_pctcpu = f(p_cpticks) calcuation.
  Collect scheduler functionality. Try to put each abstraction in just one
  place.
  ----------------------------

The details are a little different in FreeBSD:

=== nice bug ===   Fixing this is the main point of this commit.  We use
essentially the same clipping rule as NetBSD (our limit on p_estcpu
differs by a scale factor).  However, clipping at all is fundamentally
bad.  It gives free CPU the hoggiest hogs once they reach the limit, and
reaching the limit is normal for long-running hogs.  This will be fixed
later.

=== New schedclk() mechanism ===  We don't use the NetBSD schedclk()
(now schedclock()) mechanism.  We require (real)stathz to be about 128
and scale by an extra factor of 2 compared with NetBSD's statclock().
We scale p_estcpu instead of scaling the clock.  This is more accurate
and flexible.

=== Algorithm change ===  Same change.

=== Other bugs ===  The p_pctcpu bug was fixed long ago.  We don't try as
hard to abstract functionality yet.

Related changes: the new limit on p_estcpu must be exported to kern_exit.c
for clipping in wait1().

Agreed with by:		dufault
1999-11-28 12:12:13 +00:00
peter
6defa5e042 Take a shot at implementing the fix for PR 15014 for the a.out kernel
linker as well.

PR:		15014
Submitted by:	Vladimir N. Silyaev <vns@delta.odessa.ua>
1999-11-28 12:06:29 +00:00
peter
348a0952c0 Fix an embarresing mistake in the kld symbol lookup for DDB. It should
now correctly do a traceback when crashing inside a KLD module.

PR:		15014
Submitted by:	Vladimir N. Silyaev <vns@delta.odessa.ua>
1999-11-28 11:59:18 +00:00
nyan
38cffb40f9 Sync with sys/dev/syscons/syscons.c revision 1.327. 1999-11-28 08:57:22 +00:00
nyan
35f2e5452d Sync with sys/i386/conf/GENERIC revision 1.205. 1999-11-28 08:55:01 +00:00
yokota
d740587cf8 - Fail VT switching when the controlling program, such as the
X server, is not responding to the VT switching protocol. (This part
  of the code has been somewhat wrong in -CURRENT, but -STABLE has the
  correct code...)
1999-11-28 07:44:11 +00:00
imp
f36b1cf065 commit (re)generated files last. 1999-11-28 05:50:45 +00:00
imp
cf802d0461 Update pccard code to latest NetBSD code. This is the last merge
before newbusification hits full steam ahead.

All:
	Adjust NetBSD labels to reflect new base versions.
dev/pcic/i82365.c:
	1.24	Interface change for kernel threads
	1.25	Massive unification for cardbus
dev/pcic/i82365var.h
	1.8	Massive unification for cardbus
dev/pcic/i82365_isasubr.c
	1.3	Massive unification for cardbus
dev/pccard/pccard_cis.c
	1.11	Massive unification for cardbus
		(better device printing, better memspace calcs)
dev/pccard/pccard_cis_quirks.c
	1.4,1.5	Lotsa 3com devices
dev/pccard/pccardchip.h
	1.4	Massive unification for cardbus
dev/pccard/pccarddevs
	1.33..1.59 Lots of devices
1999-11-28 05:49:27 +00:00
obrien
dff67f0b84 This commit was generated by cvs2svn to compensate for changes in r53809,
which included commits to RCS files with non-trunk default branches.
1999-11-28 01:35:29 +00:00
obrien
32632bcb71 Update to the 0.12.0-19991127 patch + my header path & doc changes. 1999-11-28 01:35:29 +00:00
obrien
35494eb053 Sort PCI SCSI controlers. 1999-11-28 00:59:03 +00:00
obrien
85441bb239 /sys adjustments to add the `sym' controler driver.
This is commented out in GENERIC as you cannot mix `sym' with `ncr' right now.
Note that LINT is no more broken by this commit.
1999-11-28 00:48:15 +00:00
obrien
7faf68aa58 Adjust sym' include file path to match where sym' landed in our tree.
Done as vendor import as I hope the author will accept this patch, and
I'm not ready to take this thing off the vendor branch yet.
1999-11-28 00:45:27 +00:00
obrien
ebf4671447 This commit was generated by cvs2svn to compensate for changes in r53801,
which included commits to RCS files with non-trunk default branches.
1999-11-28 00:45:27 +00:00
obrien
1285bb85d3 Adjust sym' include file path to match where sym' landed in our tree.
Done as vendor import as I hope the author will accept this patch, and
I'm not ready to take this thing off the vendor branch yet.
1999-11-28 00:39:09 +00:00
obrien
9b9430d1a8 This commit was generated by cvs2svn to compensate for changes in r53799,
which included commits to RCS files with non-trunk default branches.
1999-11-28 00:39:09 +00:00
obrien
2149543028 Update to the SYM-0.11.0-19991120 patch.
Submitted by:	Gerard Roudier <groudier@club-internet.fr>
1999-11-27 23:37:15 +00:00
obrien
f170a9881c This commit was generated by cvs2svn to compensate for changes in r53796,
which included commits to RCS files with non-trunk default branches.
1999-11-27 23:37:15 +00:00
obrien
34af1d86ec Update to the SYM-0.10.0-19991111 patch.
Submitted by:	Gerard Roudier <groudier@club-internet.fr>
1999-11-27 23:35:46 +00:00
obrien
44fb8837c7 This commit was generated by cvs2svn to compensate for changes in r53793,
which included commits to RCS files with non-trunk default branches.
1999-11-27 23:35:46 +00:00
obrien
803caabbae New `sym' device driver optimized for the Symbios/LSI 53C896/53C895A/53C1010
PCI SCSI controllers.  This driver also supports the following Symbios/LSI
PCI SCSI chips: 53C810A, 53C825A, 53C860, 53C875, 53C876, 53C885, 53C895.

However, it does NOT support earlier chips as the following ones: 53C810,
53C815, 53C825.

See README.sym for more details.

Submitted-by:	Gerard Roudier <groudier@club-internet.fr>
1999-11-27 23:32:35 +00:00
obrien
c029850da1 This commit was generated by cvs2svn to compensate for changes in r53790,
which included commits to RCS files with non-trunk default branches.
1999-11-27 23:32:35 +00:00
obrien
55f70c3a7a Add a commented out 'ATA' driver config block to help assist -CURRENT
people to migrate to this driver since it will be the default IDE/ATA/ATAPI
driver in 4.0-R.
1999-11-27 23:25:17 +00:00
obrien
165d4cccc5 options should be formatted as "#options ^IFOO".
Spammed by:	sos, mjacob, and phk
1999-11-27 22:46:51 +00:00
dcs
f83e8be23c Make the prompt look like on OpenBoot. 1999-11-27 21:44:47 +00:00
dcs
de6772106e Zeroes structure before using it. 1999-11-27 18:31:57 +00:00
eivind
6e2e0f5931 Remap the error EEXISTS => 0 *before* using error to determine if we should
return a vp.
1999-11-27 18:14:41 +00:00
bp
dc2c10cce6 Remove abuse of struct nameidata.
Pointed by:	Eivind Eklund
1999-11-27 17:46:04 +00:00
sos
d3243c4482 call ata_reinit in addump trying to make sure the dump will succed,
also check for errors underways, and make it possible to abort the
dump by hitting a key.
1999-11-27 17:06:10 +00:00
dfr
f5e6518176 Disable on x86 since it conflicts with PNPBIOS. 1999-11-27 17:03:08 +00:00
marcel
8d58d1e492 Implement linux_ustat.
Reviewed by: bde
1999-11-27 16:55:14 +00:00
marcel
36c9f10d7d Change prototype of linux_ustat. 1999-11-27 16:50:54 +00:00
bde
0f795adedc Updated comments for the move in the previous commit. 1999-11-27 15:27:11 +00:00
bde
61f11af11f Fixed some comments in statclock(). The previous commit made it clearer
that one comment was attached to null code.
1999-11-27 14:37:34 +00:00
bde
4955977bad Moved scheduling-related code to kern_synch.c so that it is easier to fix
and extend.  The new function containing the code is named schedclock()
as in NetBSD, but it has slightly different semantics (it already handles
incrementation of p->p_cpticks, and it should handle any calling frequency).

Agreed with in principle by:	dufault
1999-11-27 12:32:27 +00:00
nyan
6661b59c9e Sync with sys/i386/conf/GENERIC revision 1.202. 1999-11-27 11:41:46 +00:00
phk
e90edff119 Replace the block major table with a notice why it isn't needed any more.
Mark /dev/drum as historic.
1999-11-27 10:45:31 +00:00
tanimura
959ebb7203 Add another vendor ID(CTL0048) for SB32 PnP.
Submitted by:	Charles Anderson <caa@columbus.rr.com>
1999-11-27 06:33:27 +00:00
phk
15e1f87ba4 This fell out of a previous commit: create the opt_md.h and opt_mfs.h
files for the md module.
1999-11-26 21:01:03 +00:00
phk
ccda399c72 Retire MFS_ROOT and MFS_ROOT_SIZE options from the MFS implementation.
Add MD_ROOT and MD_ROOT_SIZE options to the md driver.

Make the md driver handle MFS_ROOT and MFS_ROOT_SIZE options for compatibility.

Add md driver to GENERIC, PCCARD and LINT.

This is a cleanup which removes the need for some of the worse hacks in
MFS:  We really want to have a rootvnode but MFS on a preloaded image
doesn't really have one.  md is a true device, so it is less trouble.

This has been tested with make release, and if people remember to add
the "md" pseudo-device to their kernels, PicoBSD should be just fine
as well.  If people have no other use for MFS, it can be removed from
the kernel.
1999-11-26 20:08:44 +00:00
sos
c7fbb8b2a2 Oops, committed the wrong file.. 1999-11-26 20:05:11 +00:00
sos
68549e7015 Fix atapi_wait_ready, it returned prematurely.
Less verbosity on non-fatal errors.
1999-11-26 19:26:04 +00:00
sos
46311663f3 Tidy up the VIA support a bit, make it more generic. 1999-11-26 19:24:26 +00:00
dcs
89f6b847a5 Add id for ESS 1869 OEM to Compaq on Presario 1621. 1999-11-26 18:58:03 +00:00
luigi
12f3e647f6 RTFREE the correct route entry in dummynet_io(). The previous
code failed in handling things like "forward" actions.

Reported-and-tested-by: Jean-Hugues ROYER jhroyer@joher.com
1999-11-26 13:37:09 +00:00
nyan
3d02295353 Sync with sys/i386/conf/files.i386 revision 1.281. 1999-11-26 11:47:01 +00:00
marcel
b35fbc0583 Implement fdatasync in terms of fsync. The regeneration of proto.h,
syscall.h and sysent.h was probably forgotten after the last change
syscalls.master.
1999-11-26 10:20:10 +00:00
phk
5dbe9d95ba Add a sysctl to control if argv is disclosed to the world:
kern.ps_argsopen
It defaults to 1 which means that all users can see all argvs in ps(1).

Reviewed by:	Warner
1999-11-26 08:27:16 +00:00
dcs
42632fd0a6 Belatedly add splash_pcx_load to the documented variables. Reword
splash_bmp_load.
1999-11-26 08:09:04 +00:00
julian
b317e3ce30 Fix out-of-date comment 1999-11-26 05:02:06 +00:00
wpaul
d0da4e010d Update the WaveLAN/IEEE driver:
- Convert to new bus attachment scheme. Thanks to Blaz Zupan for doing
  the initial work here. One thing I changed was to have the attach
  and detach routines work like the PCI drivers, which means that in
  theory you should be able to load and unload the driver like the PCI
  NIC drivers, however the pccard support for this hasn't settled down
  yet so it doesn't quite work. Once the pccard work is done, I'll have
  to revisit this.

- Add device wi0 to PCCARD. If we're lucky, people should be able to
  install via their WaveLAN cards now.

- Add support for signal strength caching. The wicontrol utility has
  also been updated to allow zeroing and displaying the signal strength
  cache.

- Add a /sys/modules/wi directory and fix a Makefile to builf if_wi.ko.
  Currently this module is only built for the i386 platform, though once
  the pccard stuff is done it should be able to work on the alpha too.
  (Theoretically you should be able to plug one of the WaveLAN/IEEE ISA
  cards into an alpha with an ISA slot, but we'll see how that turns out.

- Update LINT to use only device wi0. There is no true ISA version of
  the WaveLAN/IEEE so we'll never use an ISA attachment.

- Update files.i386 so that if_wi is dependent on card.
1999-11-25 20:45:49 +00:00
alc
7f96711685 Remove nonsensical vm_map_{clear,set}_recursive() calls
from vm_map_pageable().  At the point they called, vm_map_pageable()
holds a read (or shared) lock on the map.  The purpose
of vm_map_{clear,set}_recursive() is to disable/enable repeated
write (or exclusive) lock requests by the same process.
1999-11-25 20:21:52 +00:00
nyan
62276be7fd Fixed to support IBM-PC HDD.
- Use 'or' operation to change b_flags.
    - SCSI HDD device is 'da', not 'sd'.

Submitted by:	kura@tim.hi-ho.ne.jp (Tomohiko Kurahashi) and
		chi@bd.mbn.or.jp (Chiharu Shibata)
1999-11-25 13:37:42 +00:00
nyan
d859c774ca Sync with sys/i386/conf/Makefile.i386 revision 1.165. 1999-11-25 12:52:13 +00:00
nyan
79489665c7 Sync with sys/boot/i386/loader/Makefile revision 1.37. 1999-11-25 12:46:16 +00:00
nyan
429e777df8 Sync with sys/i386/i386/machdep.c revision up to 1.378. 1999-11-25 12:43:07 +00:00
tanimura
a6778a841b Add the description for the configuration of GUS non-PnP bridge driver.
Submitted by:	Pascal Hofstee <daeron@shadowmere.student.utwente.nl>
1999-11-25 01:20:29 +00:00
tanimura
9aeeffca64 Attach the resources as given in the configuration in a proper way
for non-PnP cards.

Noticed by:	Pascal Hofstee <daeron@shadowmere.student.utwente.nl>
1999-11-25 01:13:52 +00:00
sos
42b1a184cc Add DMA support for the VIA 82C586 & 82C686 chips, also rearrange
to fall back to slower speeds if the faster ones fails to probe.

Log and retry request on UDMA CRC errors.

Fix a couple of warnings.
1999-11-24 21:40:05 +00:00
sos
e0791da256 Add 3 more parts of the VIA 82C686. 1999-11-24 21:07:29 +00:00
phk
2431275ac4 General clean-up of socket.h and associated sources to synchronise up
with NetBSD and the Single Unix Specification v2.

This updates some structures with other, almost equivalent types and
effort is under way to get the whole more consistent.

Also removes a double definition of INET6 and some other clean-ups.

Reviewed by: green, bde, phk
Some part obtained from: NetBSD, SUSv2 specification
1999-11-24 20:49:04 +00:00
dcs
ce740faa61 Activates password protection (if a password is defined).
Adds $FreeBSD$.
1999-11-24 17:59:37 +00:00
dcs
ce28d94ec3 Add silly password feature. If people want to depend on a flawed
security measures, so be it. It costs us almost nothing.

Document some code in support.4th that I was unable to understand
just by reading.
1999-11-24 17:56:40 +00:00
julian
3719edebd8 Expand the field width for subtypes. We had already overflowed it
by 2 with people just adding numbers on the end of the ethernet subtypes.
We now have an additional 14 subtypes available in ethernet.
Use one of them immediatly for homePNA.

Reviewed by: Garrett Wollman <wollman@khavrinen.lcs.mit.edu>
1999-11-24 02:40:12 +00:00
archie
d6eae9ff98 Change the prototype of the strto* routines to make the second
parameter a char ** instead of a const char **.  This make these
kernel routines consistent with the corresponding libc userland
routines.

Which is actually 'correct' is debatable, but consistency and
following the spec was deemed more important in this case.

Reviewed by (in concept):	phk, bde
1999-11-24 01:03:08 +00:00
brian
e060599533 Only emit the ``wrong ifa'' message if the matching interface
is neither IFF_LOOPBACK or IFF_POINTOPOINT.  It's quite common
(and probably more correct) to route local IP numbers via lo0
and it makes configuration easier to assign the hostname address
to local POINTOPOINT links too.

This message usually remains hidden because the loopback interface
gets the highest interface number at boot time, but when the
ethernet interface is added later, the message can get pretty
annoying.

Also, fix a typo.

Not objected to by: freebsd-net
1999-11-23 22:30:01 +00:00
guido
8cdd84c50e Add ipfilter kld and wire it in. 1999-11-23 22:18:17 +00:00
guido
8eccd0ab73 Get rid of useless osreldate include for KLD/LKM modules (sys/param.h
already carries what is needed).
This is needed for the KLD support.
1999-11-23 22:16:41 +00:00
guido
75b4f99d65 Add kernel parts of revived ipfilter (3.3.3.) 1999-11-23 21:44:59 +00:00
dillon
892533638d Even better then using %fs:0 in our locked synchronizing instruction,
we instead use 0(%esp), which is per-cpu, already pretty much
    guarenteed to be locked into the cache, and does not stress the cache's
    set associativity.  invlpg might also be a good choice (suggested by
    Ingo).

Obtained from:	Linus Torvalds <torvalds@transmeta.com>
1999-11-23 20:07:39 +00:00
dillon
fca91f81f0 Add in required instruction serialization prior to releasing the
MP lock for the last time.  The use of a locked instruction to
    cpu-private memory is 3x faster then CPUID and 3x faster then the
    use of a locked instruction to shared memory (the lock itself).

    Instruction serialization is required to ensure that any pending
    memory ops are properly flushed prior to the release of the lock,
    due to out-of-order instruction execution by the cpu.
1999-11-23 18:46:09 +00:00
marcel
d3d45d6d95 Add .ORDER which is needed for the previous commit to work with -jN.
Pointed out by: bde
1999-11-23 17:18:52 +00:00
dcs
092552dc2c Add machine-specific include path to ficl's sysdep.h. Wishes I had
gone to bed earlier.

Pointed by: peter
1999-11-23 16:30:48 +00:00
dcs
8aabdf53ba Revert ill-considered simplification in 1.13.
Pointed by: peter
1999-11-23 16:28:39 +00:00
dcs
24489df464 Improve Makefile by using .PATH.
Taught by: peter
1999-11-23 15:55:28 +00:00
dcs
0546252fb2 Improve on ficl port to alpha.
Files sysdep.[ch] are now in ${MACHINE_ARCH} subdirectory. Internal
#if's used to identify the platform where removed.

Make rule for target testmain was greatly simplified, because it was
easier simplifying it than changing it to support the new location of
sysdep.[ch].

(a repo-copy was done on sysdep.[ch], of course)
1999-11-23 15:24:30 +00:00
dcs
53dc8c1815 (Hopefully) make all necessary changes for ficl to support alpha. 1999-11-23 11:17:37 +00:00
marcel
e3a552ed38 vnode_if.sh makes both vnode_if.c and vnode_if.h. Add vnode_if.c to
the LHS of the rule for vnode_if.h. This solves a "dunno how to make"
error.
1999-11-23 10:17:36 +00:00
alc
5d1cd5631b Correct the following error: vm_map_pageable() on a COW'ed (post-fork)
vm_map always failed because vm_map_lookup() looked at
 "vm_map_entry->wired_count" instead of "(vm_map_entry->eflags &
 MAP_ENTRY_USER_WIRED)".  The effect was that many page
 wiring operations by sysctl were (silently) failing.
1999-11-23 06:51:28 +00:00
shin
8a8ecd0abc Removed IPSEC and IPV6FIREWALL because they are not ready yet. 1999-11-23 05:42:36 +00:00
green
4f8112e204 Fix a confusion between osigcontext and ucontext_t in the previous commit.
Since an osigcontext is smaller, if you check for a valid (much larger sized)
ucontext_t and it fails, we bogusly would reject the osigcontext as per
rev 1.378.  Instead, check for osigcontext range validity first, and
ucontext_t later.  This unbreaks Netscape.

Pointed to the right commit by:	peter
1999-11-23 04:09:13 +00:00
shin
8d1b3af7b5 Temporaly re-enable IPSEC and IPV6FIREWALL to make the kernel buildable
with INET6
(I'll fix those dependency later, Sorry)

PR:		kern/15053
Submitted by:	ssar@stacken.kth.se
1999-11-23 02:01:49 +00:00
cg
fe6a86187c fix panic for large writes in non-blocking mode 1999-11-22 21:16:01 +00:00
cg
2c7a9e5d57 fix mixer to return properly scaled values 1999-11-22 16:20:48 +00:00
peter
7cd73c98f5 Add pcm entries for the alpha too, since they were taken out of
conf/files and moved to i386/conf/files.i386

Forgotten by: tanimura
1999-11-22 16:10:26 +00:00
peter
01330ff49e Update the Alpha makefile to be more in line with the x86 version. It
was getting quite dated.  Attempt to minimize diffs between the two so
it's not as painful to do this next time.
1999-11-22 15:39:13 +00:00
phk
84a3f8a8d2 Isolate the swapdev_vp "not quite" vnode in the only source file which
needs it now that /dev/drum is gone.

Reviewed by: eivind, peter
1999-11-22 15:27:09 +00:00
peter
f01ff83295 Use %ll instead of %q as gcc moans bitterly about it. 1999-11-22 15:23:58 +00:00
phk
27e0652d29 Isolate the swapdev_vp "not quite" vnode in the only source file which
needs it now that /dev/drum is gone.

Reviewed by: eivind, peter
1999-11-22 15:17:59 +00:00
peter
baa766d3ee Zap some latent problems hidden by differences between KERNEL and _KERNEL.
The KAME code intruduces _KERNEL, which exposes some of them.
1999-11-22 15:14:56 +00:00
n_hibma
b8cbb1d19b Fix some bugs in user-end output and add a reference to the original
copyright in the resulting file.
1999-11-22 14:40:04 +00:00
n_hibma
66d9e27336 Feh, kind of went wrong the previous commit. dev should child (in some
cases) plus a typo.
1999-11-22 14:39:21 +00:00
n_hibma
2fabfe01a4 Add MOUSE_MSC_MAXBUTTON and MOUSE_IF_USB. 1999-11-22 14:38:11 +00:00
gallatin
8e3e5fb90c Allow a DMA channel of 0. This gets the on-board mss audio device working
on Digital AlphaStations 200 and 500 machines (and probably others as well).

Submitted by: dfr
1999-11-22 14:30:41 +00:00
shin
ff8b33546f Temporaly remove IPSEC and IPV6FIREWALL related options because they are not
ready for build yet.

Commented by: des
1999-11-22 13:25:21 +00:00
shin
887d0bc6a8 move INET6 option from GENERIC to LINT.
Thanks for Brian Fundakowski Feldman and Dag-Erling Smorgrav,
to give me the comment and the patch.

Submitted by:Dag-Erling Smorgrav
1999-11-22 11:13:00 +00:00
phk
1848d96439 Convert various pieces of code to use vn_isdisk() rather than checking
for vp->v_type == VBLK.

In ccd: we don't need to call VOP_GETATTR to find the type of a vnode.

Reviewed by:    sos
1999-11-22 10:33:55 +00:00
tanimura
9437480d40 Comment out the newmidi stuff. 1999-11-22 10:28:05 +00:00
green
f718803a24 Add vnode_if.c to CLEANFILES. 1999-11-22 06:38:30 +00:00
green
732c5bdd6d Change a CLEANFILES misspelling to get miibus_if.h removed. 1999-11-22 06:38:13 +00:00
green
56e56ad17a Make this compile (remove vnode_if.c from SRCS) and clean properly
(add opt_bus.h to CLEANFILES).
1999-11-22 06:36:25 +00:00
tanimura
02efd0147b Add the descriptions of the bridge drivers for Sound Blaster, GUS
and Crystal Semiconductor CS461x/428x.
1999-11-22 06:10:25 +00:00
tanimura
89df852997 - Introduce the bridge drivers for Sound Blaser, GUS and Crystal
Semiconductor CS461x/428x.
- Add support for GUS and CS461x/428x pcm.
- Move newpcm drivers for ISA cards to files.i386. The drivers for
  PC98 would be something quite different from those for PC/AT.

Moving requested by:	nyan
1999-11-22 06:09:24 +00:00
tanimura
05e9b4af3e - Introduce the bridge drivers for Sound Blaser, GUS and Crystal
Semiconductor CS461x/428x.
- Add support for GUS and CS461x/428x pcm.

Bridges reviewed by:			dfr, cg
GUS non-PnP support submitted by:	Ville-Pertti Keinonen <will@iki.fi>
GUS PnP support tested by:		Michiru Saito <mich@mtci.ne.jp>
1999-11-22 06:07:49 +00:00
dillon
913c1ce734 nm_srtt and nm_sdrtt are arrays[4]. Remove explicit initialization
of element [4] in both, which goes beyond the end of the array, leaving
    [0], [1], [2], and [3].  This bug did not cause any problems since
    the overrun fields are initialized after the bogus array init but
    needs to be fixed anyway.

Submitted by:	 Ian Dowse <iedowse@maths.tcd.ie>
1999-11-22 04:50:09 +00:00
n_hibma
3966edc4dc Add comments on what it the USB modules are. Add the usb module.
The USB module contains the OHCI and UHCI controllers as well.
Sticking them into separate modules might be possible after I have
untangled the mess.
1999-11-22 04:08:37 +00:00
n_hibma
d8abfe2e0a Clean up the Makefiles, make them consistent with the others and remove
debugging falgs (-g).
1999-11-22 03:55:33 +00:00
n_hibma
2b58b27d2a Add the usb module and move the USB related modules into the generic section
USB seems to compile on Alpha's as well.
1999-11-22 03:48:33 +00:00
n_hibma
38f0224504 USB is loadable as a module as well. 1999-11-22 03:46:33 +00:00
n_hibma
ce99070145 Move the pretty printing of the description for USB controllers to
pci_probe_nomatch, so it won't be in the way when loading USB as a module.

The reason for them being there in the first place is that every
motherboard comes with USB kit and this way it looks more pretty (peter).
The real solution will be to define some method of detaching a driver
after it has attached.
1999-11-22 03:34:43 +00:00
n_hibma
2365e84cdd Remove some bogus bus methods peter added. We are hardly doing
anything as a bus.
1999-11-22 03:22:43 +00:00
shin
cad2014b27 KAME netinet6 basic part(no IPsec,no V6 Multicast Forwarding, no UDP/TCP
for IPv6 yet)

With this patch, you can assigne IPv6 addr automatically, and can reply to
IPv6 ping.

Reviewed by: freebsd-arch, cvs-committers
Obtained from: KAME project
1999-11-22 02:45:11 +00:00
julian
c53a2225ab Document the requirement for root privileges. 1999-11-21 23:19:13 +00:00
julian
a852549753 oops cut-n-paste error 1999-11-21 23:11:52 +00:00
julian
2d7f08ef2e It's time to only allow root to manipulate netgraph nodes.
(I meant to do this before checking in to FreeBSD and forgot)
1999-11-21 23:06:30 +00:00
julian
16320b0093 Hopefully the last patch from Brian to get server side PPPoE working.
remove a 'free' that is no longer needed.
1999-11-21 22:18:54 +00:00
mjacob
91842d9319 Don't clear the SA_FLAG_TAPE_LOCKED prior to calling
saprevent when we're doing an OFFLINE ioctl- saprevent
won't unlock the door, which then causes the unload to
fail on some units.

If we've already unloaded the tape, don't try and rewind and
unload in saclose. This is a slightly riskier change because
we're now going to depend on SA_FLAG_TAPE_MOUNTED to say whether
we've really unloaded the tape. This involved changing the
setting in sadone for tape errors to SA_FLAG_TAPE_FROZEN (which
is more accurate anyway-if you get an EIO you've probably lost
tape position anyway) where it used to just clear the mounted
flag.
1999-11-21 20:23:58 +00:00
mjacob
9a1faf7fc8 Add make_dev functions. Tested with only one changer (sigh- all my others
are broken).
Submitted by:	ken@freebsd.org
1999-11-21 19:17:47 +00:00
phk
fd22d5412a Introduce the new function
p_trespass(struct proc *p1, struct proc *p2)
which returns zero or an errno depending on the legality of p1 trespassing
on p2.

Replace kern_sig.c:CANSIGNAL() with call to p_trespass() and one
extra signal related check.

Replace procfs.h:CHECKIO() macros with calls to p_trespass().

Only show command lines to process which can trespass on the target
process.
1999-11-21 19:03:20 +00:00
n_hibma
17c7f61500 Addition of new fields to the usb_devinfo struct to enable the new
and shiny usbd daemon to handle events.

usb_port.h:
- Add a macro to retrieve the unit number from a USBBASEDEVICE

usb.h, usb_subr.c:
- Add fields to the device_info struct.

usb_subr.c:
- Fill in the new fields.
- Remove the notification of the event up a bit to make sure all the
  information is still available to fill the usb_devinfo struct.

This requires recompilation of usbdevs (src/usr.sbin/usbdevs) and the
ezdownload/ezupload (ports/misc/ezload) utilities in any case.
1999-11-21 17:30:42 +00:00
n_hibma
183c85e4b4 Revoke the vnodes on detach. This avoids the crashes people have seen
when moused was still running when the mouse was detached.

Convert uhid to use make_dev while I am there. Ugen still needs to be
converted.
1999-11-21 17:25:30 +00:00
n_hibma
d1dec864e4 Enclosed the arguments of binary and in brackets. 1999-11-21 17:22:30 +00:00
cg
f4b7f8d09b fix for -fno-builtin
PR:		kern/14278
1999-11-21 17:15:12 +00:00
bp
0544825ea8 Add text for Rendition Verite V1000 and V2000 video cards. 1999-11-21 17:08:47 +00:00
bp
daddfe794d Remove race condition under SMP.
Noted by:	Denis Kalinin <denis@mail.rbc.ru>
1999-11-21 16:35:29 +00:00
peter
f755cb92d8 These files have been repo-copied to dev/sound/* (making way for pcm
and midi to share the backend files).
1999-11-21 15:58:07 +00:00
pho
6b4195bebd Moved useracc() to top of sigreturn as to avoid panic
caused by invalid arguments to rutine.

Reviewed by:	marcel, phk
1999-11-21 14:46:43 +00:00
phk
d19d6e6b45 s/p_cred->pc_ucred/p_ucred/g 1999-11-21 12:38:21 +00:00
julian
d655bdb1cd Document new feature (support for write(2) when 1 hook attached). 1999-11-21 12:03:00 +00:00
julian
ff227a07ea Fixes from brian. With some changes from me.
Allows FreeBSD to run as a PPPOE server
One patch still not included.
1999-11-21 10:43:05 +00:00
msmith
ddba753180 If vfs_mountroot_try() isn't given a path to try mounting, return a silent
error rather than complaining about it verbosely.  No path is not really
a failure, but the diagnostic was confusing and unuseful.
1999-11-21 08:05:50 +00:00
peter
216e35006e Tempt fate and stop index from converting a const char * into a char *.
I've made a seperate version (c_index() etc) that use const/const, but
I'm not sure it's worth it considering there is one file in the tree
that uses index on const strings (kern_linker.c) and it's easily adjusted
to scan the strings directly (and is perhaps more efficient that way).
1999-11-21 04:26:48 +00:00
mjacob
bc517213b4 document new ISP config options 1999-11-21 03:27:29 +00:00
mjacob
0d75a5b4eb Clean up stupidity in the isp_handle_other_response function- indexes
of queue entries have to be at least 16 bits now! If we're running
a 2100 less than rev 5, turn off loop fairness (per Qlogic errata). Fix
typo in checking against 2200 F/W revision. Slightly fix/reorder fabric
login stuff. Change to usage of isp_getrqentry for code clarity. Add some
defensive dual bus assumptions. Various cleanups, etc...
1999-11-21 03:18:22 +00:00
mjacob
1a6884ad3f Add storage/access for a default WWN. A miscellaneous tweak or two. 1999-11-21 03:15:11 +00:00
mjacob
cad8fd9aa6 Add a isp_getrqentry inline function (that is, find the next available
request queue entry if any are left).
1999-11-21 03:14:04 +00:00
mjacob
ef2cbb09ee Fix some includes for when we (eventually) get target mode working again.
Role the core version minor number. Change the arguments to the dma
setup function to use a u_int16_t for the output request loop pointer
(truly amazing that this hasn't blown up in anyones face so far). Do
some shuffling around of some items.
1999-11-21 03:12:58 +00:00
mjacob
fbdf5e31e6 Put *back* the f/w, this time with a BSD style licence as approved
by Qlogic. The firmware is now also kept from compiling by default
unless some config options are set.

While we're at it, roll the 2200 f/w to 2.01.0. Still need to get the
1.17.26 2100 f/w working as it solves a lot of problems but it doesn't
want to work yet with this driver (:-)).
1999-11-21 03:08:29 +00:00
mjacob
4ce25ec501 Add in new Qlogic isp config options:
ISP_COMPILE_1020_FW	compile in Qlogic 1020/1040 PCI SCSI f/w
ISP_COMPILE_1080_FW	compile in Qlogic 1080/1240/1280 PCI LVD SCSI f/w
ISP_COMPILE_2100_FW	compile in Qlogic 2100 Fibre Channel f/w
ISP_COMPILE_2200_FW	compile in Qlogic 2200 Fibre Channel f/w
ISP_COMPILE_FW		compile in all firmware (overrides the others)

These are not on by default, thus saving about 200KBytes.

Additionally:

SCSI_ISP_WWN            to define a WWN to use
1999-11-21 03:00:19 +00:00
mjacob
b2895f817a Fix dmasetup functions to have 16 bit queue indices. Get the chip revision
out of the PCI CLASS reg and store it in the softc. Use the getenv_quad
function to get a WWN override from the environment. Look for a config
value for same. Make slightly less lame the wwn seed construction.
1999-11-21 02:56:17 +00:00
jkh
bdad2b18b4 Revert peter's commit to remove cdevsw_add() - it was a bit premature
since things fail to function properly without it (pty allocation becomes
somewhat haphazard).
1999-11-21 02:54:54 +00:00
kuriyama
b9d4fe915a s/Brige/Bridge/. 1999-11-21 00:53:23 +00:00
phk
be027f2c38 Teach the md driver to use preloaded files of type "md_image". 1999-11-20 22:43:27 +00:00
wpaul
5ade237428 Minor tweak: the subsystem device ID code for the quad port 62044 card
is documented to be 0x18 in the Adaptec manual, however there appears to
be a newer board rev with code 0x19. I added a #define for this and
updated the probe code so that this board will be properly identified
in the probe messages. (Currently it's just identified generically as
an AIC-6915 chip.)
1999-11-20 18:29:44 +00:00
sef
b5a0bd9494 A process should be able to examine itself. 1999-11-20 18:22:14 +00:00
cg
c7d695c879 changes for the new location of pcm 1999-11-20 18:11:40 +00:00
cg
b2eb38ffac repo-copied to make way for newmidi, this commit updates include paths 1999-11-20 16:50:33 +00:00
eivind
f65e4dc8cd We do not have ffs_checkexp, so remove the prototype 1999-11-20 16:44:44 +00:00
eivind
9ba3c6c857 Fix VOP_MKNOD for loss of WILLRELE. I don't know how I could have missed
this in the first place :-(

Noticed by:	bde
1999-11-20 16:09:10 +00:00
peter
23264e7062 Allow NULL for startp and/or countp in bus_get_resource() so that you can
get one of the two without having to use a dummy variable.
1999-11-20 14:56:55 +00:00
phk
4d591d1e00 Get rid of calls to vfinddev() by ripping out code for vnode type
which has already been disabled.
1999-11-20 13:18:24 +00:00
phk
dfc0edf6ef Get rid of calls to vfinddev() by doing like specfs. 1999-11-20 13:18:04 +00:00
phk
1adcecffd9 struct mountlist and struct mount.mnt_list have no business being
a CIRCLEQ.  Change them to TAILQ_HEAD and TAILQ_ENTRY respectively.

This removes ugly  mp != (void*)&mountlist  comparisons.

Requested by:   phk
Submitted by:   Jake Burkholder jake@checker.org
PR:             14967
1999-11-20 10:00:46 +00:00
mdodd
b17c96564d I forgot to remove the "NCARD == 0" hacks that kept this driver
from blowing up on PCMCIA systems.  The hack isn't needed anymore.

Reminded by: Blaz Zupan <blaz@gold.amis.net>
1999-11-20 09:28:01 +00:00