This patch fixes three problems:

1. Kernel memory fault in access_invalidate during domain deactivation.
2. Kernel memory fault in dyn_hash_remove during a quotactl call.
3. A lock_terminate: lock held panic during a quotactl call.

Fixes for problems 2 and 3 were previously distributed in ERP T64KIT0025392-V51BB24-E-20050418. 


Partial stack traces for the three types of panicing threads follow.

1) kernel memory fault in access_invalidate

   4 panic 
   5 trap 
   6 _XentMM 
   7 access_invalidate 
   8 bfs_dealloc 
   9 dmn_dealloc 
  10 bs_bfdmn_deactivate 
  11 fs_fset_get_info 
  12 msfs_real_syscall 
  13 msfs_syscall 
  14 syscall 
  15 _Xsyscall 

OR

   1 panic  
   2 trap  
   3 _XentMM 
   4 access_invalidate 
   5 bfs_dealloc 
   6 dmn_dealloc 
   7 bs_bfdmn_deactivate 
   8 msfs_unmount 
   9 cfs_unmount 
  10 dounmount 
  11 cfs_do_unmount_accept  
  12 cms_handle_send_msg  
  13 cms_kgs_callback_thread 


2) kernel memory fault in dyn_hash_remove

    4 panic
    5 trap 
    6 _XentMM()
    7 dyn_hash_remove()
    8 dqput()
    9 advfs_get_quota()
   10 advfs_quotactl()
   11 cfs_comm_quotactl()
   12 cfs_quotactl()
   13 quotactl()
   14 syscall()
   15 _Xsyscall()


3) panic - lock_terminate: lock held

    4 panic()
    5 lock_terminate()
    6 dqput()
    7 advfs_get_quota() 
    8 advfs_quotactl() 
    9 cfs_comm_quotactl()
   10 cfs_quotactl()
   11 quotactl()
   12 syscall()
   13 _Xsyscall()


