Commit Graph

41374 Commits

Author SHA1 Message Date
Matthew Dillon
2a31267e43 This is a major fixup of unionfs. At least 30 serious bugs have been
fixed (many due to changing semantics in other parts of the kernel and not
    the original author's fault), including one critical one: unionfs could
    cause UFS corruption in the fronting store due to calling VOP_OPEN for
    writing without turning on vmio for the UFS vnode.

    Most of the bugs were related to semantics changes in VOP calls, lock
    ordering problems (causing deadlocks), improper handling of a read-only
    backing store (such as an NFS mount), improper referencing and locking
    of vnodes, not using real struct locks for vnode locking, not using
    recursive locks when accessing the fronting store, and things like that.

    New functionality has been added:  unionfs now has mmap() support, but
    only partially tested, and rename has been enhanced considerably.

    There are still some things that unionfs cannot do.   You cannot
    rename a directory without confusing unionfs, and there are issues
    with softlinks, hardlinks, and special files.  unionfs mostly doesn't
    understand them (and never did).

    There are probably still panic situations, but hopefully no where near
    as many as before this commit.

    The unionfs in this commit has been tested overlayed on /usr/src
    (backing /usr/src being a read-only NFS mount, fronting /usr/src being
    a local filesystem).  kernel builds have been tested, buildworld is
    undergoing testing.  More testing is necessary.
1999-09-26 20:52:41 +00:00
Peter Wemm
bcf7336218 Try and catch a make -j problem in 'make depend'.
Tested by:	Dirk-Willem van Gulik <dirkx@va-179.skylink.it>
1999-09-26 19:11:04 +00:00
Peter Wemm
37464758e3 GC bdbtofsb() 1999-09-26 19:05:39 +00:00
Peter Wemm
b5afb7441c bdbtofsb() appears to have been unused for quite some time, if ever.
Appears to be a 4.4Lite relic.
1999-09-26 18:56:43 +00:00
Nick Hibma
879eff8ee6 Change explicit use of the queue fields into use of the definitions
in queue.h.

Change the name of two variables for consistency.

Reviewed-By:	peter
1999-09-26 18:48:53 +00:00
Peter Wemm
18e2e348fb Minor tidy up of PPP_FILTER and NBPF stuff. Don't generate bpf.h in the
module and don't #include "bpf.h".
1999-09-26 18:44:29 +00:00
Bill Paul
c63d3a6678 Update the Starfire driver comments and man page to include the URL of
the AIC-6915 Programmer's Manual which I finally found online at Adaptec's
site.
1999-09-26 18:35:30 +00:00
Eivind Eklund
3176a7fe12 Update this to be able to output ASSERT_VOP_(UN)LOCKED() based on the
lock specifications in kern/vnode_if.src.  At present, this do not
distinguish between exclusive and shared locks, and the kernel is so full
of bugs in this area that running with auto-generation of assertions
enabled makes DEBUG_VFS_LOCKS totally useless for anybody that has used it
for anything prior to outputting automated assertions.  Due to this, I made
vnode_if.sh only output locking assertions if you have the environment
variable DEBUG_ALL_VFS_LOCKS set to "YES".  In order to actually use the
assertions, you need to also add "options DEBUG_VFS_LOCKS" to your kernel
config file.

Urged to commit by:	phk
1999-09-26 18:31:51 +00:00
Eivind Eklund
3e148c4099 Move the declaration of panic() from sys/systm.h to sys/param.h.
Rationale: Wider access, so we can add assertions to header files.
panicstr is still in sys/systm.h

Suggested by:   phk
Discussed with: peter
1999-09-26 18:19:49 +00:00
Eivind Eklund
5c69e12c0e Move the vop_islocked declaration to the top, in preparation for committing
code to auto-generate assertions from the lockspecs
1999-09-26 18:10:59 +00:00
Matthew N. Dodd
20530663b3 device_get_ivars() called twice. Remove second call and assignment.
Noticed by: Peter
1999-09-26 18:05:37 +00:00
Matthew N. Dodd
58e4bcc53a Duplicated '(' removed.
Noticed by: Mark Murray <mark@grondar.za>
1999-09-26 18:04:26 +00:00
Matthew N. Dodd
d8accb14bd mca_add_{iospace,mspace}() no longer takes a 4th arg. 1999-09-26 07:16:01 +00:00
Matthew N. Dodd
b438239c0a Rip out the nastiness I cribbed from the EISA bus code and actually
implement the resource management code correctly, using approved
interfaces.

While I'm here, clean up a few things.
1999-09-26 07:02:05 +00:00
Matthew N. Dodd
39b547ce4d - Split out the ISA and PCCARD specific code.
- Split out the prototypes, externs and struct decls from if_epreg.h into
  if_epvar.h.

- Add support for MCA based Etherlink III (3c529) devices.

None of this code is used right now; the old if_ep driver is still
in place and used.

I will eventually get around to converting if_ep_isa.c to newbus once I've
had a talk with Peter and DFR about the DEVICE_IDENTIFY() method.

I have tested this code on my PS/2.  It works.  I would like EISA and ISA
testers since my example hardware hasn't arrived yet.

Add:

dev/ep/if_ep.c          optional ep
dev/ep/if_ep_isa.c      optional ep isa
dev/ep/if_ep_eisa.c     optional ep eisa
dev/ep/if_ep_mca.c      optional ep mca
dev/ep/if_ep_pccard.c   optional ep card

to sys/conf/files

Remove:

i386/eisa/3c5x9.c             optional        ep
i386/isa/if_ep.c              optional        ep

from sys/i386/conf/files.i386

PCCARD testers wanted!

I will switch off and cvs rm the old driver in favor of this copy once
I've had positive feedback or have the hardware to verify that it works.
1999-09-26 06:42:36 +00:00
Yoshihiro Takahashi
1497e88aa9 Merge from sys/i386/isa/spkr.c revision 1.37 and 1.39. 1999-09-26 03:24:37 +00:00
Yoshihiro Takahashi
29a7ea851d Merge from sys/i386/isa/pcaudio.c revision 1.50. 1999-09-26 03:22:34 +00:00
Yoshihiro Takahashi
b22d0128a4 Merge from sys/i386/isa/mse.c revision 1.44. 1999-09-26 03:21:38 +00:00
Nik Clayton
7e6fca8523 Mention /dev/vn0b and /dev/vntab. ascii -> ASCII transform had
already happened in an earlier commit.

PR:             docs/13645
Submitted by:   Stephen Roznowski <sjr@home.com>
1999-09-26 00:05:45 +00:00
Chris Costello
0df0b5481f Change .Fn to .Xr on a couple of lines where abort(3) is referenced. 1999-09-25 22:42:12 +00:00
Chris Costello
eb24696b07 Capitalization errors:
* Gcc -> gcc
* Gnu -> GNU
1999-09-25 21:47:27 +00:00
Chris Costello
94b1839d20 Document the make_dev(9) and remove_dev(9) facilities.
remove_dev(9) is created as a link to the existing make_dev(9) page.

Reviewed by:	phk
1999-09-25 20:12:01 +00:00
Poul-Henning Kamp
90e928d621 For some reason patch didn't remove these three lines first time around. 1999-09-25 18:57:27 +00:00
Poul-Henning Kamp
9ab8e01991 Remove a warning check which was too general. 1999-09-25 18:52:03 +00:00
Matt Jacob
f327fe4c57 Fix from Tor so that if we enter the debugger in the tristate going to
SMP (other CPUs stopped but SMP mode not really started).

Obtained from:Tor.Egge@fast.no
1999-09-25 18:36:31 +00:00
John Baldwin
b232a7db96 Update the dictionary to contain all of the words in
/usr/share/dict/{eign,web2,propernames}.  Most of the additions are
proper names, but the word 'all' is a notable exception.

PR:		misc/12285
Reviewed by:	bde
1999-09-25 18:35:42 +00:00
Matt Jacob
7c4bd33778 Fix from Tor so that if we enter the debugger in the tristate going to
SMP (other CPUs stopped but SMP mode not really started).

Obtained from:	Tor.Egge@fast.no
1999-09-25 18:35:38 +00:00
Poul-Henning Kamp
d6a0e38a1b Remove five now unused fields from struct cdevsw. They should never
have been there in the first place.  A GENERIC kernel shrinks almost 1k.

Add a slightly different safetybelt under nostop for tty drivers.

Add some missing FreeBSD tags
1999-09-25 18:24:47 +00:00
Bill Paul
784733e9ec Change contigmalloc() lower memory bound from 1MB to 0 to improve
chances of allocations succeeding on systems with small amounts of
RAM.

Pointed out by: bde
1999-09-25 17:29:02 +00:00
Matthew Dillon
87b0140cdf mdoc style cleanup
Submitted by:	  Mike Pritchard <mpp@FreeBSD.ORG>
1999-09-25 17:21:21 +00:00
Matthew Dillon
e55373e21c mdoc cleanup
Submitted by:	  Mike Pritchard <mpp@FreeBSD.ORG>
1999-09-25 17:11:54 +00:00
Poul-Henning Kamp
ae8e1d08d7 This patch clears the way for removing a number of tty related
fields in struct cdevsw:

        d_stop          moved to struct tty.
        d_reset         already unused.
        d_devtotty      linkage now provided by dev_t->si_tty.

These fields will be removed from struct cdevsw together with
d_params and d_maxio Real Soon Now.

The changes in this patch consist of:

        initialize dev->si_tty in *_open()
        initialize tty->t_stop
        remove devtotty functions
        rename ttpoll to ttypoll
        a few adjustments to these changes in the generic code
        a bump of __FreeBSD_version
        add a couple of FreeBSD tags
1999-09-25 16:21:39 +00:00
Chris Costello
2baad6b54c Remove a useless new line. 1999-09-25 16:11:09 +00:00
Chris Costello
2da64d5dd7 Document the devtoname(9) kernel interface. 1999-09-25 15:58:33 +00:00
Poul-Henning Kamp
231dfd3e63 Add missing 't' in printf message. 1999-09-25 14:43:40 +00:00
Yoshihiro Takahashi
2d4084ce79 Remove unnecessary file. This file is obsolete by newbus integration. 1999-09-25 14:17:05 +00:00
Poul-Henning Kamp
2fe5bd8bb8 Fix a hole in jail(2).
Noticed by:	Alexander Bezroutchko <abb@zenon.net>
1999-09-25 14:14:21 +00:00
Poul-Henning Kamp
46783fb897 Remove NBPF conditionality of bpf calls in most of our network drivers.
This means that we will not have to have a bpf and a non-bpf version
of our driver modules.

This does not open any security hole, because the bpf core isn't loadable

The drivers left unchanged are the "cross platform" drivers where the respective
maintainers are urged to DTRT, whatever that may be.

Add a couple of missing FreeBSD tags.
1999-09-25 12:06:01 +00:00
Poul-Henning Kamp
40bc58df9a Oops! I enabled SOFTUPDATES by accident.
Pointed out by:	eivind
1999-09-25 11:28:18 +00:00
Mark Murray
535989d7d0 Rename a macro; it gets set at "make world" time, and I had a local
mod that masked this. D'uh.
1999-09-25 06:59:10 +00:00
Yoshihiro Takahashi
c72561ae94 Merge from sys/i386/conf/files.i386 revision 1.270 and 1.271. 1999-09-25 05:39:19 +00:00
Bill Paul
e51e55880d Call sk_start() at the end of sk_intr() if there's packets in the
interface send queue that need to be processed.
1999-09-25 04:50:27 +00:00
Bill Fumerola
b41d4634e2 Remove two more unnecessary function declarations/prototypes. 1999-09-25 03:22:52 +00:00
Bill Fumerola
c3922760ba Include the proper headers, remove the unnecessary function declarations. 1999-09-25 03:20:29 +00:00
Bill Fumerola
db86a11e69 o Remove all of the objformat logic, it's never coming back.
o Simplify getpackagesite(), it comes back in full glory when we branch
again. It's still needed however to get the i386 or alpha directory.
1999-09-25 03:02:08 +00:00
Bill Fumerola
daf41e696a Remove duplicate declarations for two internal functions.
Remove delcaration for getenv(), we already get it from stdlib.h
1999-09-25 02:23:19 +00:00
Bill Fumerola
cefdc4ef10 Stuff a variable declaration inside a #if block that is only used for that
#if.
1999-09-25 02:11:30 +00:00
Bill Fumerola
e9eda3a1e9 Remove declaration of getenv(), we get that from stdlib.h already. 1999-09-25 02:10:38 +00:00
Brian Somers
3c9497b9e0 Typo
Submitted by:	Alex Nash <nash@mcs.net>
1999-09-24 23:57:22 +00:00
Alexey Zelkin
41abbceb8f Various style and visual changes.
VESA_132x30 is not available mode
SC_PIXLE_MODE -> SC_PIXEL_MODE
1999-09-24 20:39:24 +00:00