On Fri, May 4, 2012 at 6:55 AM, 夏业添 <summerxyt@xxxxxxxxx> wrote:
Hi,Hi Chetan,
Thanks for reply and it works. And I want to verify some other things.
Is it a good way to use workqueue to do this job: send data to user
space through netlink socket from kernel?
Thanks!
2012/5/4 Chetan Nanda <chetannanda@xxxxxxxxx>:
>
> On May 3, 2012 8:37 PM, "夏业添" <summerxyt@xxxxxxxxx> wrote:
>>
>> Hi,
>>
>> I want to use workqueue in my irq handler. Some materials say that I can
>> use
>>
>> INIT_WORK( &work, function, &data );
>>
>> to initialize work, whose type is struct work_struct, and data is
>> something should be passed to function.
>> however, it seems that now the macro INIT_WORK() only accept two
>> parameters:&work and function.
>>
>> My problem is how to pass data to the function and why they change that
>> macro?
>>
>> Thanks!
>>
> May be you are looking for something like this:
> http://www.linuxforums.org/forum/kernel/183688-init_work-two-arguments.html
>
> ~chetan _______________________________________________
>> Kernelnewbies mailing list
>> Kernelnewbies@xxxxxxxxxxxxxxxxx
>> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
To send data from kernel space and user-space see kernel's notification mechanism like fanotify which works on by creating an anonymous fd in the user-space process's context which then might perform normal read() and write() call to receive and send data to kernel.
- Rohan
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies