Commit Graph

65114 Commits

Author SHA1 Message Date
Dag-Erling Smørgrav
24efa9d3fa [the previous commit to pseudofs_vncache.c got the wrong log message]
YA pseudofs megacommit, part 2:

 - Merge the pfs_vnode and pfs_vdata structures, and make the vnode cache
   a doubly-linked list.  This eliminates the need to walk the list in
   pfs_vncache_free().

 - Add an exit callout which revokes vnodes associated with the process
   that just exited.  Since it needs to lock the cache when it does this,
   pfs_vncache_mutex needs MTX_RECURSE.
2001-10-01 04:26:33 +00:00
Dag-Erling Smørgrav
198bc14b1d YA pseudofs megacommit, part 1:
- Add a third callback to the pfs_node structure.  This one simply returns
   non-zero if the specified requesting process is allowed to access the
   specified node for the specified target process.  This is used in
   addition to the usual permission checks, e.g. when certain files don't
   make sense for certain (system) processes.

 - Make sure that pfs_lookup() and pfs_readdir() don't yap about files
   which aren't pfs_visible().  Also check pfs_visible() before performing
   reads and writes, to prevent the kind of races reported in SA-00:77 and
   SA-01:55 (fork a child, open /proc/child/ctl, have that child fork a
   setuid binary, and assume control of it).

 - Add some more trace points.
2001-10-01 04:22:20 +00:00
Warner Losh
58970f854b Fix the damage caused in the last commit:
give the correct workaround for compat library problem
	give a better acpi workaround.
Also include note about TARGET_ARCH.

DO NOT COMMIT TO THIS FILE UNLESS YOU ARE IMP.
2001-10-01 03:59:13 +00:00
Matt Jacob
53036e9289 Begin to implement target mode that for Fibre Channel has a private
per-command component that we *don't* try and pass thru CAM. CAM just
is too risky and too much of a pain- structures get copied, but not
all info of interest can be considered safely transported thru all
consumers (including user space) from the incoming ATIO to the outgoing
CTIO- it's just much safer to have a buddy structure, identified by the
command's tag which *does* make it thru safely.

Pay attention to link speed and report 200MB/s xfer speed for a
23XX card in 2GPs mode.

MFC after:	1 week
2001-10-01 03:48:42 +00:00
Matt Jacob
c507669af4 Implement a call to get the actual link data rate (if 23XX) so we can
set whether it's a 2Gps or 1Gps link.

MFC after:	1 week
2001-10-01 03:45:54 +00:00
Alfred Perlstein
378f44862a Tell people why they might want to disable ACPI and how to do it.
Tell people how to fix the 4.x compatibility issue.
2001-10-01 03:45:07 +00:00
Greg Lehey
24e7f58b03 Add description for calendar.freebsd. 2001-10-01 02:35:52 +00:00
Greg Lehey
c4035b4f35 Correct spelling of Labour Day in Australia, and clarify which states observe it.
Add Queen's Birthday in WA.
Expand unnecessary abbreviation.
Correct rules for German Buss-  und Betttag.
Disunite Ivory Coast and Panama.
2001-10-01 02:35:08 +00:00
Kris Kennaway
adea229e21 Add a brief comparative analysis of 3 popular religions.
Approved by:	maintainer
2001-10-01 01:10:15 +00:00
Matthew Dillon
fa81a9761d Add huff __FBSDID()s puff to whew! libz 2001-09-30 22:39:00 +00:00
Matthew Dillon
22a7e5990a Add __FBSDID()s to liby 2001-09-30 22:36:18 +00:00
Matthew Dillon
8719c58fef Add __FBSDID()s to libutil 2001-09-30 22:35:07 +00:00
Matthew Dillon
209040d8b0 Add __FBSDID()s to libusb 2001-09-30 22:30:55 +00:00
Matthew Dillon
73653312e3 Add __FBSDID()s to libtelnet 2001-09-30 22:30:15 +00:00
Matthew Dillon
a71f4c3a15 Add __FBSDID()s to libtacplus 2001-09-30 22:29:19 +00:00
Matthew Dillon
e74b6a84ce Add __FBSDID()s to libstand 2001-09-30 22:28:01 +00:00
Matthew Dillon
542d87feca Add __FBSDID()s to librpcsvc 2001-09-30 22:15:15 +00:00
Matthew Dillon
f8014c0927 Add __FBSDID()s to libradius 2001-09-30 22:12:36 +00:00
Matthew Dillon
ceaf33f537 Add __FBSDID()s to libpam 2001-09-30 22:11:06 +00:00
David E. O'Brien
d26e2413e0 Fix the problem that the startup directory is printed out if it
is empty.

Submitted by:	Udo Schweigert <udo.schweigert@siemens.com>
2001-09-30 22:07:19 +00:00
Matthew Dillon
d23686820d Add __FBSDID()s to libopie 2001-09-30 22:04:49 +00:00
Matthew Dillon
fd0d00c597 Add __FBSDID()s to libnetgraph 2001-09-30 22:03:54 +00:00
Matthew Dillon
d88aca65d2 Add __FBSDID()s to libncurses 2001-09-30 22:02:43 +00:00
Matthew Dillon
a5c81eca98 Add __FBSDID()s to libncp 2001-09-30 22:01:19 +00:00
Matthew Dillon
971e707742 Add __FBSDID()s to libmp 2001-09-30 21:58:17 +00:00
Matthew Dillon
5d946b40c3 add __FBSDID()s to libmd 2001-09-30 21:56:22 +00:00
Matthew Dillon
65c6735764 Add __FBSDID()s to libm 2001-09-30 21:53:45 +00:00
Matthew Dillon
ae45be27f9 Add __FBSDID()s to libipx 2001-09-30 21:45:06 +00:00
Matthew Dillon
46a50f4e34 Add __FBSDID()s to libipsec 2001-09-30 21:43:45 +00:00
Matthew Dillon
412f6ad0de Add __FBSDID()s to libio 2001-09-30 21:41:46 +00:00
Matthew Dillon
9709405aa6 Add missing '*/' (? why wasn't this caught earlier?) 2001-09-30 21:39:44 +00:00
Matthew Dillon
d331dd4ea1 Add __FBSDID()s to internal libgnumalloc() 2001-09-30 21:38:17 +00:00
Matthew Dillon
733ea32b1c Add __FBSDID()s to libftpio 2001-09-30 21:36:38 +00:00
Matthew Dillon
cecb889f1d Add __FBSDID()s to libfetch 2001-09-30 21:36:09 +00:00
Jake Burkholder
5792b5403b Add identcpu.c. 2001-09-30 21:35:32 +00:00
Matthew Dillon
0622d6c77b Add __FBSDID()s to libedit 2001-09-30 21:21:36 +00:00
Matthew Dillon
96be23e0be Add __FBSDID()s to libdisk 2001-09-30 21:16:57 +00:00
Matthew Dillon
090f02d93c Add __FBSDID()s to libcam 2001-09-30 21:13:43 +00:00
Matthew Dillon
e9dcdd2f26 Add __FBSDID's to libcalendar 2001-09-30 21:09:57 +00:00
Matthew Dillon
ccb90b6d68 __FBSDID() Cleanup 2001-09-30 21:06:00 +00:00
Matthew Dillon
e2505aa676 Add __FBSDID's to libalias 2001-09-30 21:03:33 +00:00
Jake Burkholder
fc67f24833 Add contents to struct *reg. 2001-09-30 19:59:07 +00:00
Jake Burkholder
fa753b0bcb Optimize bcopy and bzero etc to use 64 bit loads and stores if possible.
Handle overlap in bcopy.
Add routines for copying and zeroing pages using physical addresses
directly.
Remove all the hacks to account for calling the firmware on its own
trap table, we use the kernel trap table.  There is still a problem
with OF_exit().
2001-09-30 19:50:39 +00:00
Jake Burkholder
c4bc2cc714 Use %ver to identify the cpu instead of openfirmware.
Submitted by:	robert
2001-09-30 19:45:34 +00:00
Jake Burkholder
92767809a8 Remove some debug code, add traces. 2001-09-30 19:44:19 +00:00
Jake Burkholder
6b75800a1e Return EIO for procfs_*_dbregs. 2001-09-30 19:43:18 +00:00
Dag-Erling Smørgrav
a73a153aff Specify readability and / or writeability for all nodes that need it. 2001-09-30 19:42:41 +00:00
Jake Burkholder
b34f88ee74 Add a place holder for PSTATE_SECURE, which detects if user code it
trying to set bad pstate bits.
2001-09-30 19:42:34 +00:00
Dag-Erling Smørgrav
7d8f809f00 pseudofs.h:
- Rearrange the flag constants a little to simplify specifying and testing
    for readability and writeability.

pseudofs_vnops.c:

  - Track the aforementioned change.

  - Add checks to pfs_open() to prevent opening read-only files for writing
    or vice versa (pfs_{read,write} would block the actual reads and writes,
    but it's still a bug to allow the open() to succeed).  Also, return
    EOPNOTSUPP if the caller attempts to lock the file.

  - Add more trace points.
2001-09-30 19:41:29 +00:00
Jake Burkholder
e5e8823f37 Split the low level trap code into trap, interrupt and syscall, its
easier and hopefully this code is done changing radically.

Don't use the mmu tlb register to address the kernel page table, nor
the 8k pointer register.  The hardware will do some of the page table
lookup by storing the the base address in an internal register and
calculating the address of the tte in the table.  However it is limited
to a 1 meg tsb, which only maps 512 megs.  The kernel page table only
has one level, so its easy to just do it by hand, which has the advantage
of supporting abitrary amounts of kvm and only costs a few more instructions.

Increase kvm to 1 gig now that its easy to do so and so we don't waste
most of a 4 meg page.

Fix some traces.  Fix more proc locking.

Call tsb_stte_promote if we get a soft fault on a mapping in the upper
levels of the tsb.  If there is an invalid or unreferenced mapping
in the primary tsb, it will be replaced.

Immediately fail for faults occuring in {f,s}uswintr.
2001-09-30 19:41:20 +00:00