Commit Graph

18 Commits

Author SHA1 Message Date
marius
4b6458192f As it turns out, r186347 actually is insufficient to avoid the use of the
curthread-accessing part of mtx_{,un}lock(9) when using a r210623-style
curthread implementation on sparc64, crashing the kernel in its early
cycles as PCPU isn't set up, yet (and can't be set up as OFW is one of the
things we need for that, which leads to a chicken-and-egg problem). What
happens is that due to the fact that the idea of r210623 actually is to
allow the compiler to cache invocations of curthread, it factors out
obtaining curthread needed for both mtx_lock(9) and mtx_unlock(9) to
before the branch based on kobj_mutex_inited when compiling the kernel
without the debugging options. So change kobj_class_compile_static(9)
to just never acquire kobj_mtx, effectively restricting it to its
documented use, and add a kobj_init_static(9) for initializing objects
using a class compiled with the former and that also avoids using mutex(9)
(and malloc(9)). Also assert in both of these functions that they are
used in their intended way only.
While at it, inline kobj_register_method() and kobj_unregister_method()
as there wasn't much point for factoring them out in the first place
and so that a reader of the code has to figure out the locking for
fewer functions missing a KOBJ_ASSERT.
Tested on powerpc{,64} by andreast.

Reviewed by:	nwhitehorn (earlier version), jhb
MFC after:	3 days
2011-11-15 20:11:03 +00:00
maxim
d6a1b3d7dc o Fix incorrect function name (kobj_free -> kobj_delete).
Obtained from:	DragonFlyBSD
MFC after:	1 week
2006-10-28 10:57:35 +00:00
hmp
6b954a1933 Use 'manual page' instead of 'man page' for consistency.
Approved by:	re (hrs)
2005-06-28 20:15:19 +00:00
ru
1cf1598667 Mechanically kill hard sentence breaks and double whitespaces. 2004-07-03 18:29:24 +00:00
mtm
5b310e02ed Grammar 2003-12-09 09:04:45 +00:00
hmp
5d71788a05 Some mdoc(7) fixes:
Nuke incorrect usage of .Ar; replace it with .Vt, .Va or .Fa appropriately.
The .Ar mdoc(7) specifier should only be used when displaying command line
arguments.

Approved by:	des (mentor)
2003-05-31 14:07:25 +00:00
davidc
6b067561b6 Update function definitions and required include files to reflect
the current state of the system.

Approved by: alfred
2001-12-26 23:14:04 +00:00
ru
623da62a5a mdoc(7) police: Use the new .In macro for #include statements. 2001-10-01 16:09:29 +00:00
schweikh
511e378b14 Removed whitespace at end-of-line; no content changes. I simply did
cd src/share; find man[1-9] -type f|xargs perl -pi -e 's/[ \t]+$//'

BTW, what editors are the culprits? I'm using vim and it shows
me whitespace at EOL in troff files with a thick blue block...

Reviewed by:	Silence from cvs diff -b
MFC after:	7 days
2001-07-14 19:41:16 +00:00
ru
9001bc7070 mdoc(7) police: removed HISTORY info from the .Os call. 2001-07-10 15:31:11 +00:00
dd
eaa6ee03b8 mdoc(7) police: remove extraneous .Pp before and/or after .Sh. 2001-07-09 09:54:33 +00:00
ru
dca2cb11d9 mdoc(7) police: use .Fx. 2001-04-18 13:39:57 +00:00
dfr
00bc2fc95a Document kobj_class_compile_static(). 2000-08-28 21:17:46 +00:00
bde
7f64770f56 Removed bogus quoting of single tokens in a .Fn invocation. This helps
my synopsis checker decide which .Fn's are for prototypes (most function
parameters require quoting because they have multiple tokens).
2000-05-11 16:39:33 +00:00
mpp
078cc10d67 Spelling fix: despatching -> dispatching. This makes the
spelling consistent throughout the man page.

PR:		docs/18467
Submitted by:	Alexander N. Kabaev <ak03@gte.com>
2000-05-09 18:52:26 +00:00
wollman
5b41d2de63 Add punctuation to make a sentence more readable. 2000-04-25 16:40:57 +00:00
dfr
8031b933e7 Use the existing Fx macros for rendering "FreeBSD ver".
Submitted by: Sheldon Hearn <sheldonh@uunet.co.za>
2000-04-10 08:21:16 +00:00
dfr
2d18287eb4 Add manpage for kernel object system. 2000-04-08 13:24:40 +00:00