Re: Problem of workqueue

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On Fri, May 4, 2012 at 6:55 AM, 夏业添 <summerxyt@xxxxxxxxx> wrote:
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
Hi,
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

[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux