Commit graph

108721 commits

Author SHA1 Message Date
Robert Watson 857a600580 Add an annotation to the comment for sysv_ipc.c to indicate that the
MAC Framework doesn't require checks in ipcperm() because checks
relating to System V IPC will be performed in individual IPC
implementations.
2004-10-22 12:12:40 +00:00
Robert Watson 397b3428eb In osethostname(), don't need to call suser() directly as
userland_sysctl() will perform all necessary privilege checks for
the caller.
2004-10-22 12:10:50 +00:00
Robert Watson 3459e1d2e9 Expand comments on various sections of the MAC Framework Policy API,
as well as document the properties of the mac_policy_conf structure.
Warn about the ABI risks in changing the structure without careful
consideration.

Obtained from:	TrustedBSD Project
Sponsored by:	SPAWAR
2004-10-22 11:29:30 +00:00
Robert Watson b2e3811c5f Replace direct reference to kdb_enter() with a DEBUGGER() macro that
will call printf() if KDB isn't compiled into the kernel.

Obtained from:	TrustedBSD Project
Sponsored by:	SPAWAR
2004-10-22 11:24:50 +00:00
Robert Watson 46e23372a0 Minor white space synchronization and line wrapping. 2004-10-22 11:15:47 +00:00
Robert Watson 39cfa59162 In the MAC label zone destructor, assert that the label is only
destroyed in an initialized state.
2004-10-22 11:08:52 +00:00
Robert Watson 17eba37380 Remove extern declaration of mac_enforce_sysv, as it's not present in
the CVS version of the MAC Framework.
2004-10-22 11:07:18 +00:00
Robert Watson b0e86f6ac2 When MAC is enabled, warn if getnewvnode() is asked to produce a vnode
without a mountpoint.  In this scenario, there's no useful source for
a label on the vnode, since we can't query the mountpoint for the
labeling strategy or default label.
2004-10-22 11:04:58 +00:00
Poul-Henning Kamp ff7c5a4880 Alas, poor SPECFS! -- I knew him, Horatio; A filesystem of infinite
jest, of most excellent fancy: he hath taught me lessons a thousand
times; and now, how abhorred in my imagination it is! my gorge rises
at it.  Here were those hacks that I have curs'd I know not how
oft.  Where be your kludges now? your workarounds? your layering
violations, that were wont to set the table on a roar?

Move the skeleton of specfs into devfs where it now belongs and
bury the rest.
2004-10-22 09:59:37 +00:00
Marc Fonvieille 0d0e1f8897 Add NO_BLUETOOTH and NO_AUTHPF variables. [1]
While I'm there use lowercase "yes" for consistency.

Approved by:	phk [1]
2004-10-22 08:49:54 +00:00
Poul-Henning Kamp 494eb176e7 Add b_bufobj to struct buf which eventually will eliminate the need for b_vp.
Initialize b_bufobj for all buffers.

Make incore() and gbincore() take a bufobj instead of a vnode.

Make inmem() local to vfs_bio.c

Change a lot of VI_[UN]LOCK(bp->b_vp) to BO_[UN]LOCK(bp->b_bufobj)
also VI_MTX() to BO_MTX(),

Make buf_vlist_add() take a bufobj instead of a vnode.

Eliminate other uses of bp->b_vp where bp->b_bufobj will do.

Various minor polishing: remove "register", turn panic into KASSERT,
use new function declarations, TAILQ_FOREACH_SAFE() etc.
2004-10-22 08:47:20 +00:00
Marc Fonvieille c615d4bda1 Sort NO* variables.
Approved by:	phk
2004-10-22 08:45:34 +00:00
Poul-Henning Kamp c2ec6cc809 Use bioq_takefirst() 2004-10-22 08:12:49 +00:00
SUZUKI Shinsuke 72286081d0 removed compilation warning
PR:	bin/71624
2004-10-22 07:31:12 +00:00
Scott Long 0f3a007844 Correct and clarify some very incorrect text. 2004-10-22 05:21:20 +00:00
Marcel Moolenaar 2d9d87630b Seperate ia64 from the pack. The disc1 is overflowing to such extend
that most packages can not be included. It's much easier to list those
that we do want on disc1 for ia64. We only need to list 11 of them.

Apply proper indentation for better readability.
2004-10-22 04:49:09 +00:00
Scott Long ffde6d1fe4 Document the 21610SA card. 2004-10-22 04:17:28 +00:00
Andrey A. Chernov af58011ba4 Merge files peter takes off the vendor branch 2004-10-21 23:45:57 +00:00
Peter Wemm a4a4e5a535 Fix some more files that got butchered to appear to be back on the
vendor branch again.  (These will need a readline import merge too)
2004-10-21 20:10:14 +00:00
Peter Wemm 3dc55b1483 Force these files back off the vendor branch. They should NEVER have been
put back on there in the first place. :-(

Note that complete.c will need a readline 5.0 merge.
2004-10-21 20:02:02 +00:00
Scott Long b1e56e58c5 Add support for the 21610SA 16-channel SATA card. Thanks to Adaptec for
providing hardware for testing.
2004-10-21 19:14:32 +00:00
Robert Watson 49dbb61dfc Add KTR_GEOM, which allows tracing of basic GEOM I/O events occuring
in the g_up and g_down threads.  Each time a bio is propelled up and
down the stack, an event is generating showing the provider, offset,
and length, as well as thread wakeup and work status information.
2004-10-21 18:35:24 +00:00
Poul-Henning Kamp a76d8f4ec9 Move the VI_BWAIT flag into no bo_flag element of bufobj and call it BO_WWAIT
Add bufobj_wref(), bufobj_wdrop() and bufobj_wwait() to handle the write
count on a bufobj.  Bufobj_wdrop() replaces vwakeup().

Use these functions all relevant places except in ffs_softdep.c where
the use if interlocked_sleep() makes this impossible.

Rename b_vnbufs to b_bobufs now that we touch all the relevant files anyway.
2004-10-21 15:53:54 +00:00
Poul-Henning Kamp 1bca607b9f Add BO_* macros parallel to VI_* macros for manipulating the bo_mtx.
Initialize the bo_mtx when we allocate a vnode i getnewvnode() For
now we point to the vnodes interlock mutex, that retains the exact
same locking sematics.

Move v_numoutput from vnode to bufobj.  Add renaming macro to
postpone code sweep.
2004-10-21 14:42:31 +00:00
Poul-Henning Kamp 67647b2312 Polish vtruncbuf() to improve readability and style a bit. 2004-10-21 14:13:54 +00:00
Marc Fonvieille 7fb04a6a8d Remove NOLIBPTHREAD=yes since BIND related binaries (dig etc.) require
LIBPTHREAD.

Approved by:	phk
2004-10-21 13:56:24 +00:00
Poul-Henning Kamp e163395619 Simplify buf_vlist_remove().
Now that we have encapsulated the splaytree related information
into a structure we can eliminate the half of this function.
2004-10-21 13:48:50 +00:00
Poul-Henning Kamp 4c95d87652 Forced commit to get the right commit message:
Add new include file <sys/bufobj.h> which will contain the gory
details on the new buffer-cache object. (see comments in file
about the direction this is moving).

Include it from <sys/vnode.h> for now to avoid munging a lot of files
which can later be munged back.

Embed a bufobj in vnode.

Move the buf splay trees from the vnode to the bufobj.

Alias the fields to avoid sweeping code yet.

Hide vnode and bufobj behind

	#if defined(_KERNEL) || defined(_KVM_VNODE)

to discourage userland voyeurism.
2004-10-21 12:51:36 +00:00
Poul-Henning Kamp 0bf874246b Add new function ttyinitmode() which sets our systemwide default
modes on a tty structure.  Both the ".init" and the current settings
are initialized allowing the function to be used both at attach and
open time.

The function takes an argument to decide if echoing should be enabled
by default.  Echoing should not be enabled for regular physical
serial ports unless they are consoles, in which case they should
be configured by ttyconsolemode() instead.

Use the new function throughout.
2004-10-21 12:24:38 +00:00
Poul-Henning Kamp 4ef77ed68a Add -D_KVM_VNODE to indicate that despite being a userland program,
we want to know the vnode structures internals.
2004-10-21 12:09:45 +00:00
Olivier Houchard 99cf590376 We want to ignore BUS_DMASYNC_POSTWRITE, not BUS_DMASYNC_POSTREAD.
Spotted out by:	mux
Pointy hat to:	cognet
2004-10-21 11:59:33 +00:00
Robert Watson bda3709718 Bump copyright dates for NETA on these files. 2004-10-21 11:29:56 +00:00
Robert Watson 9dc981da8d Remove unnecessary include of vnode.h.
Requested by:	phk
2004-10-21 11:22:07 +00:00
Robert Watson f4194603ce Modify libugidfw(3) to use MBI_* permission flags from mac_bsdextended.h
instead of using the V* permission flags from vnode.h.  Remove include
of vnode.h.

Requested by:	phk
2004-10-21 11:21:13 +00:00
Robert Watson 2e74bca132 Modify mac_bsdextended policy so that it defines its own vnode access
right bits rather than piggy-backing on the V* rights defined in
vnode.h.  The mac_bsdextended bits are given the same values as the V*
bits to make the new kernel module binary compatible with the old
version of libugidfw that uses V* bits.  This avoids leaking kernel
API/ABI to user management tools, and in particular should remove the
need for libugidfw to include vnode.h.

Requested by:	phk
2004-10-21 11:19:02 +00:00
Ruslan Ermilov d885836c32 Pass WORLD_FLAGS down to the distributeworld target, so it's
possible to build releases with customizations such as with
NOPROFILE.

Problem found and fix tested by Roman Neuhauser.
2004-10-21 08:54:10 +00:00
David Xu 39454d368f Decrease reference count if we won't use the thread, this avoids memory
leak under some cases.
2004-10-21 03:42:24 +00:00
Stephan Uphoff f742a1edcd Zero terminate empty sting in kdb_sysctl_available.
Approved by:    sam (mentor)
MFC after: 1 week
2004-10-21 01:11:25 +00:00
Giorgos Keramidas 8e8b31001c Bump the document date, s/filesystem/file system/ and add missing word.
Noticed by:	ru
2004-10-20 19:05:50 +00:00
Alan Cox 0f777d7d9b Modify the vm object locking in do_sendfile() so that the containing object
is locked when vm_page_io_finish() is called on a page.  This is to satisfy
a new, post-RELENG_5 assertion in vm_page_io_finish().  (I am in the
process of transitioning the responsibility for synchronizing access to
various fields/flags on the page from the global page queues lock to the
per-object lock.)

Tripped over by: obrien@
2004-10-20 17:44:40 +00:00
Giorgos Keramidas 6e1b2264bd Introduce root_rw_mount as a new variable in defaults/rc.conf to
unbreak /etc/rc.d/root for diskless systems that get their root
filesystem from a read-only NFS mount.

PR:		conf/72927
Submitted by:	Ralf Wenk <RZ-FreeBSD1004@fh-karlsruhe.de>
Reviewed by:	brooks
2004-10-20 16:58:28 +00:00
John Baldwin c05c4140e1 Fix a typo so that this compiles. 2004-10-20 16:22:53 +00:00
John Baldwin 9b94662d59 Fix a typo so that this compiles again. 2004-10-20 16:22:00 +00:00
Maxim Konovalov 49c2dc64da -c flag (cache stats) was killed in rev. 1.68. Fix getopt(3) and
usage() accordingly.

Submitted by:	Pawel Worach
2004-10-20 11:18:31 +00:00
Simon L. B. Nielsen 3127ce5d60 Fix typo.
Submitted by:	Patrick Oonk <patrick@cookie.monster.org>
PR:		docs/72912
MFC after:	1 week
2004-10-20 10:11:12 +00:00
Søren Schmidt 208a8dc227 Do not retry on requests that has lost thier device during reinit.
Should fix hangs on IBM's etc with the fake slave problem.

MFC:
	asap
2004-10-20 10:11:05 +00:00
Robert Watson 60c9762920 Explicitly break out NETA license from Berkeley license to clearly
indicate license grant, as well as to indicate that NETA is asserting
only two clauses, not four clauses.

Requested by:	imp
2004-10-20 08:05:02 +00:00
Ruslan Ermilov 26cd344960 Don't prepend "/dev" if an argument given is an absolute pathname.
Reviewed by:	jhb
2004-10-20 05:43:45 +00:00
Warner Losh 54df531327 Rumor has it that ACCTON EN2216 is also an ne2000 compatible. Make it so. 2004-10-20 04:54:50 +00:00
Maxime Henrion 2534c4f99c Add missing bus_dmamap_sync() calls. If you are using an architecture
with a weak memory model or x86 + PAE (or more specifically, your
driver is using bounce pages) and you have had problems with em(4),
this may fix it.  At least this is needed to have em(4) work properly
on FreeBSD/arm.

Original version by:	cognet
Reviewed by:		tackerman
Tested by:		cognet
2004-10-19 23:31:44 +00:00