Re: Query on mechanisms to communicate between kernel modules in Linux

2018-02-11 Thread Tobin C. Harding
On Sat, Feb 10, 2018 at 10:30:36PM +0530, Neil Thomas wrote:
> Thanks a lot. I will try out this.

Please don't top post.  It upsets people.

Good luck,
Tobin.

> On 10-Feb-2018 2:08 PM, "Pintu Kumar"  wrote:
> 
> > On Fri, Feb 9, 2018 at 12:52 AM, Neil Thomas  wrote:
> > > Thanks, I will check it out.
> > >
> > > On 09-Feb-2018 12:50 AM,  wrote:
> > >>
> > >> On Thu, 08 Feb 2018 23:38:01 +0530, Neil Thomas said:
> > >>
> > >> > I am just a beginner. I have tried procfs, Netlink socket to
> > communicate
> > >> > between user space and kernel space and it works fine.
> > >> >
> > >> > I am developing a monitoring utility to trace the VFS operation and
> > find
> > >> > the frequency of VFS function calls. This monitoring utility runs in
> > >> > kernel
> > >> > space. We have to record the occurrence of each  VFS function calls
> > >> > (like
> > >> > vfs_open(), vfs_read()).  I don't know  which is best mechanism to
> > >> > report
> > >> > this VFS event to the monitoring utility.
> > >> >
> > >> > Could anyone please suggest the best mechanism to transfer data
> > >> > frequently
> > >> > between kernel modules.
> >
> > You can also use ION (CONFIG_ION) or DMABUF (DMA_SHARED_BUFFER) buffer
> > sharing mechanism to share data between 2 drivers.
> > Check this:
> > https://www.kernel.org/doc/html/latest/driver-api/dma-buf.html
> > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/
> > linux.git/tree/drivers/staging/android/ion?h=v4.15
> >
> > >>
> > >> There's a perfectly good perf-based function trace facility that will
> > >> provide
> > >> this info to userspace.
> > >>
> > >> http://www.brendangregg.com/perf.html#StaticKernelTracing
> > >>
> > >
> > > ___
> > > Kernelnewbies mailing list
> > > Kernelnewbies@kernelnewbies.org
> > > https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
> > >
> >

> ___
> Kernelnewbies mailing list
> Kernelnewbies@kernelnewbies.org
> https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


___
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


Re: Query on mechanisms to communicate between kernel modules in Linux

2018-02-10 Thread Neil Thomas
Thanks a lot. I will try out this.

On 10-Feb-2018 2:08 PM, "Pintu Kumar"  wrote:

> On Fri, Feb 9, 2018 at 12:52 AM, Neil Thomas  wrote:
> > Thanks, I will check it out.
> >
> > On 09-Feb-2018 12:50 AM,  wrote:
> >>
> >> On Thu, 08 Feb 2018 23:38:01 +0530, Neil Thomas said:
> >>
> >> > I am just a beginner. I have tried procfs, Netlink socket to
> communicate
> >> > between user space and kernel space and it works fine.
> >> >
> >> > I am developing a monitoring utility to trace the VFS operation and
> find
> >> > the frequency of VFS function calls. This monitoring utility runs in
> >> > kernel
> >> > space. We have to record the occurrence of each  VFS function calls
> >> > (like
> >> > vfs_open(), vfs_read()).  I don't know  which is best mechanism to
> >> > report
> >> > this VFS event to the monitoring utility.
> >> >
> >> > Could anyone please suggest the best mechanism to transfer data
> >> > frequently
> >> > between kernel modules.
>
> You can also use ION (CONFIG_ION) or DMABUF (DMA_SHARED_BUFFER) buffer
> sharing mechanism to share data between 2 drivers.
> Check this:
> https://www.kernel.org/doc/html/latest/driver-api/dma-buf.html
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/
> linux.git/tree/drivers/staging/android/ion?h=v4.15
>
> >>
> >> There's a perfectly good perf-based function trace facility that will
> >> provide
> >> this info to userspace.
> >>
> >> http://www.brendangregg.com/perf.html#StaticKernelTracing
> >>
> >
> > ___
> > Kernelnewbies mailing list
> > Kernelnewbies@kernelnewbies.org
> > https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
> >
>
___
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


Re: Query on mechanisms to communicate between kernel modules in Linux

2018-02-10 Thread Pintu Kumar
On Fri, Feb 9, 2018 at 12:52 AM, Neil Thomas  wrote:
> Thanks, I will check it out.
>
> On 09-Feb-2018 12:50 AM,  wrote:
>>
>> On Thu, 08 Feb 2018 23:38:01 +0530, Neil Thomas said:
>>
>> > I am just a beginner. I have tried procfs, Netlink socket to communicate
>> > between user space and kernel space and it works fine.
>> >
>> > I am developing a monitoring utility to trace the VFS operation and find
>> > the frequency of VFS function calls. This monitoring utility runs in
>> > kernel
>> > space. We have to record the occurrence of each  VFS function calls
>> > (like
>> > vfs_open(), vfs_read()).  I don't know  which is best mechanism to
>> > report
>> > this VFS event to the monitoring utility.
>> >
>> > Could anyone please suggest the best mechanism to transfer data
>> > frequently
>> > between kernel modules.

You can also use ION (CONFIG_ION) or DMABUF (DMA_SHARED_BUFFER) buffer
sharing mechanism to share data between 2 drivers.
Check this:
https://www.kernel.org/doc/html/latest/driver-api/dma-buf.html
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/staging/android/ion?h=v4.15

>>
>> There's a perfectly good perf-based function trace facility that will
>> provide
>> this info to userspace.
>>
>> http://www.brendangregg.com/perf.html#StaticKernelTracing
>>
>
> ___
> Kernelnewbies mailing list
> Kernelnewbies@kernelnewbies.org
> https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>

___
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


Re: Query on mechanisms to communicate between kernel modules in Linux

2018-02-08 Thread Neil Thomas
Thanks, I will check it out.

On 09-Feb-2018 12:50 AM,  wrote:

> On Thu, 08 Feb 2018 23:38:01 +0530, Neil Thomas said:
>
> > I am just a beginner. I have tried procfs, Netlink socket to communicate
> > between user space and kernel space and it works fine.
> >
> > I am developing a monitoring utility to trace the VFS operation and find
> > the frequency of VFS function calls. This monitoring utility runs in
> kernel
> > space. We have to record the occurrence of each  VFS function calls (like
> > vfs_open(), vfs_read()).  I don't know  which is best mechanism to report
> > this VFS event to the monitoring utility.
> >
> > Could anyone please suggest the best mechanism to transfer data
> frequently
> > between kernel modules.
>
> There's a perfectly good perf-based function trace facility that will
> provide
> this info to userspace.
>
> http://www.brendangregg.com/perf.html#StaticKernelTracing
>
>
___
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


Re: Query on mechanisms to communicate between kernel modules in Linux

2018-02-08 Thread valdis . kletnieks
On Thu, 08 Feb 2018 23:38:01 +0530, Neil Thomas said:

> I am just a beginner. I have tried procfs, Netlink socket to communicate
> between user space and kernel space and it works fine.
>
> I am developing a monitoring utility to trace the VFS operation and find
> the frequency of VFS function calls. This monitoring utility runs in kernel
> space. We have to record the occurrence of each  VFS function calls (like
> vfs_open(), vfs_read()).  I don't know  which is best mechanism to report
> this VFS event to the monitoring utility.
>
> Could anyone please suggest the best mechanism to transfer data frequently
> between kernel modules.

There's a perfectly good perf-based function trace facility that will provide
this info to userspace.

http://www.brendangregg.com/perf.html#StaticKernelTracing



pgp0vq1kIKhMz.pgp
Description: PGP signature
___
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


Re: Query on mechanisms to communicate between kernel modules in Linux

2018-02-08 Thread Neil Thomas
 Hi,

I am just a beginner. I have tried procfs, Netlink socket to communicate
between user space and kernel space and it works fine.

I am developing a monitoring utility to trace the VFS operation and find
the frequency of VFS function calls. This monitoring utility runs in kernel
space. We have to record the occurrence of each  VFS function calls (like
vfs_open(), vfs_read()).  I don't know  which is best mechanism to report
this VFS event to the monitoring utility.

Could anyone please suggest the best mechanism to transfer data frequently
between kernel modules.

Thank you!


On Thu, Feb 8, 2018 at 7:56 PM, Greg KH  wrote:

> On Thu, Feb 08, 2018 at 09:39:31AM +0530, Neil Thomas wrote:
> > Hi,
> >
> > I want to share information between two kernel modules (Kernel version
> 4.0
> > or above). What are the ways of communication between kernel modules in
> > Linux.
>
> What have you tried that did not work out?
>
> > Please list out the available mechanisms to do this.
>
> This feels like a homework question to me, are you sure you are not just
> asking for us to do your work for you?  :)
>
> thanks,
>
> greg k-h
>
___
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


Re: Query on mechanisms to communicate between kernel modules in Linux

2018-02-08 Thread Greg KH
On Thu, Feb 08, 2018 at 09:39:31AM +0530, Neil Thomas wrote:
> Hi,
> 
> I want to share information between two kernel modules (Kernel version 4.0
> or above). What are the ways of communication between kernel modules in
> Linux.

What have you tried that did not work out?

> Please list out the available mechanisms to do this.

This feels like a homework question to me, are you sure you are not just
asking for us to do your work for you?  :)

thanks,

greg k-h

___
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies