<div class="gmail_quote">On Thu, Apr 12, 2012 at 10:38 AM, V.Ravikumar <span dir="ltr">&lt;<a href="mailto:ravikumar.vallabhu@gmail.com">ravikumar.vallabhu@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi all,<br>I&#39;m probing sys_write system call using system tap to get modified file name along with UID.<br>Here is code snippet.<br><br>probe kernel.function (&quot;vfs_write&quot;)<br>{<br>        <br>        filename = user_string($file-&gt;f_dentry-&gt;d_name-&gt;name)  // for 2.6.18 kernel.<br>

        printf (&quot;%d %s\n&quot;,uid,filename)<br>}<br>I got sample program to get inode number as below<br>inode_nr = $file-&gt;f_path-&gt;dentry-&gt;d_inode-&gt;i_ino . This I changed to get file name, I&#39;m getting file name as empty.<br>

<br>With above program i&#39;m getting file name as unknown.<br>My question is does above code snippet is correct to get file name ? If not could somebody please let me know the correct implementation.<br><br>
</blockquote></div> <br>I got how to get file name properly.<br><br>
&gt; filename = user_string($file-&gt;f_dentry-&gt;d_name-&gt;name)  // for 2.6.18 <br>
  Here I need to use kernel_string instead of user_string<br><br>Regards,<br>Ravi<br>