Print this page
2916 DTrace in a zone should be able to access fds[]
@@ -21,11 +21,13 @@
/*
* Copyright 2006 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
+/*
+ * Copyright (c) 2012, Joyent, Inc. All rights reserved.
+ */
#pragma D depends_on module unix
#pragma D depends_on provider io
inline int B_BUSY = @B_BUSY@;
@@ -195,13 +197,11 @@
F->f_vnode->v_vfsp->vfs_vnodecovered->v_path == NULL ? "<unknown>" :
cleanpath(F->f_vnode->v_vfsp->vfs_vnodecovered->v_path);
fi_oflags = F == NULL ? 0 : F->f_flag + (int)@FOPEN@;
};
-inline fileinfo_t fds[int fd] = xlate <fileinfo_t> (
- fd >= 0 && fd < curthread->t_procp->p_user.u_finfo.fi_nfiles ?
- curthread->t_procp->p_user.u_finfo.fi_list[fd].uf_file : NULL);
+inline fileinfo_t fds[int fd] = xlate <fileinfo_t> (getf(fd));
#pragma D attributes Stable/Stable/Common fds
#pragma D binding "1.1" fds
#pragma D binding "1.2" translator