<div dir="ltr">Still, I am stuck in the same problem, I have also used share memory, and while(!nl_sk) but nothing work:(.<div>Can you please tell me what's the mistake I am doing?</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Oct 17, 2019 at 3:23 PM Irfan Ullah (울라 이르판) <<a href="mailto:irfan@dke.khu.ac.kr">irfan@dke.khu.ac.kr</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>My actual goal is to develop kernel space and user space programs to establish communication in which kernel should initiate the communication. The kernel will send information (e.g., guest physical address from handle_ept_violation() in vmx.c, finding the corresponding page of that address, owner process (or if possible the application, i.e., VLC, open office) of the page, process/application releasing the page) at run time to the user space application. </div><div>I have written code  consists of three file i.e., netlink_kernel_module.c, netlink_kernel_space.h, netlink_user_module.c.  "netlink_kernel_module.c" contains just kernel loading/ unloading module functions i.e., __init hello_init(), and _exit hello_exit().  "netlink_kernel_space.h" contains all the rest of the kernel space code for sending/ receiving data while   "netlink_user_module.c" contains the user space application code for sending/receiving data. </div><div><br></div><div><b>During development and testing</b> I use  "netlink_kernel_module.c" to load and unload kernel module, in which the "__init hello_init()" just call the "create_socket(int data)" defined in  "netlink_kernel_space.h"

with the data which I want to pass to the user space program. And my code works perfectly in this way. </div><div><br></div><div><b>But, To get the required data from the kernel in real time</b>, I include  "

netlink_kernel_space.h

" in kernel file i.e., vmx.c and call the  "create_socket(int data)"  from the <a href="https://elixir.bootlin.com/linux/latest/source/arch/x86/kvm/vmx/vmx.c#L5079" target="_blank">handle_ept_voilation() defined in vmx.c</a> after line#5098. I compile, and install the kernel, and reboot the system (and thus I don't need  

"netlink_kernel_module.c"  because I don't load/unload the kernel module but include 

"netlink_kernel_space.h"  in the vmx.c by using #include "netlink_kernel_space.h").  But, I am getting “NULL” while creating socket (nl_sk = NULL in nl_sk = netlink_kernel_create(&init_net, NETLINK_USER, &cfg);). Here code also shows weird behaviour. If I put 1-3 seconds sleep just before the socket creating statement, then it works just during booting of the virtual machine, after successful boot I get the same socket NULL error. Please find the code in the attachment..</div><div>Thank you very much.</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Oct 16, 2019 at 11:29 PM Valdis Klētnieks <<a href="mailto:valdis.kletnieks@vt.edu" target="_blank">valdis.kletnieks@vt.edu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Wed, 16 Oct 2019 13:54:08 +0900, Irfan Ullah said:<br>
<br>
> developed kernel space, and user space programs.  Kernel and user space<br>
> programs working perfectly when I load and run these modules from the<br>
> terminal using “sudo insmod kernelmodule.ko”, and “./userspaceApp”<br>
> respectively.  But, when I try to use kernel program  (directly as a header<br>
> file #include "kernelmodule.h") with the kernel original file that is<br>
> “vmx.c” then it returns “NULL” while creating socket (nl_sk = NULL in nl_sk<br>
<br>
You're going to have to explain in more detail what you're doing, and possibly<br>
share your code.  "when I try to use kernel program directly" doesn't make sense....<br>
<br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr"><div dir="ltr"><div><b style="color:rgb(39,78,19)">Best Regards,</b></div><div><b style="color:rgb(39,78,19)"><br></b></div><div><b style="color:rgb(39,78,19)"><br></b></div><div dir="ltr"><b style="color:rgb(39,78,19)">Mr. Irfan Ullah</b><br></div><div dir="ltr"><font color="#666666">PhD Candidate<br></font><div><font color="#666666">Data and Knowledge Engineering(DKE) Lab</font></div><div><font color="#666666">Department of Computer Science and Engineering</font></div><div><font color="#666666">Kyung Hee University, South Korea.</font></div><div><img src="http://teedayusa.com/media/wysiwyg/telephone_icon.gif" style="font-family: arial, sans-serif; font-size: 12.8px;"><span style="font-family:arial,sans-serif;font-size:12.8px"> </span><span style="font-family:arial,sans-serif;font-size:12.8px"><font color="#000000"><a href="tel:+82%2010-3877-8867" value="+821038778867" style="color:rgb(17,85,204)" target="_blank">+82-010-591-51651</a></font></span></div><div><div style="font-family:arial,sans-serif;font-size:12.8px"><img src="http://www.letsplaydodgeball.com/ndo/templates/dj-sport01/images/system/emailButton.png" style="font-size: 12.8px;"><span style="font-size:12.8px"><font color="#000000">  </font></span><span style="font-size:12.8px"><font color="#000000"><a href="mailto:sahibzada.iu@gmail.com" style="color:rgb(17,85,204)" target="_blank">sahibzada.iu@gmail.com</a></font></span></div><div><font face="arial, sans-serif"><span style="font-size:12.8px"><img src="https://docs.google.com/uc?export=download&id=0B1-dY3m3XHQnOFBOM0NSODNoUUU&revid=0B1-dY3m3XHQnUmp1c0ZWTGovR2pYbGZCenlOU29DY3ByQU5RPQ" style="font-size: 12.8px;"></span></font><span style="font-family:arial,sans-serif;font-size:12.8px"> </span><font face="arial, sans-serif"><span style="font-size:12.8px">sahibzada_irfanullah</span></font></div></div></div></div></div>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><b style="color:rgb(39,78,19)">Best Regards,</b></div><div><b style="color:rgb(39,78,19)"><br></b></div><div><b style="color:rgb(39,78,19)"><br></b></div><div dir="ltr"><b style="color:rgb(39,78,19)">Mr. Irfan Ullah</b><br></div><div dir="ltr"><font color="#666666">PhD Candidate<br></font><div><font color="#666666">Data and Knowledge Engineering(DKE) Lab</font></div><div><font color="#666666">Department of Computer Science and Engineering</font></div><div><font color="#666666">Kyung Hee University, South Korea.</font></div><div><img src="http://teedayusa.com/media/wysiwyg/telephone_icon.gif" style="font-family: arial, sans-serif; font-size: 12.8px;"><span style="font-family:arial,sans-serif;font-size:12.8px"> </span><span style="font-family:arial,sans-serif;font-size:12.8px"><font color="#000000"><a href="tel:+82%2010-3877-8867" value="+821038778867" style="color:rgb(17,85,204)" target="_blank">+82-010-591-51651</a></font></span></div><div><div style="font-family:arial,sans-serif;font-size:12.8px"><img src="http://www.letsplaydodgeball.com/ndo/templates/dj-sport01/images/system/emailButton.png" style="font-size: 12.8px;"><span style="font-size:12.8px"><font color="#000000">  </font></span><span style="font-size:12.8px"><font color="#000000"><a href="mailto:sahibzada.iu@gmail.com" style="color:rgb(17,85,204)" target="_blank">sahibzada.iu@gmail.com</a></font></span></div><div><font face="arial, sans-serif"><span style="font-size:12.8px"><img src="https://docs.google.com/uc?export=download&id=0B1-dY3m3XHQnOFBOM0NSODNoUUU&revid=0B1-dY3m3XHQnUmp1c0ZWTGovR2pYbGZCenlOU29DY3ByQU5RPQ" style="font-size: 12.8px;"></span></font><span style="font-family:arial,sans-serif;font-size:12.8px"> </span><font face="arial, sans-serif"><span style="font-size:12.8px">sahibzada_irfanullah</span></font></div></div></div></div></div>