函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\livepatch\transition.c Create Date:2022-07-27 11:31:50
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:Sends a fake signal to all non-kthread tasks with TIF_PATCH_PENDING set.* Kthreads with TIF_PATCH_PENDING set are woken up.

函数原型:static void klp_send_signals(void)

返回类型:void

参数:

347  如果klp_signals_cnt恒等于SIGNALS_TIMEOUT打印注释信息("signaling remaining tasks\n")
350  read_lock( & tasklist_lock)
351  Careful: this is a double loop, 'break' won't work as expected. (g, task)
352  如果非klp_patch_pending(task)则继续下一循环
361  如果任务标志按位与I am a kernel thread
367  否则
373  signal_wake_up(task, 0)
377  read_unlock( & tasklist_lock)
调用者
名称描述
klp_try_complete_transitionTry to switch all remaining tasks to the target patch state by walking the* stacks of sleeping tasks and looking for any to-be-patched or* to-be-unpatched functions. If such functions are found, the task can't be* switched yet.