<div dir="auto">Thanks, I will check it out. </div><div class="gmail_extra"><br><div class="gmail_quote">On 09-Feb-2018 12:50 AM,  <<a href="mailto:valdis.kletnieks@vt.edu">valdis.kletnieks@vt.edu</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Thu, 08 Feb 2018 23:38:01 +0530, Neil Thomas said:<br>
<br>
> I am just a beginner. I have tried procfs, Netlink socket to communicate<br>
> between user space and kernel space and it works fine.<br>
><br>
> I am developing a monitoring utility to trace the VFS operation and find<br>
> the frequency of VFS function calls. This monitoring utility runs in kernel<br>
> space. We have to record the occurrence of each  VFS function calls (like<br>
> vfs_open(), vfs_read()).  I don't know  which is best mechanism to report<br>
> this VFS event to the monitoring utility.<br>
><br>
> Could anyone please suggest the best mechanism to transfer data frequently<br>
> between kernel modules.<br>
<br>
There's a perfectly good perf-based function trace facility that will provide<br>
this info to userspace.<br>
<br>
<a href="http://www.brendangregg.com/perf.html#StaticKernelTracing" rel="noreferrer" target="_blank">http://www.brendangregg.com/<wbr>perf.html#StaticKernelTracing</a><br>
<br>
</blockquote></div></div>