if (test_thread_flag(TIF_NOTIFY_SIGNAL) || current->task_works) { __set_current_state(TASK_RUNNING); tracehook_notify_signal(); return true; } return false; } 1. 2. 3. 4. 5. 6. 7. 8. 9. 搜索资料,然后搜出下面这个补丁,挺有意思的性能优化 1) TIF_NOTIFY_SIGNAL htt...
@@ -205,24 +205,20 @@ static inline void tracehook_notify_resume(struct pt_regs *regs) */ static inline void tracehook_notify_signal(void) { #if defined(TIF_NOTIFY_SIGNAL) clear_thread_flag(TIF_NOTIFY_SIGNAL); smp_mb__after_atomic(); if (current->task_works) task_work_run(); ...
Fix this by io_run_task_work() so it checks if we have task_work pending rather than rely on TIF_NOTIFY_SIGNAL for that. The latter obviously doesn't work for task_work that is queued without TWA_SIGNAL. Reported-by: Christiano Haesbaert <haesbaert@haesbaert.org> Cc: stable@vger....
In message: [PATCH v5.15-rt] arm: merge fixup for duplicate TIF_NOTIFY_SIGNAL and other TIF_* on 27/01/2023 Paul Gortmaker wrote: -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#12126):https://lists.yoctoproject.org/g/linux...