Commit Graph

16765 Commits

Author SHA1 Message Date
Peter Wemm
a3d5686298 Stub out the old pnp code till these are converted so GENERIC builds again. 1999-09-02 04:37:07 +00:00
Nick Hibma
2e771e0387 Typo: 'x' should be 'y' (only affects debugging output) 1999-09-01 21:37:56 +00:00
Doug Rabson
f6b6a3497c This is part of an untested set of changes to the ed driver to support
the new PnP code. Since the bulk of the driver changes are not being
committed at this time, it will not affect the driver. The code is being
committed early to allow others synchronise changes.
1999-09-01 21:21:03 +00:00
Doug Rabson
4249382df0 This represents essentially a complete rewrite of the ISA PnP code. The
new system is integrated with the ISA bus code more cleanly and allows
the future addition of more enumerators such as PnPBIOS and ACPI.

This commit also enables the new pcm driver since it is somewhat tied to
the new PnP code.
1999-09-01 20:53:43 +00:00
Bill Paul
1ff33426c8 Re-arrange things in the attach routines of the 3Com and RealTek PHY
drivers so that we don't clobber things or leave them uninitialized
if we abort due a failure.

Submitted by:	Luoqi Chen
1999-09-01 17:07:27 +00:00
Nick Sayer
c94abdcc97 quoted string change: the si driver also covers the Specialix "SX"
product.
1999-09-01 16:42:54 +00:00
Sean Eric Fagan
f3a6cf7052 Make prototype match function. 1999-09-01 16:21:57 +00:00
Poul-Henning Kamp
fd559c6fc1 Fix the sense of the vn_isdisk() check. 1999-09-01 15:17:18 +00:00
Peter Wemm
523df07b14 Sigh. Serves me right for testing against a modified tree (dfr's pnp
changes).  Doug changed these variables.  This should fix the isa_compat.c
breakage that phk reported.  (Sorry!)
1999-09-01 14:53:16 +00:00
Roger Hardiman
216c19e338 Update to driver 1.72.
Fix a bug where video capture locks up on channel changes.
Many thanks to Juha for solving this.

Submitted by: Juha Nurmela <Juha.Nurmela@quicknet.inet.fi>
1999-09-01 14:09:53 +00:00
Poul-Henning Kamp
db6f05bfac Set si_bsize_phys and si_bsize_max in all legacy CD drivers. 1999-09-01 13:03:05 +00:00
Poul-Henning Kamp
df8f292395 Try to win back the "removal of most crufty code" trophy from markm:
Remove WD formatting code which has never worked in 386bsd or FreeBSD.

Remove  DIOCSSTEP and DIOCSRETRIES ioctls as well, they belong in
history, along with the SMD disks.

OK'ed by:	bde
1999-09-01 11:32:52 +00:00
Poul-Henning Kamp
e3dca63008 Use "multiple 4 char outdent until no wrap" rather than ANSI string
concatenation to preserve K&R compatibility.

Requested by: bde
Terminology by: grog
1999-09-01 09:39:11 +00:00
Doug Rabson
be73175638 Change $Id$ to $FreeBSD$ 1999-09-01 09:38:21 +00:00
Doug Rabson
74b128bad6 * Fix a stack of warnings.
* Make it possible to type a filename to boot1 so that it is possible to
  recover from fatally broken versions of /boot/loader.
* Make a start at a CD boot program (not yet functional).
1999-09-01 09:11:14 +00:00
Jordan K. Hubbard
3dd1fb6608 Try and commit the tun comment fix again; I have no idea why there
was a clash the last time, leading me to think that it had already
been fixed.
1999-09-01 09:01:54 +00:00
Peter Wemm
b9b9a813b1 Add $FreeBSD$ 1999-09-01 07:00:27 +00:00
Peter Wemm
53c5a968fe $Id$ -> $FreeBSD$ 1999-09-01 06:58:27 +00:00
Peter Wemm
1be9d26e4a Eliminate some magic numbers. 1999-09-01 06:34:24 +00:00
Poul-Henning Kamp
8684f73af8 Improve the micro "disk" layer after gaining more experience with it. 1999-09-01 05:38:09 +00:00
Poul-Henning Kamp
de5f40afa6 Improve the returned values in st_blksize a little bit, avoid
accessing union fields not valid for dev_t type.
1999-09-01 05:36:55 +00:00
Cameron Grant
987e59726a say hello to newpcm. it is not yet enabled, requiring new pnp code from dfr
to compile successfully.  further details will be provided in the commit
enabling newpcm.
1999-09-01 04:08:39 +00:00
Cameron Grant
bfd9d61ea6 mss and sb drivers updated for newpcm
Reviewed by:	peter, dfr
1999-09-01 04:01:57 +00:00
Bill Paul
499d0ac7aa Just when I thought it was safe. In the original 3c905-TX NICs, the
external NatSemi PHY chip was programmed to respond to MII address 24.
In the 3c905B ASICs, the transceiver is internal but it's still mapped
to MII address 24. But *some* 3Com 3c905B ASIC revisions map the
transceiver control registers to *all* MII addresses (0 through 31).
The miibus code probes for PHYs at all MII addresses and because of
this unusual behavior, it will attempt to map the same PHY registers
several times over, which doesn't work.

Naturally, the 3c905B NIC that I tested happened not to exhibit this
behavior.

The fix is to tweak xl_miibus_readreg() and xl_miibus_writereg()
to only respond when attempting to read from MII address 24. This
is safe to do since the 3Com documentation indicates that the PHY
and/or internal transceiver will always be mapped to address 24,
and there are no 3Com XL NICs with more than one PHY.
1999-09-01 03:16:21 +00:00
Brian Somers
3e5eed686b ppp(1) -> ppp(8) 1999-09-01 00:51:23 +00:00
Mark Newton
c2de70091b Add MAINTAINER line 1999-09-01 00:32:18 +00:00
Julian Elischer
fca666a142 General cleanup of core-dumping code.
Submitted by: Sean Fagan,
1999-09-01 00:29:56 +00:00
Doug Rabson
8f0ba3dbab Make multiuser boots the default instead of singlue user. 1999-08-31 22:42:15 +00:00
Poul-Henning Kamp
3b7df19ba4 Set the buffersize for non BSDFFS labeled partitions to
max(dev->si_bsize_phys, BLKDEV_IOSIZE).

Requested by:   davidg
1999-08-31 21:46:42 +00:00
Poul-Henning Kamp
586e1b7b46 Make buffered acces to bdevs from userland controllable with
a sysctl vfs.bdev_access.
1999-08-31 21:01:57 +00:00
Poul-Henning Kamp
d27535c143 Include "dscheck" and device name in all messages from dscheck(). 1999-08-31 18:36:15 +00:00
Jonathan Lemon
9fc2bcf662 Simplify, and return an error if the user attempts to set a TCP
time value which results in < 1 tick.

Suggested by: 	bde
1999-08-31 16:34:20 +00:00
Jonathan Lemon
9987d77844 Remove conversion macros that were used during development. 1999-08-31 16:31:07 +00:00
Bill Paul
59519ca74f Convert the RealTek 8139 driver to newbus and miibus in one swell foop.
Also set it up to be compiled as a module.
1999-08-31 14:45:51 +00:00
Bill Paul
a4f02d20ed Add a driver for the internal PHY in the RealTek 8139. 1999-08-31 14:43:30 +00:00
Tor Egge
87f7b9a9c1 If integration of a buffer into a cluster write operation fails, release
the buffer instead of creating a future deadlock.
PR:		12800
Submitted by:	dillon
1999-08-31 14:18:32 +00:00
Yoshihiro Takahashi
4d7e370ac4 C-NET(9N)C support (PC-98 only).
Submitted by:	chi@bd.mbn.or.jp (Chiharu Shibata)
1999-08-31 12:37:35 +00:00
Roger Hardiman
ec4d750134 add vnode_if.h 1999-08-31 11:13:47 +00:00
Roger Hardiman
2dd2ab9fc8 Oops. I undid the $Id: -> $FreBSD: change.
Put it back to $FreeBSD:
1999-08-31 10:32:42 +00:00
Roger Hardiman
2271cf26df Update to driver release 1.71
New Features:
Greatly improved VBI capture support. (mainly for the AleVT port)
Supports select() on /dev/vbi
Improved RISC program for RGB+VBI capture to capture both evenodd
VBI data even when only capturing even only (or odd only) video
Based on code from Juha Nurmela <Juha.Nurmela@quicknet.inet.fi>

Support for Hauppauge 627 and Temic 4006
Submitted by: Maurice Castro <maurice@atum.castro.aus.net>

Bug Fix:
Fix bug in AverMedia card detection.
1999-08-31 10:29:42 +00:00
Julian Elischer
d205ed0a1b make correct minor numvers for some of the devices.
Submitted by:	Hellmuth Michaelis <hm@hcs.de>
1999-08-31 05:55:14 +00:00
Bill Paul
a8ba3c35cb Add splimp protection to wb_tick(). 1999-08-31 05:30:13 +00:00
Bill Paul
ca11eaac63 Make sure to free resources on failure correctly in a couple of places
in ste_attach().
1999-08-31 05:20:59 +00:00
Peter Wemm
ead4c37a5d Fix a couple of things that weren't quite right for not using
PN_RX_BUG_WAR - it was freeing memory that may not have been allocated,
and unconditionally bzero'ing the mbufs even if the workaround wasn't
enabled.
1999-08-31 04:22:46 +00:00
Jonathan Lemon
ccb4d0c653 Add a SYSCTL_PROC so that TCP timer values are now expressed to
the user in ms, while they are stored internally as ticks. Note
that there probably are rounding bogons here, especially on the
alpha.
1999-08-31 03:40:24 +00:00
Mike Smith
ac3595b017 Make the error return from mem_range_attr_get actually do something useful
(return an error to the caller)
1999-08-31 01:00:30 +00:00
Bill Paul
4ae17070a2 Convert the Adaptec and Winbond drivers to miibus. 1999-08-30 23:08:32 +00:00
Mike Smith
4af396a52d Check that there is memory range support before attempting to perform such
an operation, as a kernel client may not have previously checked the CPU
type (it may not be able to).

Also correct the function declaration style for the mem_range functions to
match the rest of this file (oops).

Submitted by:	gibbs
1999-08-30 22:13:28 +00:00
Jonathan Lemon
9b8b58e033 Restructure TCP timeout handling:
- eliminate the fast/slow timeout lists for TCP and instead use a
    callout entry for each timer.
  - increase the TCP timer granularity to HZ
  - implement "bad retransmit" recovery, as presented in
    "On Estimating End-to-End Network Path Properties", by Allman and Paxson.

Submitted by:	jlemon, wollmann
1999-08-30 21:17:07 +00:00
Poul-Henning Kamp
e45a8fa69d Null commit to get last commit message recorded:
Avoid name clash with dev_t member si_tty.
1999-08-30 20:52:14 +00:00
Poul-Henning Kamp
3608e384ca *** empty log message *** 1999-08-30 20:47:29 +00:00
Dima Ruban
8c0abeface ktrace should not follow symlinks either.
Suggested by:	bde
1999-08-30 19:08:28 +00:00
Luoqi Chen
5ef84cd20e Wrong sleep addr passed to wakeup.
Submitted by:	Vsevolod Lobko	seva@sevasoft.alex-ua.com
1999-08-30 18:35:31 +00:00
Poul-Henning Kamp
5968e18b69 pps_shiftmax only exists #ifdef PPS_SYNC
Found by:	Roger Hardiman <roger@cs.strath.ac.uk>
1999-08-30 16:21:32 +00:00
Justin T. Gibbs
9be376cc32 aic7xxx.c:
Clean out some #if 0'ed debugging cruft.

aic7xxx.h:
	Definitions for the aic7855 and aic7859.
1999-08-30 16:12:39 +00:00
Justin T. Gibbs
5bdd92770e Add support for the aic7859 which is found on the 2930CU.
Break out the detection logic for the aic7855 and properly report
these chips as 7855s instead of 7850s.

The 2940AU_CN is an aic7860 based card, not aic7860.

Not setting CACHETHEN turned out to be a bad idea.  It can cause
spurious corruption under heavy PCI load with multiple masters.
1999-08-30 16:11:46 +00:00
Nick Sayer
df6cb0046a MFS: Change path to perl. 1999-08-30 14:41:09 +00:00
Poul-Henning Kamp
82e84c5bd2 Update to the latest nanokernel from Dave Mills. 1999-08-30 12:04:49 +00:00
Sheldon Hearn
cd9e4cab46 For every "promiscuous mode enabled" message printed for an interface,
print a matching "disabled" message when we drop out of promiscuous
mode for that interface.

Discussed on the freebsd-hackers mailing list.
1999-08-30 11:55:30 +00:00
Poul-Henning Kamp
c5b72c3d85 s/si_tty_tty/si_tty/g 1999-08-30 10:35:37 +00:00
Roger Hardiman
a8a77e3724 Add #include <sys/select.h> ready for select() support in bt848 driver 1999-08-30 09:28:47 +00:00
Poul-Henning Kamp
02e1576966 Make bdev userland access work like cdev userland access unless
the highly non-recommended option ALLOW_BDEV_ACCESS is used.

(bdev access is evil because you don't get write errors reported.)

Kill si_bsize_best before it kills Matt :-)

Use the specfs routines rather having cloned copies in devfs.
1999-08-30 07:56:23 +00:00
Poul-Henning Kamp
9cc99e3681 Make bdev userland access work like cdev userland access unless
the highly non-recommended option ALLOW_BDEV_ACCESS is used.

(bdev access is evil because you don't get write errors reported.)

Kill si_bsize_best.

Use the specfs routines rather having cloned copies in devfs.
1999-08-30 07:56:15 +00:00
Bruce Evans
4047cd0bb2 Converted the silly SAFTEY option into a new-style option by renaming it to
DIAGNOSTIC.

Fixed an English style bug in the panic messages controlled by SAFETY.
1999-08-30 07:08:04 +00:00
Peter Wemm
4e731e62c4 If using GNUC and ELF, make __IDSTRING() expand into an inline asm
statement to put the rcsid into the .comment section.  This allows
the comments (ie:version id's of compiler, headers, source, etc) to be
stripped out with the standard tools (strip/objcopy).  SVR4 has a
tool called 'mcs' (manipulate comment section) which allows you to
add/remove/compact strings.  Removing duplicate strings helps a lot
if the headers generate them.
Using __attribute__((section(".comment"))) would probably also work,
but that still leaves the RCSID occupying C name space somewhere.
1999-08-30 03:57:47 +00:00
Bruce Evans
de5104ae7c "Fixed" my recent world breakage (umap_subr.c now includes opt_ddb.h).
Fixed some style bugs, especially the bogus definition of UMAPFS.
1999-08-30 03:26:45 +00:00
John Polstra
a2c07ebf59 Add STAILQ_FOREACH. 1999-08-30 01:01:19 +00:00
Bill Fumerola
a5a388c7ab Add $FreeBSD$ and spell Eklund properly.
Approved by:	brian (well, he approved adding $Id$)
1999-08-29 23:17:04 +00:00
David E. O'Brien
5a8c77a83c Remove extra indenting of `break' statements introducted in rev 1.89,
plus wrap some long lines from that revision.

While here, wrap some other long lines.
1999-08-29 21:59:03 +00:00
KATO Takenori
545a1c84b2 - Removed COMPAT_ATDISK from option because it is pseudo-device now.
- Fixed arguments of atcompat_dsinit() in diskslice_machdep.c.
1999-08-29 21:28:47 +00:00
Mitsuru IWASAKI
c610e9fe39 ident GENERIC -> ident PCCARD
Okayed by:	hosokawa
1999-08-29 16:58:40 +00:00
Bill Paul
1ef8fbeabf Convert the 3Com XL driver to miibus. This one is a little tricky
due to the fact that there are non-MII cards supported by the same
driver and I don't have all of the cards available for testing. There's
also the 3c905B-COMBO which has MII, AUI and BNC media ports all in one
package. Supporting the COMBO is difficult because we have to add the
10base5 and 10base2 media types to the same ifmedia struct as the
MII-attached types, however there is no way to force the miibus and
child PHYs into existence before xl_attach() completes, so there is
no ifmedia struct available in xl_attach(). What we do inistead is
use the mediainit method as a callback: when a child PHY is attached,
it calls the miibus mediainit routine which selects a default media.
This routing also calls the NIC driver's mediainit method (if it
implements one) at which point we can safely add the other media
types.
1999-08-29 15:52:19 +00:00
Bill Paul
9052a8fa41 Regenerate miidevs.h. 1999-08-29 15:44:07 +00:00
Bill Paul
24a7e3d3de The ASIC on the 3c905C appears to be manufactured by Broadcom (previous
ones were made by Lucent). The Broadcom chip also appears to use an
internal PHY made by Broadcom which uses the Broadcom OUI. This is different
from previous ASICs which always returned 0 in the PHY ID registers.
To account for this, I added the necessary ID values for the Broadcom
PHY so that it can be detected and attached using the 3Com PHY driver
instead of defaulting to the generic one.
1999-08-29 15:42:04 +00:00
Roger Hardiman
a165a91d78 Add Voodoo 3 identification.
pciconf on my Vodoo3 2000 also shows sub-system vendor id/model with
card=0x0030121a
1999-08-29 15:11:22 +00:00
Poul-Henning Kamp
c5b072197a Remove unneeded "maj" variable.
Give up if we have already started dumping once before.

Print name of dumpdev.
1999-08-29 14:54:11 +00:00
Poul-Henning Kamp
f5988870ce Remove unneeded slice element. 1999-08-29 14:52:02 +00:00
Poul-Henning Kamp
9a7f910b84 Convert to use the new "disk" layer.
A few cleanups while here.
1999-08-29 13:29:29 +00:00
Poul-Henning Kamp
da9e4f5550 Add micro "disk" layer which should enable us to pull all the slice/label
stuff out of the device drivers.
1999-08-29 13:28:55 +00:00
Dag-Erling Smørgrav
27108a1511 Include the correct header for the IPSTEALTH option. 1999-08-29 12:18:39 +00:00
Nick Hibma
51b98897fa Only NetBSD needs sys/device.h. 1999-08-29 11:56:49 +00:00
Nick Hibma
a7fa9611ed Only NetBSD uses sys/device.h
Error-reported-by:	phk
1999-08-29 11:49:22 +00:00
Marcel Moolenaar
e459b442df Fix a braino: Linux minor device numbers are 8 bits wide and not 10. 1999-08-29 11:47:01 +00:00
Bruce Evans
1961e4302a Fixed printf format errors (don't assume that ntohl() returns u_long;
it returns u_int on i386's and in_addr_t (u_int32_t) on alphas).
1999-08-29 10:28:10 +00:00
Bruce Evans
684f9417a2 Oops, I missed a cast in rev.1.119. 1999-08-29 10:23:13 +00:00
Bruce Evans
09c1244640 Removed dysfunctional/defunct options KERNFS_DIAGNOSTIC,
UMAPFS_DIAGNOSTIC and UNION_DIAGNOSTIC.  Uncommented NULLFS_DIAGNOSTIC.
It is as bogus as the above three but since it is already a new-style
option it is easier to use it than to fix it.
1999-08-29 10:14:59 +00:00
Bruce Evans
8021ba879a Changed old-style option UNION_DIAGNOSTIC to DEBUG and fixed printf
format errors exposed by this.  It has nothing to do with diagnostics
since it does little more than control tracing of normal operation.
Actual diagnostics for the union file system are still controlled by
the DIAGNOSTIC option.
1999-08-29 10:03:35 +00:00
Bruce Evans
b00b6d73dd Changed old-style options UMAPFS_DIAGNOSTIC and UMAP_DIAGNOSTIC to DEBUG
or DDB and fixed printf format errors exposed by this.  The options had
little to do with diagnostics; they mostly controlled tracing of normal
operation.
1999-08-29 09:54:17 +00:00
Bruce Evans
47966f4c8a Changed old-style option KERNFS_DIAGNOSTIC to DEBUG and fixed printf
format errors exposed by this.  It has nothing to do with diagnostics
since it does little more than control tracing of normal operation.
1999-08-29 09:38:25 +00:00
Poul-Henning Kamp
f054c29093 Merge alpha and pc98 changes into i386 MBR handling code and replace all
three copies with one copy in MI land.
1999-08-29 09:12:54 +00:00
Poul-Henning Kamp
83d34e0b60 initialize si_bsize_phys from what the drive told us. 1999-08-29 09:10:05 +00:00
Poul-Henning Kamp
d137accc89 Add dev_t freeing code. Controlled by sysctl debug.free_devt, default
is off.
1999-08-29 09:09:12 +00:00
Bruce Evans
3de9d6fbe4 Don't restrict our requests for contiguous memory to addresses >= 1MB.
This fixes, at least, panics in ncr_attach() on i386's with about 5MB
of memory.  The restriction was a hack to leave some low memory for ISA
DMA, but on i386's we now allocate pages from the top down, so all the
restriction did was cause our allocations to fail when there is no free
memory above 1MB.
1999-08-29 09:03:58 +00:00
Marcel Moolenaar
d4c45842d7 Fix a missing '-1' in the size argument of copyout in getgroups. Spotted while
reviewing the MFC in -stable.
1999-08-29 08:52:38 +00:00
Poul-Henning Kamp
0bd2b984ce Sort the easy part of this file. It should be all sorted. 1999-08-29 08:44:18 +00:00
KATO Takenori
a8c345fb03 Changed from dname into devtoname(bp->b_dev) in the function dsinit(). 1999-08-29 05:05:27 +00:00
Masahide MAEKAWA
52b18414f4 o fix typo 1999-08-29 02:05:12 +00:00
Greg Lehey
03705cdeb7 Initialize the si_bsize fields of the new dev structure. This fixes
some swapper problems analogous to those experienced with ccd.

This fix is a kludge: since we currently don't track the "sector size"
in a volume label, we guess a worst case (4 kB, as used by vnode
devices).  If the concept of sector size is here to stay, I'll make
some changes to track the "sector size" of a volume.  This will
probably be the maximum of the sector sizes of all component drives,
but things could get ugly if we start allowing non-standard sector
sizes such as 524 bytes.

Unkludged-version-submitted-by:	phk
1999-08-29 01:41:53 +00:00
Masahide MAEKAWA
a0f9149b19 o synchronisation with NetBSD
Reviewed by:	Hick Hibma
Obtained from:	NetBSD
1999-08-29 01:18:32 +00:00
Nick Hibma
ca66889cf7 Correct URL's and change ifdef to if defined (following rest of style in
file)
1999-08-28 20:10:46 +00:00
Nick Hibma
805bb37eb5 Remove NetBSD specific code. USB part is trivial, and the rest is not
shared anyway.
1999-08-28 20:09:34 +00:00
Poul-Henning Kamp
94db13fe98 Fix various trivial warnings from LINT 1999-08-28 19:44:07 +00:00
Poul-Henning Kamp
a87b535090 Put a brief comment on a couple of #defines. 1999-08-28 19:21:36 +00:00
Poul-Henning Kamp
9626728875 remove unused variables. 1999-08-28 19:21:03 +00:00
Poul-Henning Kamp
a978dc23b7 #include <sys/queue.h> 1999-08-28 19:20:07 +00:00
John Hay
01d3efc077 Get rid of the old XNS checksum code and implement it the IPX way.
PR:		13374
Submitted by:	Boris Popov <bp@butya.kz>
1999-08-28 18:21:55 +00:00
Yoshihiro Takahashi
3dec6735e5 Merge missing changes from sys/i386/conf/GENERIC. 1999-08-28 16:49:58 +00:00
Yoshihiro Takahashi
cbf0618984 Fix ordering. 1999-08-28 16:20:53 +00:00
Yoshihiro Takahashi
c8662eda6f - The old printer driver is renamed 'olpt'.
- Added the gdc driver.
1999-08-28 15:17:25 +00:00
KATO Takenori
c41e88e949 Added MII bus support.
Reminded by:	phk
1999-08-28 15:04:27 +00:00
Larry Lile
fcf11853dc It is much easier to arp if you don't truncate your arp-reply's.
[affects token-ring only]
1999-08-28 14:57:12 +00:00
Poul-Henning Kamp
10af1a2b5f We don't need to pass the diskname argument all over the diskslice/label
code, we can find the name from any convenient dev_t
1999-08-28 14:33:44 +00:00
Hellmuth Michaelis
f5fe620a92 add MAINTAINER for the kernel part of i4b 1999-08-28 13:35:00 +00:00
Nick Hibma
d447ab3427 Thou shall do a make before commit.
[grmbl]
Fix duplicate elements in struct in previous commit.
1999-08-28 11:52:12 +00:00
Nick Hibma
d88879933b We use device_set_desc_copy, so we do not need to free the copied text
manually.
1999-08-28 11:35:36 +00:00
Nick Hibma
f748f71688 Share more between FreeBSD and NetBSD 1999-08-28 11:31:21 +00:00
Nick Hibma
7e8893c9b4 Update the list of devices from NetBSD 1999-08-28 09:39:54 +00:00
Marcel Moolenaar
9e8b10d186 Add MAINTAINER and remove the unused COMPAT_LINUX and VM_STACK defines. 1999-08-28 09:04:21 +00:00
Marcel Moolenaar
86f95e6b6d Implement the OSS_GETVERSION ioctl. The version returned can be changed through
the sysctl variable `compat.linux.oss_version'.

PR: 12917
Originator: Dean Lombardo <dlombardo@excite.com>
1999-08-28 08:43:03 +00:00
Poul-Henning Kamp
9465bf4495 Initialize dev->si_bsize*, the floppy driver doesn't use dsopen(). 1999-08-28 08:10:13 +00:00
Brian Feldman
78f9020e95 Also make the "other" packets counter resettable. 1999-08-28 07:20:59 +00:00
Brian Feldman
bbeaed0909 Back out the cdevsw_remove() from previous revision for further testing. 1999-08-28 07:06:11 +00:00
Brian Feldman
b519d997a1 Unevilize vn(4) somewhat:
1. implement read-only ability
	2. make it play nice with cdevsw (use cdevsw_remove() uon kldunload)
1999-08-28 06:21:39 +00:00
Peter Wemm
2185977908 Regen after Id->FreeBSD 1999-08-28 02:35:56 +00:00
Peter Wemm
ee15718941 $Id$ -> $FreeBSD$ (some mangled and/or hidden ones) 1999-08-28 02:21:15 +00:00
Peter Wemm
280652828b $Id$ -> $FreeBSD$ 1999-08-28 02:16:32 +00:00
Peter Wemm
dacec3e8f2 Id -> FreeBSD 1999-08-28 01:15:37 +00:00
Peter Wemm
c3aac50f28 $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
Peter Wemm
7f3dea244c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
Brian Feldman
4d1bb12d6c Correction: uid -> gid (comment) 1999-08-27 23:46:02 +00:00
Peter Wemm
a4add9a9b1 $Id$ -> $FreeBSD$ 1999-08-27 23:45:13 +00:00
Bill Paul
b3bc7a4bb0 Fix path for miibus_if.m (mii > dev/mii); 1999-08-27 21:21:53 +00:00
Bill Paul
05d6200e3f Make some cleanups related to miibus. 1999-08-27 21:18:02 +00:00
Marcel Moolenaar
c6dfea0ebd Add sysctl variables for the Linuxulator. These reside under `compat.linux' as
discussed on current.

The following variables are defined (for now):

    osname (defaults to "Linux")
        Allow users to change the name of the OS as returned by uname(2),
        specially added for all those Linux Netscape users and statistics
        maniacs :-) We now have what we all wanted!

    osrelease (defaults to "2.2.5")
        Allow users to change the version of the OS as returned by uname(2).
        Since -current supports glibc2.1 now, change the default to 2.2.5
        (was 2.0.36).

    oss_version (defaults to 198144 [0x030600])
        This one will be used by the OSS_GETVERSION ioctl (PR 12917) which I
        can commit now that we have the MIB. The default version number is the
        lowest version possible with the current 'encoding'.

A note about imprisoned processes (see jail(2)):
  These variables are copy-on-write (as suggested by phk). This means that
  imprisoned processes will use the system wide value unless it is written/set
  by the process. From that moment on, a copy local to the prison will be
  used.

A note about the implementation:
  I choose to add a single pointer to struct prison, because I didn't like the
  idea of changing struct prison every time I come up with a new variable. As
  a side effect, the extra storage is only needed when a variable is set from
  within the prison. This also minimizes kernel bloat when the Linuxulator is
  not used; both compiled in or as a module.

Reviewed by: bde (first version only) and phk
1999-08-27 19:47:41 +00:00
Bill Paul
d0dca9afa4 Update these Makefiles; add mlphy and tlphy to the mii module, add
miibus_if.h to tl module's dependencies.
1999-08-27 19:45:19 +00:00
Jonathan Lemon
7e42e2f811 Reference the correct gdt[] entry on SMP. Remove the `generation' flag,
and always reload the selectors for every bios call.
1999-08-27 19:39:20 +00:00
Bill Paul
46c8f7f1c2 Convert the ThunderLAN driver to miibus. This took me a while because I
had to get the ML 6692 PHY driver working correctly, which is harder than
it sounds. "Bitrate" ThunderLAN devices should still be supported (i.e
the older 10Mbps Netflex 3/P, which use the TNETE110 chip that has no
MII support). The ThunderLAN has an internal PHY which makes things a
little complicated, but these are the basic rules:

- For devices with just the ThunderLAN, the internal PHY is used to
  provide 10baseT, and 10base5/10baseT support. Autonegotiation will
  work, but only with 10baseT links. The only thing that really gets
  negotiated is whether the link is full or half duplex.

- For devices with the ThunderLAN and an external 10/100 PHY (like the
  Compaq Netelligent 100Mbps cards, or the internal Netflex 3/P with
  100Mbps upgrade daughter card), the external PHY is used for 10baseT
  and 100baseTX modes. The internal PHY is still used to support
  10base5/10base2, though you have to select them manual with ifconfig.

- For devices with the ThunderLAN and the ML6692 PHY, both the internal
  and external PHYs are used, though it will appear as though the 6692
  PHY will be used to support 10baseT and 100baseTX modes. In reality,
  the internal PHY will be used for 10baseT, but this fact will be hidden
  from the user. The 10base5/10base2 modes can also be selected manually
  as with above.
1999-08-27 18:58:27 +00:00
Bill Paul
d341237291 Add miibus drivers for the ThunderLAN internal PHY and the Micro Linear
ML6692 PHY. The Micro Linear driver is my own; the ThunderLAN driver is
a port of the NetBSD driver with various hacks. The ML driver is necessary
to support the Olicom OC-2326 ThunderLAN-based NIC.

Also regenerated miidevs.h to pick up the proper 'obtained from'
revision string.
1999-08-27 18:33:36 +00:00
Brian Feldman
b5fca1cb2a Add FIODTYPE ioctl for getting d_flags (type) info on a device.
Okayed by:	phk
1999-08-27 16:35:37 +00:00
Andrew Gallatin
34067f9475 Fix the child's return path from fork so that fork will return 0
in the child.  This corrects a problem where linux/alpha binaries see
the child's return value of fork as the parent's pid.  This happens because
linux/alpha binaries apparently check the return value directly, rather
than looking for a non-zero value in a4, as *BSD & OSF/1 do.

Reviewed by:dfr@nlsystems.com
1999-08-27 14:47:23 +00:00
Kazutaka YOKOTA
21f652c5b1 - Retain the previous vty and history buffers when setting up
the graphics mode.  This was the behavior prior to syscons.c
  rev 1.278, but broken in scvidctl.c rev 1.1.
1999-08-27 09:20:41 +00:00
Kazutaka YOKOTA
484fc65c06 - Set the correct value to va_line_width while in the ioctl
FBIO_SETLINEWIDTH.
1999-08-27 09:19:50 +00:00
Kazutaka YOKOTA
23ed6fc8bc - Ouch! Do not assume the VESA BIOS will preserve the upper 16 bits
of EAX and EBX.
1999-08-27 09:18:42 +00:00
Peter Wemm
08bf4f641e A few style changes (fixes hopefully) and some more tidying up. Fix (?)
the volatile cast warnings.
1999-08-27 08:32:54 +00:00
Julian Elischer
501f7f80bd Remove some vestiges of devfs direct calls. 1999-08-27 08:31:20 +00:00
Julian Elischer
ada9bd8cb8 Add PHK's make_dev() into more places where DEVFS used to be
hooked in directly.

Alpha change checked by: Matthew Jacob <mjacob@feral.com>
i4b ISDN changes checked by: Udo Schweigert <ust@cert.siemens.de>
    and Hellmuth Michaelis <hm@hcs.de>
PC98 changes checked by: Takahashi Yoshihiro <nyan@FreeBSD.org>
1999-08-27 07:26:26 +00:00
Peter Wemm
4e895e3962 Don't return 0 for an unknown ioctl (!). This was breaking ppp(8).
Slight tidy up while here.
1999-08-27 06:53:34 +00:00
Jonathan Lemon
6da3d6578b Add readonly OID ``net.inet.tcp.tcbhashsize'' so it is possible to
discover the size of the TCB hashtable on a running system.
1999-08-26 19:52:17 +00:00
Dima Ruban
d44e415624 Don't follow symlinks on coredumps.
Reviewed by:	dillon && security-officer
1999-08-26 17:32:48 +00:00
Poul-Henning Kamp
dbafb3660f Simplify the handling of VCHR and VBLK vnodes using the new dev_t:
Make the alias list a SLIST.

        Drop the "fast recycling" optimization of vnodes (including
        the returning of a prexisting but stale vnode from checkalias).
        It doesn't buy us anything now that we don't hardlimit
        vnodes anymore.

        Rename checkalias2() and checkalias() to addalias() and
        addaliasu() - which takes dev_t and udev_t arg respectively.

        Make the revoke syscalls use vcount() instead of VALIASED.

        Remove VALIASED flag, we don't need it now and it is faster
        to traverse the much shorter lists than to maintain the
        flag.

        vfs_mountedon() can check the dev_t directly, all the vnodes
        point to the same one.

Print the devicename in specfs/vprint().

Remove a couple of stale LFS vnode flags.

Remove unimplemented/unused LK_DRAINED;
1999-08-26 14:53:31 +00:00
Poul-Henning Kamp
9c93810d2d Initialize the dev->si_bsize fields.
Submitted by:	tegge
Reviewed by:	phk
1999-08-26 14:46:10 +00:00
Doug Rabson
50de873b59 Fix DMA macros to work on alpha. 1999-08-26 08:41:41 +00:00
Doug Rabson
22147525d2 Don't schedule the next transaction if the pipe is being aborted. 1999-08-26 08:40:55 +00:00
Bill Paul
cbc20d30a5 Properly re-enable the transmitter in the TX error handler. 1999-08-26 05:31:53 +00:00
Bill Paul
2f0f7ef0a6 Handle buses with multiple PHYs correctly. 1999-08-26 05:30:33 +00:00
Greg Lehey
2de219e97f Change asf function to use the new name of the list in kern_linker.c.
See revision 1.35 of sys/kern/kern_linker.c.
1999-08-26 04:01:37 +00:00
Greg Lehey
4e72079195 read_drive: Remove references to vp->v_lastr, which is going away.
Reviewed-by:	dillon
1999-08-26 03:27:21 +00:00
Greg Lehey
35b5051ab9 complete_rqe: explicitly reinitialize b.b_iodone. This shouldn't have
changed, but we've seen some weird cases of b_iodone
	      being NULL, and they don't make any sense.

Suffered-by:  Bernd Walter <ticso@cicely.de>
1999-08-26 03:26:39 +00:00
Greg Lehey
ca55837990 config_plex: don't allocate a rangelock struct.
lockrange: correctly expand rangelock struct, including expanding a
	   null struct.  Previously lockrange would attempt to lock a
	   NULL pointer under these circumstances.

Reported-by:	Ian Freislich <iang@uunet.co.za>
1999-08-26 03:25:38 +00:00
Peter Wemm
399f34180a Use .p2align to ensure consistant a.out/elf alignment. I'd have used
SUPERALIGN_TEXT, but this is inline assembler and after cpp has run.
Inspired by bde's comments on linux_locore.s.
1999-08-25 23:50:03 +00:00
Peter Wemm
4a54450a9d It would help if things that MUST be 32 bit aligned were really 32 bit
aligned.  If I recall correctly, this is to ensure apic_imen can be
accessed in a single bus cycle.  Also, use TEXT_ALIGN rather than a
.align 2 (which means 2 byte align on ELF and 4 byte align on a.out)
1999-08-25 23:42:02 +00:00
Mark Newton
776a8f98ee Replace ".align 2" with "ALIGN_TEXT" as per recent discussion re: the linux
emulator.

Suggested by:	bde
1999-08-25 22:55:56 +00:00
Julian Elischer
2a1be8333d Make a place to store the devfs hook for the block device, as the same
specinfo is used to identify both raw and block version sof a device.
1999-08-25 22:50:12 +00:00
Marcel Moolenaar
ae4ea3eed4 Use ALIGN_TEXT macro for alignment to avoid ambiguity.
Pointed out by: bde
1999-08-25 19:04:39 +00:00
Matt Jacob
2d712f3d8d what is a devuce? 1999-08-25 18:05:52 +00:00
Marcel Moolenaar
4e0eaf6924 Fix linux_newlstat in that it doesn't return the attributes of its containing
directory. Also, update arguments of NDINIT for both newstat and newlstat.

While I'm at it, fix style bugs in all {s|ls|fs}tat syscalls.

Reported by: bde
1999-08-25 15:23:54 +00:00
Marcel Moolenaar
c85f67175f Fix {g|s}etgroups semantics. We use cr_groups[0] to hold egid. This means that
egid will be twice in the set and that setting cr_groups[0] will change egid.
This is simply solved by ignoring cr_groups[0]. That is; linux_getgroups does
not return cr_groups[0] and linux_setgroups does not touch it.

Noticed by: bde
Brought to my attention by: sheldonh
1999-08-25 14:11:01 +00:00
Marcel Moolenaar
296f7267f3 Fix lingo: 'is not implemented or obsoleted' is not the same as 'is obsoleted
or not implemented'.
1999-08-25 13:17:05 +00:00
Poul-Henning Kamp
41d2e3e09e Introduce vn_isdisk(struct vnode *vp) function, and use it to test for diskness. 1999-08-25 12:24:39 +00:00
Poul-Henning Kamp
a431597b25 Add a couple of missing but unimportant break; statements. 1999-08-25 11:44:11 +00:00
Marcel Moolenaar
2fdc82e093 Change all UNIMPL syscalls to STD and add them to linux_dummy. Now we always
know if and when an unimplemented or obsoleted syscall is being used. Make the
message more end-user friendly.

And as long as we're here, rename some unimplemeted syscalls (linux_phys ->
linux_umount2, linux_vm86 -> linux_vm86old, linux_new_vm86 -> linux_vm86).

Change prototype for linux_newuname from `struct linux_newuname_t *' into
`struct linux_new_utsname *'. This change is reflected in linux.h and
linux_misc.c.
1999-08-25 11:19:03 +00:00
Marcel Moolenaar
fc4529a0d1 Change all UNIMPL syscalls to STD and add them to linux_dummy. Now we always
know if and when an unimplemented or obsoleted syscall is being used. Make the
message more end-user friendly.

And as long as we're here, rename some unimplemeted syscalls (linux_phys ->
linux_umount2, linux_vm86 -> linux_vm86old, linux_new_vm86 -> linux_vm86).

Change prototype for linux_newuname from `struct linux_newuname_t *' into
`struct linux_new_utsname *'. This change is reflected in linux.h and
linux_misc.c.

Lastly, make line-continuation and indentation more uniform.
1999-08-25 11:17:36 +00:00
Marcel Moolenaar
8ebe972975 Fix stack misalignment for Linux binaries caused by `linux_sigcode' not being
a multiple of 4 bytes in size. This solves the recent SIGBUS errors for
glibc2.1 configurations.

Explained by: bde
1999-08-25 09:05:29 +00:00
Doug Rabson
6afde6e247 Some very minor changes to the ISA dma code. 1999-08-25 08:25:58 +00:00
Mike Smith
68b7d21a4a Rename 'bios_jmp' to 'bios16_jmp' to make it clear what it's related to. 1999-08-25 06:56:37 +00:00
Peter Wemm
857c0cefe0 Use the far jump for the base of the page arithmatic rather than the
calling function, otherwise Bad Things Happen(tm) when bios16_call is
not in the same page as bios_jmp.

Reviewed by:  msmith
1999-08-25 06:44:32 +00:00
Julian Elischer
0ff7b13acd Make DEVFS use PHK's specinfo struct as the source of dev_t and devsw.
In lookup() however it's the other way around as we need to supply the
dev_t for the vnode, so devfs still has a copy of it stashed away.

Sourcing it from the vnode in the vnops however is useful as it makes
a lot of the code almost the same as that in specfs.
1999-08-25 04:55:20 +00:00
Julian Elischer
2053751093 Make DEVFS ops reflect some of the changes that have recently occured in the
specfs version of the same ops. Merging with phk's dev_t changes is not yet
complete.

i.e. devfs still uses it's own devsw pointer rather than following
devsw(a_vp->v_rdev), and it's own copy of the dev_t.

This fixes some broken actions re: syscons and DEVFS due to bitrot in
devfs vops.
1999-08-25 02:04:40 +00:00
Julian Elischer
bb70475a92 Fix comment to match reality..
vop_strategy gets a vnode argument these days.
1999-08-25 00:26:34 +00:00
Julian Elischer
792b73b97b Devfs now adds itself to the hook that PHK supplies.
block devices are still not handled correctly, though a kludge
may make them "ok".
1999-08-24 20:30:15 +00:00
Poul-Henning Kamp
cb5eef8f2b Initialize the si_bsize fields for the MFS bogodevices.
(This broke MFS rootfs and thereby installation)
1999-08-24 18:35:33 +00:00
Poul-Henning Kamp
c1df7a7420 Remove unneeded prototypes. 1999-08-24 18:31:06 +00:00
Mike Smith
e6a80efcdd Work around a bad design in some PnP BIOS code whereby the BIOS can reach
off the top of our constructed stack segment while it's trying to copy a
maximally-sized PnP argument frame around.
1999-08-24 16:42:08 +00:00
Sheldon Hearn
740e3a15f7 Fix bug introduced in rev 1.28, which causes kernel build to break for
the case where DEBUG is defined but not DIAGNOSTIC. ffs_checkblk is
declared conditionally on DIAGNOSTIC, not DEBUG.

PR:	13314
Reviewed by:	bde
1999-08-24 08:39:41 +00:00
Alan Cox
4bffe072c4 Cosmetic: Correct the Id string.
Submitted by:	Peter Jeremy <jeremyp@gsmx07.alcatel.com.au>
1999-08-24 06:54:20 +00:00
Brian Feldman
076dab2983 When the SYSINIT() was removed, it was replaced with a make_dev on-demand
creation of /dev/drum via calling swapon. However, the make_dev has a
bogus (insofar that it hasn't been added yet) cdevsw, so later we end
up crashing with a null pointer dereference on the swap vp's specinfo.
The specinfo points to a dev_t with a major of 254 (uninitialized), and
we get a crash on its d_strategy being called.

The simple solution to this is to call cdevsw_add before the make_dev
is ever used. This fixes the panic which occurred upon swapping.
1999-08-24 05:58:35 +00:00
Kazutaka YOKOTA
2832e35612 Correct the mode information for the VGA mode X.
- This mode uses four planes rather than one.
- "# of bytes in a scan line" = "# of pixels in the line"/2
1999-08-24 04:26:54 +00:00
Bill Paul
0f41c63996 Change PN_RXLEN from 1518 bytes to 1536 bytes. The chip always DMAs data
in 4 byte chunks. It turns out that with the 82c169C on the Netgear
FA-310TX Rev D2, if you tell the chip you have reserved a buffer of 1518
bytes, it will actually treat it as 1516 bytes since 1518 is divisible
by four. Consequently, a packet of 1514 bytes will always end up consuming
two buffers: the last coupleof bytes will spill over into the next
descriptor. This causes the pn_rx_bug_war() routine to trip unnecessarily.

I'm not sure if the 82c169B or 82c168 chips behave the same way; I'll
have to check them. In any case, this change should work just as well
with them. Note that the FA-310TX Rev D2 also has a Broadcom PHY
instead of a Level One LXT970 PHY, however this shouldn't make any
difference as far as the driver is concerned.

This change also allows me to do a way with one rounding overation in
pn_rx-buf_war().
1999-08-24 03:19:45 +00:00
Greg Lehey
4819484d0f set_sd_state: Correct the conditions for bringing up empty or
initialized subdisks.

Tidy up some comments.

Eliminate sddownstate(); it wasn't being used any more.  Return
REQUEST_DOWN instead.

Add setstate_by_force() to implement the VINUM_SETSTATE_FORCE ioctl
for diddling individual object states.  This is a repair tool which
can also be used for panicing the system.  Use with utmost care if at
all.
1999-08-24 02:29:41 +00:00
Greg Lehey
0911b330a0 Lock stripes of striped and RAID-5 plexes before writing them. This
avoids a race condition where multiple RAID-5 subdisks are being
revived at the same time.  The locks should also prevent conflicts
with user requests on concatenated and striped plexes, but this needs
more work.

Tidy up some comments.
1999-08-24 02:28:37 +00:00
Greg Lehey
7b0c9dde22 Add keywords setstate, checkparity, rebuildparity. 1999-08-24 02:27:45 +00:00
Greg Lehey
4fe498363c Add VINUM_SETSTATE_FORCE ioctl for diddling individual object states.
This is a repair tool which can also be used for panicing the system.
Use with utmost care if at all.
1999-08-24 02:26:15 +00:00
Greg Lehey
21c3b10bbc format_config: print preferred plex correctly. 1999-08-24 02:24:47 +00:00
Greg Lehey
c4bbdf0e5a Change parameters of unlockrange to allow calling from revive_block,
which doesn't use request groups.
1999-08-24 02:23:21 +00:00
Greg Lehey
2a11f45e35 Add declaration for vinum_setstate_by_force. 1999-08-24 02:21:46 +00:00
Greg Lehey
0c5c538d29 give_sd_to_drive: If we don't have space, deallocate the subdisk.
Previously we could end up with a valid subdisk
                  entry pointing to offset -1 on the drive.
1999-08-24 02:20:30 +00:00
Greg Lehey
8d9ef32fdd vinumclose: close raw plexes and subdisks. 1999-08-24 02:18:55 +00:00
Greg Lehey
fe89164039 Add support for logging subdisk I/O.
Change parameters of unlockrange to allow calling from revive_block,
which doesn't use request groups.
1999-08-24 02:17:42 +00:00
Bruce Evans
d009ccfaf5 Cast pointers to uintptr_t instead of casting them to u_long, and/or vice
versa.  Cosmetic.
1999-08-24 00:56:50 +00:00
Bruce Evans
ff0061bb1d Cast pointers to [u]intptr_t instead of casting them to [u_]long. Don't
depend on gcc's feature of casting lvalues, especially for direct
assignment where it doesn't even simplify the syntax.  Cosmetic.
1999-08-24 00:48:19 +00:00
Bruce Evans
0921e4886f Cast pointers to uintptr_t instead of casting them to u_long. They
are still converted to u_long by assignment of the uintptr_t, and
address calculations are still done using u_long.  This is OK for
currently supported machines, but addresses should be represented
by vm_offset_t or uintptr_t in case pointers are longer than longs.

"Fixed" size of linker_path[].  MAXPATHLEN + 1 was 1 too large for
search paths with only one file path in them, but much too small
for search paths with several long file paths in them.
1999-08-24 00:38:52 +00:00
Bruce Evans
917210006a Fixed a misplaced cast to uintptr_t. Cosmetic.
Use device_get_nameunit() instead of rolling our own.
1999-08-24 00:22:10 +00:00
Bruce Evans
1195ae1843 Cast pointers to uintptr_t instead of casting them to u_long. Don't
depend on gcc's feature of casting lvalues.  Cosmetic.
1999-08-24 00:04:45 +00:00
Bruce Evans
af647dde33 Use devtoname to print dev_t's instead of casting them to u_long for
misprinting with %lx.

Cast pointers to intptr_t instead of casting them to long.  Cosmetic.
1999-08-23 23:55:03 +00:00
Bruce Evans
709db0871d `bootdev' is an ordinary u_long, so don't cast it to a pointer to print it.
gcc warns about the cast on i386's with 64-bit longs.

Print `bootdev' in all cases when we bail out because it is unreasonable.
1999-08-23 23:42:00 +00:00
Alan Cox
1971432659 Implement a version of s_lock_try that doesn't cause the next s_lock
call to panic when SL_DEBUG is set.  (SL_DEBUG is currently set
by default.)
1999-08-23 22:25:11 +00:00
Bruce Evans
feb54dc506 Oops, the previous commit was missing a new include. 1999-08-23 22:05:49 +00:00
Poul-Henning Kamp
e129454c03 Complain if this file is included. 1999-08-23 21:51:21 +00:00
Poul-Henning Kamp
845e0781ec Now that we can bind cdevsw to the individual dev_t, divorce the PERFMON
stuff from mem.c.  If PERFMON is there, it will "steal" a minor from
mem.c, but mem.c doesn't need to know about this.

Fixed type of cmd argument in perfmon_ioctl().
1999-08-23 21:34:23 +00:00
Bruce Evans
939cb7521a Initialise fsids with (user) device numbers again. Bitrot when dev_t's
were changed to pointers was obscured by casting dev_t's to longs.
fsids haven't even been comprised of longs since the Lite2 merge.
1999-08-23 21:07:13 +00:00
Nick Hibma
0b77022752 Reset the UHCI controller when the device comes back from suspend.
This should be replaced by proper support for suspend one day (global
suspend).

Submitted-by:   Christopher Masto <chris@netmonger.net>
1999-08-23 21:00:08 +00:00
Poul-Henning Kamp
9dcbe2404a Convert DEVFS hooks in (most) drivers to make_dev().
Diskslice/label code not yet handled.

Vinum, i4b, alpha, pc98 not dealt with (left to respective Maintainers)

Add the correct hook for devfs to kern_conf.c

The net result of this excercise is that a lot less files depends on DEVFS,
and devtoname() gets more sensible output in many cases.

A few drivers had minor additional cleanups performed relating to cdevsw
registration.

A few drivers don't register a cdevsw{} anymore, but only use make_dev().
1999-08-23 20:59:21 +00:00
Bruce Evans
d918320517 Use devtoname() to print dev_t's instead of casting them to long or u_long
for misprinting in %lx format.
1999-08-23 20:35:21 +00:00
Peter Wemm
80e6247e72 The nexus_attach() code works a lot better if it's actually connected to
the device methods... Also, don't fail to add eisa/isa because a previous
device failed to attach.
1999-08-23 19:23:33 +00:00
Alan Cox
a236cb64a9 Modify the macros IMASK_UNLOCK, CPL_UNLOCK, and REL_FAST_INTR_LOCK
to perform the s_unlock inline.
1999-08-23 19:14:18 +00:00
Alan Cox
e394748e8e Correct the inconsistent formatting in struct vm_map.
Addendum to rev 1.47: submitted by dillon.
1999-08-23 18:16:05 +00:00
Alan Cox
b7d742995e struct vm_map:
The lock structure cannot be the first element of the vm_map
	because this can result in livelock between two or more system
	processes trying to kmem_alloc_wait.
1999-08-23 18:08:34 +00:00
KATO Takenori
614926e47a - Make binary size smaller.
- Fix typo in TDK/LANX stuff.

Submitted by:	chi@bd.mbn.or.jp (Chiharu Shibata)
1999-08-23 13:54:35 +00:00
Martin Cracauer
84300d6265 Fix a mistake in my last SA_SIGINFO commit. Processes could block
SIGKILL and SIGSTOP.

PR:		kern/13293
Submitted by:	dwmalone@maths.tcd.ie
Obtained from:	PR had correct fix
1999-08-23 13:53:25 +00:00
KATO Takenori
770e974a43 Updated to new keyboard driver.
Submitted by:	yokota & nyan
1999-08-23 13:50:08 +00:00
KATO Takenori
5ee2e1ddb8 Merge from sys/dev/syscons/syscons.c revision 1.319.
Submitted by:	Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>
1999-08-23 13:45:28 +00:00
KATO Takenori
820c710d4b Merge from sys/i386/isa/npx.c revision 1.76. 1999-08-23 13:42:22 +00:00
KATO Takenori
2b0cfe0c2e Merge from sys/i386/i386/userconfig.c revision 1.153. 1999-08-23 13:41:00 +00:00
KATO Takenori
13b4772498 Merge from sys/i386/conf/options.i386 revision .1.20. 1999-08-23 13:39:32 +00:00
Peter Wemm
0c3c5956d1 Disable some apparently stray debug printfs:
ahc0: <Adaptec 274X SCSI host adapter> at 0x1c00-0x1cff, irq 11 (edge)
ahc0: on eisa0 slot 1
ahc0: aic7770 >= Rev E, SBLKCTL = 0x8
SSTAT0 = 0x0
SFUNCT = 0x0
Twin Channel, A SCSI Id=7, B SCSI Id=7, primary A, 4/255 SCBs

Not objected to by:	gibbs
1999-08-23 12:08:45 +00:00
Poul-Henning Kamp
b3ddbd9504 Fix the breakage caused by hanging softc off dev_t. This is only
a workaround.
1999-08-23 09:35:12 +00:00
Peter Wemm
a5a9efa92b The previous fix didn't do anything if you didn't have pnp. The ICU
macros are only called in the !APIC_IO case, include icu.h there.
1999-08-22 23:49:00 +00:00
Brian Feldman
1574a39bd2 Finish unbreaking autoconf.c includes (for non-SMP.) 1999-08-22 23:44:33 +00:00
Brian Somers
7765ab6476 Aallow ppp to work with Nortel Networks Extranet Switch
product and Windows NT tunneling.

Submitted by: Chain Lee <chain@nortelnetworks.com>
1999-08-22 23:32:01 +00:00
Andrew Gallatin
63b584e7b8 Fix a small typo (missing comma) to make the alpha kernel build again 1999-08-22 21:47:32 +00:00
Peter Wemm
2237f6ec54 Oops, that wasn't so clever after all. struct isa_device is still a
prerequisite for this old pnp.h.
1999-08-22 21:44:35 +00:00
Peter Wemm
be5890825d Zap a heap of unused cruft now. We don't need the ISA/EISA/PCI hooks
here any more as they are self identifying.  Only PNP remains but that
will be replaced any day now.
Also reword a comment that had been XXX'ed to death to make it clear[er]
why we don't enable interrupts before probing.
PCIBIOS interrupt routing controls may make this possible to fix one day.
1999-08-22 19:59:29 +00:00
Peter Wemm
ca29e71c56 Take advantage of the apm/npx code and let them identify themselves rather
than having explicit hooks here.
Treat the eisa/isa attach a little differently so that we defer the
decision about to attach eisa/isa to the motherboard directly only if
the PCI probe (if it exists) fails to turn up a PCI->EISA/ISA bridge.
This restores the original device geometry where ISA and/or EISA attach
to their bridge rather than bypassing and going to the root.
1999-08-22 19:56:55 +00:00
Peter Wemm
f3b63bd388 Make the identify routine add itself with priority 100 to make sure it
goes after the npx/apm devices and any other motherboard devices that
may get added down the track.
1999-08-22 19:54:11 +00:00
Peter Wemm
da4113b31f Add an identify method to allow npx to arrange itself to be attached to
the nexus without explicit code in the nexus to do so.
1999-08-22 19:52:51 +00:00
Peter Wemm
7fa76d3a80 Add an identify method to allow apm to attach itself to the nexus
without hooks in there.
1999-08-22 19:51:33 +00:00
Peter Wemm
cd8fd32d0d make pnp.h self contained, for what good it'll do since it's days are
numbered (new pnp-aware isa code in the pipeline).
1999-08-22 19:46:05 +00:00
Tim Vanderhoek
a395af9036 Typo: 102 => 192 (PR: docs/13310 - Maxim Sobolev <sobomax@altavista.net>) 1999-08-22 19:23:33 +00:00
Peter Wemm
2b1d38c5cc Slightly sanitize the isa/eisa bridge detection. The pci->eisa bridge
logic (I use the term loosely) was a bit whacky.
1999-08-22 19:10:39 +00:00
Mike Smith
b85ad36084 Catch an at_shutdown I didn't think of in the last batch.
Note to self: port to AS2100 so as to have a test system.

Submitted by:	jkh
1999-08-22 18:50:43 +00:00
John Polstra
af255dc5f2 Go back to using microtime() to get the timestamps for {f,l,}utimes(path,
NULL) for now.  Bruce says I jumped the gun with my change in
revision 1.131, or maybe it should use nanotime(), or maybe it
shouldn't be decided in the VFS layer at all.  I'm leaving it with
the old behavior until the Trans-Pacific Internet Vulcan Mind Meld
yields fuller understanding.
1999-08-22 16:50:30 +00:00
Nick Hibma
4b012a7cb1 1) Add HEADER section. Similar to CODE.
2) deindent the two sections (CODE and HEADER), based on the indent found
   on the first line of the section; to make the output more readable.
1999-08-22 16:21:29 +00:00
Brian Feldman
f26bc0d7c0 Add a missing underscore that made EVENTHANDLER_FAST_INVOKE broken. 1999-08-22 15:21:52 +00:00
Mitsuru IWASAKI
49d3a95692 Fix `key release event prevent suspend' problem. We don't need
`sleep 1; zzz' trick now.

- APM BIOS Call for suspend/standby now should be issued with delay.
- Delay for suspend/standby can be adjusted by using sysctl(8) interface
  (eg. sysctl -w machdep.apm_suspend_delay=3).
1999-08-22 14:48:00 +00:00
Kazutaka YOKOTA
800da3b22a - Remove cdevsw entry points in individual keyboard drivers;
instead, use generic entry points for all drivers.
- Eliminate bogus makedev().
- Eliminate softc in the lower drivers, as it is no longer necessary.

Submitted (95%) by: phk
1999-08-22 09:52:33 +00:00
Kazutaka YOKOTA
7d27f93ac4 Improve the detection code for GlidePoint. This is still a kludge,
but better than before...

PR: kern/13215
1999-08-22 06:11:52 +00:00
Alan Cox
e7dcbbe297 Make "s_unlock" an inline function. (Inlining this function takes
less space than calling it.  A callable version still exists for
use by some assembly code.)
1999-08-22 05:37:18 +00:00
John Polstra
4f2a0d4f96 Use the new vfs_timestamp() function to create the timestamps used
by utimes(path, NULL).  This gives them the same precision as the
timestamps produced by write operations.  Do likewise for lutimes()
and futimes().

Suggested by bde.
1999-08-22 01:46:57 +00:00
Bill Paul
a30ecd6149 Crap, I knew I was going to forget something: add missing miibus method
description file which slipped through the cracks.

Pointed out by: Doug <Doug@gorean.org>
1999-08-22 00:56:39 +00:00
John Polstra
a2801b7731 Support full-precision file timestamps. Until now, only the seconds
have been maintained, and that is still the default.  A new sysctl
variable "vfs.timestamp_precision" can be used to enable higher
levels of precision:

      0 = seconds only; nanoseconds zeroed (default).
      1 = seconds and nanoseconds, accurate within 1/HZ.
      2 = seconds and nanoseconds, truncated to microseconds.
    >=3 = seconds and nanoseconds, maximum precision.

Level 1 uses getnanotime(), which is fast but can be wrong by up
to 1/HZ.  Level 2 uses microtime().  It might be desirable for
consistency with utimes() and friends, which take timeval structures
rather than timespecs.  Level 3 uses nanotime() for the higest
precision.

I benchmarked levels 0, 1, and 3 by copying a 550 MB tree with
"cpio -pdu".  There was almost negligible difference in the system
times -- much less than 1%, and less than the variation among
multiple runs at the same level.  Bruce Evans dreamed up a torture
test involving 1-byte reads with intervening fstat() calls, but
the cpio test seems more realistic to me.

This feature is currently implemented only for the UFS (FFS and
MFS) filesystems.  But I think it should be easy to support it in
the others as well.

An earlier version of this was reviewed by Bruce.  He's not to
blame for any breakage I've introduced since then.

Reviewed by:	bde (an earlier version of the code)
1999-08-22 00:15:16 +00:00