freebsd-nq/sys/fs
John Baldwin 664f718ba1 - Always call faultin() in _PHOLD() if PS_INMEM is clear. This closes a
race where a thread could assume that a process was swapped in by
  PHOLD() when it actually wasn't fully swapped in yet.
- In faultin(), always msleep() if PS_SWAPPINGIN is set instead of doing
  this check after bumping p_lock in the PS_INMEM == 0 case.  Also,
  sched_lock is only needed for setting and clearning swapping PS_*
  flags and the swap thread inhibitor.
- Don't set and clear the thread swap inhibitor in the same loops as the
  pmap_swapin/out_thread() since we have to do it under sched_lock.
  Instead, mimic the treatment of the PS_INMEM flag and use separate loops
  to set the inhibitors when clearing PS_INMEM and clear the inhibitors
  when setting PS_INMEM.
- swapout() now returns with the proc lock held as it holds the lock
  while adjusting the swapping-related PS_* flags so that the proc lock
  can be used to test those flags.
- Only use the proc lock to check the swapping-related PS_* flags in
  several places.
- faultin() no longer requires sched_lock to be held by callers.
- Rename PS_SWAPPING to PS_SWAPPINGOUT to be less ambiguous now that we
  have PS_SWAPPINGIN.
2003-04-22 20:00:26 +00:00
..
cd9660 Rename vfs_stdsync function to vfs_stdnosync which matches more 2003-03-11 22:15:10 +00:00
coda - Move p->p_sigmask to td->td_sigmask. Signal masks will be per thread with 2003-03-31 22:49:17 +00:00
deadfs Finish cleanup of vprint() which was begun with changing v_tag to a string. 2003-03-03 19:15:40 +00:00
devfs Rename vfs_stdsync function to vfs_stdnosync which matches more 2003-03-11 22:15:10 +00:00
fdescfs Rename vfs_stdsync function to vfs_stdnosync which matches more 2003-03-11 22:15:10 +00:00
fifofs Better fix for the problem addressed by rev.1.79: don't loop in 2003-03-24 11:03:42 +00:00
hpfs Rename vfs_stdsync function to vfs_stdnosync which matches more 2003-03-11 22:15:10 +00:00
msdosfs It appears that msdosfs_init() is called multiple times. This happens 2003-04-10 00:13:12 +00:00
ntfs Rename vfs_stdsync function to vfs_stdnosync which matches more 2003-03-11 22:15:10 +00:00
nullfs Finish cleanup of vprint() which was begun with changing v_tag to a string. 2003-03-03 19:15:40 +00:00
nwfs Specify the M_WAITOK flag explicitly in the MALLOC call to silence a 2003-04-01 02:47:09 +00:00
portalfs Rename vfs_stdsync function to vfs_stdnosync which matches more 2003-03-11 22:15:10 +00:00
procfs - Always call faultin() in _PHOLD() if PS_INMEM is clear. This closes a 2003-04-22 20:00:26 +00:00
pseudofs Replace the at_fork, at_exec, and at_exit functions with the slightly more 2003-03-24 21:15:35 +00:00
smbfs - smb_td_intr takes a thread as an argument not a proc. 2003-04-01 09:24:12 +00:00
specfs - Add a lock for protecting against msleep(bp, ...) wakeup(bp) races. 2003-03-13 07:31:45 +00:00
udf Make udf_allocv() return an unlocked vnode instead of a locked one 2003-03-16 11:19:54 +00:00
umapfs Rename vfs_stdsync function to vfs_stdnosync which matches more 2003-03-11 22:15:10 +00:00
unionfs Rename vfs_stdsync function to vfs_stdnosync which matches more 2003-03-11 22:15:10 +00:00