how can we wake up some process which is scheduled?
Dave Hylands
dhylands at gmail.com
Tue Dec 13 13:17:02 EST 2011
Hi loody,
On Tue, Dec 13, 2011 at 12:44 AM, loody <miloody at gmail.com> wrote:
> hi all:
> There is a kernel API, "schedule_timeout_interruptible".
> since it has the name interruptible, who and how can we interrupt this
> task?
> suppose A use schedule_timeout_interruptible for 20s period and B
> found something and he want to wake up A within this 20s period.
>
You send the task a signal. The API for doing this has a rather unfortunate
name, and is called kill from user-space.
>From kernel space, you can use kill_pid_info, or kill_proc_info.
kill_pid_info is what's called to send SIGALARM when an itimer expires.
Although using signals in kernel space is fairly rare, it's typically a
user-space to kernel-space thing, not a kernel-space to kernel-space thing.
In kernel space, I would generally use something like a timed semaphore
(down_timeout).
--
Dave Hylands
Shuswap, BC, Canada
http://www.davehylands.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20111213/cf0edd32/attachment.html
More information about the Kernelnewbies
mailing list