Mechnism for sharing data between kernel and user space

valdis.kletnieks at valdis.kletnieks at
Mon May 22 01:03:44 EDT 2017

On Mon, 22 May 2017 10:13:08 +0530, jitendra kumar khasdev said:

> I am exploring the mechanism for sharing data between kernel and user
> space. There are following mechanism I have found
>    1. copy_to_user/copy_from_user
>    2. Netlink sock
>    3. /proc, /debugfs etc.
> Other than this, Is there any efficient way of which I could read/write
> linked-list that I have created from my kernel module.

There's always ioctl. And mmap.  And read/write on /dev/mem. And a number of
even worse bad ideas.

The good ideas will depend on what sort of data you're trying to move around.
Binary versus printable, structured or not, how much data, how often, and
how fast.  The best way to move a single %d string representing an I/O count
once every 5 seconds is different from trying to run tcpdump on a bond of
2 40gigabit interfaces running NFS traffic full blast....
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 486 bytes
Desc: not available
Url : 

More information about the Kernelnewbies mailing list