Print this page
2916 DTrace in a zone should be able to access fds[]

*** 21,31 **** /* * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ ! #pragma ident "%Z%%M% %I% %E% SMI" #pragma D depends_on module unix #pragma D depends_on provider io inline int B_BUSY = @B_BUSY@; --- 21,33 ---- /* * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ ! /* ! * 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,207 **** 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); #pragma D attributes Stable/Stable/Common fds #pragma D binding "1.1" fds #pragma D binding "1.2" translator --- 197,207 ---- 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> (getf(fd)); #pragma D attributes Stable/Stable/Common fds #pragma D binding "1.1" fds #pragma D binding "1.2" translator