【问题标题】:Retrieving pid of tasklet获取tasklet的pid
【发布时间】:2016-04-12 20:48:30
【问题描述】:

如何获取执行 tasklet 函数的任务的 pid。 current->pid 不会工作,因为 tasklet 在中断上下文中运行。 current 很可能是指被中断的任务。

【问题讨论】:

  • 据我所知,current always 返回当前正在运行的任务。唯一的例外是没有任务,对应于当前执行的事情:在这种情况下current 返回 NULL。换句话说,如果current 返回非NULL,那么这是当前执行的任务。如果current 返回 NULL,则当前执行的东西不是任务。

标签: linux linux-kernel linux-device-driver interrupt


【解决方案1】:

从您需要 pid 的任务中传递它。

static DECLARE_TASKLET(ttasklet, &ttasklet_work, (unsigned long)&tshared_data);

在您的代码中某个进程上下文或您可以获取 pid 的位置,然后将 pid 添加到结构 tshared_data.

【讨论】:

    猜你喜欢
    • 2020-02-19
    • 2021-02-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-08
    • 2016-01-31
    • 2011-07-11
    相关资源
    最近更新 更多