freebsd-nq/sys/gnu/ext2fs
John Baldwin 91d5354a2c Locking for the per-process resource limits structure.
- struct plimit includes a mutex to protect a reference count.  The plimit
  structure is treated similarly to struct ucred in that is is always copy
  on write, so having a reference to a structure is sufficient to read from
  it without needing a further lock.
- The proc lock protects the p_limit pointer and must be held while reading
  limits from a process to keep the limit structure from changing out from
  under you while reading from it.
- Various global limits that are ints are not protected by a lock since
  int writes are atomic on all the archs we support and thus a lock
  wouldn't buy us anything.
- All accesses to individual resource limits from a process are abstracted
  behind a simple lim_rlimit(), lim_max(), and lim_cur() API that return
  either an rlimit, or the current or max individual limit of the specified
  resource from a process.
- dosetrlimit() was renamed to kern_setrlimit() to match existing style of
  other similar syscall helper functions.
- The alpha OSF/1 compat layer no longer calls getrlimit() and setrlimit()
  (it didn't used the stackgap when it should have) but uses lim_rlimit()
  and kern_setrlimit() instead.
- The svr4 compat no longer uses the stackgap for resource limits calls,
  but uses lim_rlimit() and kern_setrlimit() instead.
- The ibcs2 compat no longer uses the stackgap for resource limits.  It
  also no longer uses the stackgap for accessing sysctl's for the
  ibcs2_sysconf() syscall but uses kernel_sysctl() instead.  As a result,
  ibcs2_sysconf() no longer needs Giant.
- The p_rlimit macro no longer exists.

Submitted by:	mtm (mostly, I only did a few cleanups and catchups)
Tested on:	i386
Compiled on:	alpha, amd64
2004-02-04 21:52:57 +00:00
..
COPYRIGHT.INFO
ext2_alloc.c
ext2_balloc.c - Add a new 'flags' parameter to getblk(). 2003-03-04 00:04:44 +00:00
ext2_bitops.h Change of plans: Add ext2_bitops.h with generic and portable 2003-08-25 01:39:47 +00:00
ext2_bmap.c DuH! 2003-10-18 14:10:28 +00:00
ext2_extern.h
ext2_fs_sb.h
ext2_fs.h
ext2_ihash.c Regularize the vop_stdlock'ing protocol across all the filesystems 2002-10-14 03:20:36 +00:00
ext2_inode_cnv.c
ext2_inode.c DuH! 2003-10-18 14:10:28 +00:00
ext2_linux_balloc.c Fix the alpha tinderbox. The alpha specific bitops used by the bitmap 2003-10-29 07:35:53 +00:00
ext2_linux_ialloc.c Fix the alpha tinderbox. The alpha specific bitops used by the bitmap 2003-10-29 07:35:53 +00:00
ext2_lookup.c Clean up whitespace, s/register //, refrain from strong urge to ANSIfy. 2003-03-02 15:56:49 +00:00
ext2_mount.h
ext2_readwrite.c Locking for the per-process resource limits structure. 2004-02-04 21:52:57 +00:00
ext2_subr.c
ext2_vfsops.c Copy workaround from FFS: open device for write access even if 2004-01-24 08:43:06 +00:00
ext2_vnops.c DuH! 2003-10-18 14:10:28 +00:00
fs.h - Clean-up comments that refer to the use of B_LOCKED. 2003-08-28 00:56:39 +00:00
i386-bitops.h
inode.h
sparc64-bitops.h Import Linux's linux/include/asm-sparc64/bitopts.h. 2003-02-23 21:58:31 +00:00