From owner-p4-projects@FreeBSD.ORG Mon Jul 21 04:53:14 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C882C106567A; Mon, 21 Jul 2008 04:53:14 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8BD591065673 for ; Mon, 21 Jul 2008 04:53:14 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 73BA68FC08 for ; Mon, 21 Jul 2008 04:53:14 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m6L4rEtJ040708 for ; Mon, 21 Jul 2008 04:53:14 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.2/8.14.1/Submit) id m6L4rEJj040706 for perforce@freebsd.org; Mon, 21 Jul 2008 04:53:14 GMT (envelope-from jb@freebsd.org) Date: Mon, 21 Jul 2008 04:53:14 GMT Message-Id: <200807210453.m6L4rEJj040706@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 145532 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Jul 2008 04:53:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=145532 Change 145532 by jb@freebsd3 on 2008/07/21 04:52:32 Add a couple of probes for convenient stat() access when the call returns no error. One fires for all modes, if enabled. The other is more restrictive and only fires for regular files, if enabled. Affected files ... .. //depot/projects/dtrace/src/sys/kern/vfs_syscalls.c#25 edit Differences ... ==== //depot/projects/dtrace/src/sys/kern/vfs_syscalls.c#25 (text+ko) ==== @@ -38,6 +38,7 @@ __FBSDID("$FreeBSD: src/sys/kern/vfs_syscalls.c,v 1.454 2008/06/22 21:51:32 rwatson Exp $"); #include "opt_compat.h" +#include "opt_kdtrace.h" #include "opt_ktrace.h" #include "opt_mac.h" @@ -58,6 +59,7 @@ #include #include #include +#include #include #include #include @@ -82,6 +84,13 @@ #include #include +SDT_PROVIDER_DEFINE(vfs); +SDT_PROBE_DEFINE(vfs, , stat, mode); +SDT_PROBE_ARGTYPE(vfs, , stat, mode, 0, "char *"); +SDT_PROBE_ARGTYPE(vfs, , stat, mode, 1, "int"); +SDT_PROBE_DEFINE(vfs, , stat, reg); +SDT_PROBE_ARGTYPE(vfs, , stat, reg, 0, "char *"); + static int chroot_refuse_vdir_fds(struct filedesc *fdp); static int getutimes(const struct timeval *, enum uio_seg, struct timespec *); static int setfown(struct thread *td, struct vnode *, uid_t, gid_t); @@ -2344,6 +2353,10 @@ if (KTRPOINT(td, KTR_STRUCT)) ktrstat(&sb); #endif + SDT_PROBE(vfs, , stat, mode, path, sb.st_mode, 0, 0, 0); + if (S_ISREG(sb.st_mode)) { + SDT_PROBE(vfs, , stat, reg, path, 0, 0, 0, 0); + } return (0); }