find_task_by_pid macro removed from kernel
Hi all, I had troubles getting lirc modules working on openvz kernel: lirc_dev needs find_task_by_pid (modprobe lirc_dev returns an unresolved symbol). On a vanilla kernel this is defined as a macro: #define find_task_by_pid(nr) find_task_by_pid_type(PIDTYPE_PID, nr) On openvz kernel (I'm running 2.6.16-026test017), this macro has been removed, I can only find: #define find_task_by_pid_all(nr) \ find_task_by_pid_type_all(PIDTYPE_PID, nr) Why find_task_by_pid has been removed? In which ways find_task_by_pid_all differs? I tried replacing find_task_by_pid(ir->tpid) in lirc source-code with find_task_by_pid_type(PIDTYPE_PID, ir->tpid), and it works flawlessly. Does this have any drawback? If not, why not reincluding find_task_by_pid into the kernel to keep compatibility? Thanks for replies. Bye. -- * Pillon Matteo
Re: find_task_by_pid macro removed from kernel
I am out of the office until Tuesday 26th September 2006. Please contact our team via the following for any issues relating to a hosting account: Billing - billing[at]transnexis.com Domain Renewals/Transfers/Registrations - domains[at]transnexis.com Sales - sales[at]transnexis.com Support - support[at]transnexis.com (24/7) If you have any queries please contact Damien Ransome via damien@transnexis.com, and for problems with technical support please email Daniel Pop via daniel@transnexis.com. For anything else I will get back to you as quickly as possible when I return. Regards, Andrew Cranson Transnexis Hosting www.transnexis.com
Matteo Pillon wrote: > Hi all, > > I had troubles getting lirc modules working on openvz kernel: lirc_dev > needs find_task_by_pid (modprobe lirc_dev returns an unresolved > symbol). > On a vanilla kernel this is defined as a macro: > #define find_task_by_pid(nr) find_task_by_pid_type(PIDTYPE_PID, nr) > On openvz kernel (I'm running 2.6.16-026test017), this macro has been > removed, I can only find: > #define find_task_by_pid_all(nr) \ > find_task_by_pid_type_all(PIDTYPE_PID, nr) > Why find_task_by_pid has been removed? In which ways > find_task_by_pid_all differs? > find_task_by_pid_all() seeks among all tasks on HW find_task_by_pid_ve() seeks among all task in VE The reason of appearance of these functions in OpenVZ environment is clear, I suppose. > I tried replacing find_task_by_pid(ir->tpid) in lirc source-code with > find_task_by_pid_type(PIDTYPE_PID, ir->tpid), and it works flawlessly. > Better way is to use find_task_by_pid_all() or find_task_by_pid_ve(). What particular function to use depends on context. > Does this have any drawback? If not, why not reincluding > find_task_by_pid into the kernel to keep compatibility? > > > Thanks for replies. > > Bye. > > HTH, vass
On Mon, Sep 18, 2006 at 04:59:32PM +0400, Vasily Tarasov wrote: > find_task_by_pid_all() seeks among all tasks on HW > find_task_by_pid_ve() seeks among all task in VE > The reason of appearance of these functions in OpenVZ environment is > clear, I suppose. Thanks for your explanation. Bye. -- * Pillon Matteo