procfs_map.c (217896) | procfs_map.c (241896) |
---|---|
1/*- 2 * Copyright (c) 1993 Jan-Simon Pendry 3 * Copyright (c) 1993 4 * The Regents of the University of California. All rights reserved. 5 * 6 * This code is derived from software contributed to Berkeley by 7 * Jan-Simon Pendry. 8 * --- 18 unchanged lines hidden (view full) --- 27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31 * SUCH DAMAGE. 32 * 33 * @(#)procfs_status.c 8.3 (Berkeley) 2/17/94 34 * | 1/*- 2 * Copyright (c) 1993 Jan-Simon Pendry 3 * Copyright (c) 1993 4 * The Regents of the University of California. All rights reserved. 5 * 6 * This code is derived from software contributed to Berkeley by 7 * Jan-Simon Pendry. 8 * --- 18 unchanged lines hidden (view full) --- 27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31 * SUCH DAMAGE. 32 * 33 * @(#)procfs_status.c 8.3 (Berkeley) 2/17/94 34 * |
35 * $FreeBSD: head/sys/fs/procfs/procfs_map.c 217896 2011-01-26 20:03:58Z dchagin $ | 35 * $FreeBSD: head/sys/fs/procfs/procfs_map.c 241896 2012-10-22 17:50:54Z kib $ |
36 */ 37 38#include "opt_compat.h" 39 40#include <sys/param.h> 41#include <sys/systm.h> 42#include <sys/lock.h> 43#include <sys/filedesc.h> --- 35 unchanged lines hidden (view full) --- 79procfs_doprocmap(PFS_FILL_ARGS) 80{ 81 struct vmspace *vm; 82 vm_map_t map; 83 vm_map_entry_t entry, tmp_entry; 84 struct vnode *vp; 85 char *fullpath, *freepath; 86 struct ucred *cred; | 36 */ 37 38#include "opt_compat.h" 39 40#include <sys/param.h> 41#include <sys/systm.h> 42#include <sys/lock.h> 43#include <sys/filedesc.h> --- 35 unchanged lines hidden (view full) --- 79procfs_doprocmap(PFS_FILL_ARGS) 80{ 81 struct vmspace *vm; 82 vm_map_t map; 83 vm_map_entry_t entry, tmp_entry; 84 struct vnode *vp; 85 char *fullpath, *freepath; 86 struct ucred *cred; |
87 int error, vfslocked; | 87 int error; |
88 unsigned int last_timestamp; 89#ifdef COMPAT_FREEBSD32 90 int wrap32 = 0; 91#endif 92 93 PROC_LOCK(p); 94 error = p_candebug(td, p); 95 PROC_UNLOCK(p); --- 88 unchanged lines hidden (view full) --- 184 VM_OBJECT_UNLOCK(lobj); 185 186 flags = obj->flags; 187 ref_count = obj->ref_count; 188 shadow_count = obj->shadow_count; 189 VM_OBJECT_UNLOCK(obj); 190 if (vp != NULL) { 191 vn_fullpath(td, vp, &fullpath, &freepath); | 88 unsigned int last_timestamp; 89#ifdef COMPAT_FREEBSD32 90 int wrap32 = 0; 91#endif 92 93 PROC_LOCK(p); 94 error = p_candebug(td, p); 95 PROC_UNLOCK(p); --- 88 unchanged lines hidden (view full) --- 184 VM_OBJECT_UNLOCK(lobj); 185 186 flags = obj->flags; 187 ref_count = obj->ref_count; 188 shadow_count = obj->shadow_count; 189 VM_OBJECT_UNLOCK(obj); 190 if (vp != NULL) { 191 vn_fullpath(td, vp, &fullpath, &freepath); |
192 vfslocked = VFS_LOCK_GIANT(vp->v_mount); | |
193 vrele(vp); | 192 vrele(vp); |
194 VFS_UNLOCK_GIANT(vfslocked); | |
195 } 196 } else { 197 type = "none"; 198 flags = 0; 199 ref_count = 0; 200 shadow_count = 0; 201 } 202 --- 44 unchanged lines hidden --- | 193 } 194 } else { 195 type = "none"; 196 flags = 0; 197 ref_count = 0; 198 shadow_count = 0; 199 } 200 --- 44 unchanged lines hidden --- |