Commit Graph

39344 Commits

Author SHA1 Message Date
phk
cacc73aa18 Now a dev_t is a pointer to struct specinfo which is shared by all specdev
vnodes referencing this device.

Details:
        cdevsw->d_parms has been removed, the specinfo is available
        now (== dev_t) and the driver should modify it directly
        when applicable, and the only driver doing so, does so:
        vn.c.  I am not sure the logic in checking for "<" was right
        before, and it looks even less so now.

        An intial pool of 50 struct specinfo are depleted during
        early boot, after that malloc had better work.  It is
        likely that fewer than 50 would do.

        Hashing is done from udev_t to dev_t with a prime number
        remainder hash, experiments show no better hash available
        for decent cost (MD5 is only marginally better)  The prime
        number used should not be close to a power of two, we use
        83 for now.

        Add new checkalias2() to get around the loss of info from
        dev2udev() in bdevvp();

        The aliased vnodes are hung on a list straight of the dev_t,
        and speclisth[SPECSZ] is unused.  The sharing of struct
        specinfo means that the v_specnext moves into the vnode
        which grows by 4 bytes.

        Don't use a VBLK dev_t which doesn't make sense in MFS, now
        we hang a dummy cdevsw on B/Cmaj 253 so that things look sane.

	Storage overhead from all of this is O(50k).

        Bump __FreeBSD_version to 400009

The next step will add the stuff needed so device-drivers can start to
hang things from struct specinfo
1999-07-20 09:47:55 +00:00
phk
cf4a7fab74 Also check against chardevs when looking for root. 1999-07-20 08:50:54 +00:00
jkh
9450c7816f The matcd driver is acting strange (returning a successful open even
when it fails).  Disable it in sysinstall for now.
1999-07-20 08:47:35 +00:00
jkh
ffd076b12a Fix a bad dhcp keyword; it's host-name not server-name. 1999-07-20 08:08:24 +00:00
jkh
1a2069610e Add slovakian ftp mirror.
Submitted by:		"Tomas TPS Ulej" <tps@ti.sk>
1999-07-20 07:50:26 +00:00
jkh
04329fce07 More Alpha ifdefage. 1999-07-20 07:39:22 +00:00
phk
5b72ec0550 use vp->v_rdev;
OK'ed by:	grog
1999-07-20 07:29:54 +00:00
phk
99ba1a1d76 add debug.sizeof.specinfo 1999-07-20 07:19:32 +00:00
phk
4da181a26c Don't access the device with vp->v_specinfo->si_rdev, use vp->v_rdev. 1999-07-20 07:18:17 +00:00
msmith
11c857f184 Update of the i686 MTRR/memory range support.
- Support for setting memory range attributes on SMP systems using the
   new SMP rendezvous function
 - Don't print the confusing default memory type message.
 - Allow legal overlapping range types.
 - Turn interrupts back on after setting MTRRs in UP mode (whoops)
 - Don't waste time calling invltlb() after wbinvd(); it's not
   SMP-compatible (interrupts are off) and unncessary because
   wbinvd already flushes the TLB.

This code is now essentially feature-complete.
1999-07-20 06:58:51 +00:00
msmith
84c939ef11 Implement an all-CPU shootdown-style rendezvous facility. This allows
the caller to specify a function to be guarded between an entry and exit
barrier, as well as pre- and post-barrier functions.

The primary use for this function is synchronised update of per-cpu private
data.  The implementation is almost (but not quite) MI; with a better
mechanism for masking per-CPU interrupts it could probably be hoisted.

Reviewed by:	peter (partially)
1999-07-20 06:52:35 +00:00
alc
905bcc1184 An SMP-specific change: Eliminate an unnecessary lock acquire and release
in setdelayed.

Submitted by:	luoqi and bde
1999-07-20 06:09:53 +00:00
alc
db0a7d40ad Convert a "page not busy" warning to an assertion.
Submitted by:	dillon@backplane.com
1999-07-20 05:46:56 +00:00
jkh
802275f6c6 Get bpf0 onto the MFS image. 1999-07-20 05:00:00 +00:00
msmith
4ec71ddc19 Make memcontrol's internal help actually work. No substitute for a real
manpage, but at least now you can get syntax help without resorting
to reading the source.
1999-07-20 04:33:14 +00:00
rnordier
c1740a7c66 Reintroduce LBA (cyl > 1023) support in the bootblocks, enabled by
means of a build option.
1999-07-20 01:19:23 +00:00
peter
c5c37d67da Fix a page size vs. KB mixup. The extra buffers allocated at a reduced
rate is meant to kick in at 64MB, not 256MB.

Reviewed by:	Matthew Dillon <dillon@backplane.com>
1999-07-19 23:36:30 +00:00
nik
cd078e5427 Document the "skey" command in telnet(1).
PR:             docs/12360
Submitted by:   kjm@rins.ryukoku.ac.jp (KOJIMA Hajime)
1999-07-19 22:24:32 +00:00
luoqi
2c32e3b9e7 Check if an fs is mounted before checking if it is mounted read-only.
Pointed out by:		Mike Smith	<msmith@freebsd.org>
1999-07-19 21:04:25 +00:00
rnordier
33ee2a3294 Activate kgzip. 1999-07-19 20:22:44 +00:00
rnordier
c46ca64645 Activate kgzldr. 1999-07-19 20:16:34 +00:00
rnordier
83fed33cb1 Use M4FLAGS for m4. 1999-07-19 20:10:17 +00:00
markm
7703f6a267 Fix a problem where commands in backticks `` wont get executed in taint
mode because of an insecure path.

Reported by:	George Cox
1999-07-19 18:17:54 +00:00
rnordier
2d7803cd6b This commit was generated by cvs2svn to compensate for changes in r48907,
which included commits to RCS files with non-trunk default branches.
1999-07-19 18:07:44 +00:00
rnordier
f5a2fbe418 kgzldr is a kzipboot replacement for use with kgzip(8).
Development sponsored by Global Technology Associates, Inc.

Reviewed/tested by: abial
1999-07-19 18:07:44 +00:00
rnordier
95d107b746 This commit was generated by cvs2svn to compensate for changes in r48905,
which included commits to RCS files with non-trunk default branches.
1999-07-19 18:00:18 +00:00
rnordier
21ebb70093 kgzip is a kzip(8) replacement able to compress and link bootable
32-bit binaries in both ELF and a.out format.

Development sponsored by Global Technology Associates, Inc.

Reviewed/tested by: abial
1999-07-19 18:00:18 +00:00
green
bf4dbef489 Various cleanups. 1999-07-19 17:37:42 +00:00
hosokawa
1712f41066 Sync with GENERIC (place of xe0 driver) 1999-07-19 15:18:21 +00:00
hosokawa
b0c4036252 sync with boot_crunch.conf.generic
(added arp, sed, and test)
1999-07-19 12:23:33 +00:00
jkh
58ab0cd8f9 Catch an XFree86 3.3.4 update I missed. 1999-07-19 11:58:01 +00:00
jkh
ef688c3387 Update for XFree86 3.3.4 1999-07-19 11:49:22 +00:00
jkh
de1add3d31 Wait for dhclient in a far saner fashion.
Submitted by:	obrien
1999-07-19 11:00:56 +00:00
sheldonh
3f0530abee Fix handling of the cd command inside evaluations. It was changing PWD,
which it should not do.

PR:	12578
Reported by:	Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
Submitted by:	Niall Smart <niall@pobox.com>
1999-07-19 11:00:33 +00:00
jkh
0cabe70429 Add /bin/test to the boot floppy. Guess we'll have to sync this up
with boot_crunch.conf.pccard at some point?
1999-07-19 10:53:54 +00:00
jkh
2f36b650f1 cleanup pass over new stuff. 1999-07-19 10:18:52 +00:00
jkh
362c174f0e Another batch of fixes for dhcp support in sysinstall, now dragging
in some code from C. Stone to parse the lease information.  This is still
a WIP and this commit is largely intended to allow others to sync up; the
dhclient code still only works when doing dhcp configuration post-install
and requires a bit more work on the boot floppy before it will truly
work in the minimal bootstrapping role.
1999-07-19 10:06:18 +00:00
phk
f3c07181e3 [click] Now all dev_t's in the kernel have their char device major.
Only know casualy of this is swapinfo/pstat which should be fixes
the right way:  Store the actual pathname in the kernel like mount
does.  [Volounteers sought for this task]

The road map from here is roughly:  expand struct specinfo into struct
based dev_t.  Add dev_t registration facilities for device drivers and
start to use them.
1999-07-19 09:37:59 +00:00
phk
27ccb91085 Add sysctl tree debug.sizeof to tell us how big things are. First two
entries are struct proc and struct vnode.
1999-07-19 09:13:12 +00:00
jkh
65f03632d2 Fix type of host-name option. Partial fix for referenced PR.
Submitted by:	John Baldwin <jobaldwi@vt.edu>
PR:		12205
1999-07-19 01:58:46 +00:00
bde
a9cec3b79d Updated acquire_timer2()'s state machine to work when the i8254 is
being used for timecounting.  Fixed a race or two in it.  Undisabled
it.

PR:		10455
1999-07-18 18:32:42 +00:00
bde
e871bb8dd7 Don't let the machdep.tsc_freq sysctl proceed if the TSC is present
but broken, since tsc_timecounter is not initialised in that case,
and updating an uninitialised timecounter is fatal.

Fixed style bugs in the machdep.i8254_freq and machdep.tsc_freq
sysctls.

Reviewed by:	phk
1999-07-18 15:19:29 +00:00
bde
9ea61245a8 Added a sysctl "kern.timecounter.hardware" for selecting the hardware
used for timecounting.  The possible values are the names of the
physically present harware timecounters ("i8254" and "TSC" on i386's).

Fixed some nearby bitrot in comments in <sys/time.h>.

Reviewed by:	phk
1999-07-18 15:07:20 +00:00
jmb
a686f581bc fix comment re: RST received in TIME_WAIT to match the code. 1999-07-18 14:42:48 +00:00
phk
251f187eba Use the vn_todev() function, rather than VOP_GETATTR 1999-07-18 14:31:01 +00:00
phk
63c9fe9157 Introduce the vn_todev(struct vnode*) function, which returns the dev_t
corresponding to a VBLK or VCHR node, or NODEV.
1999-07-18 14:30:37 +00:00
peter
c8095f053a Reset SA_NOCLDWAIT on exec().
PR:		kern/12669
Submitted by:	Doug Ambrisko <ambrisko@whistle.com>
1999-07-18 13:40:11 +00:00
phk
c037f8cfd9 Make devname(3) return something more intelligent than NULL if it doesn't
find anything in the database.
1999-07-18 10:19:48 +00:00
jkh
d51b32f103 Some additional optimizations for using DHCP. 1999-07-18 10:18:06 +00:00
jkh
47d2323c99 Use a less annoying default hostname. 1999-07-18 09:58:01 +00:00