Now that CONFIG_DEPT_AGGRESSIVE_TIMEOUT_WAIT was introduced, apply the consideration to hashed-waitqueue wait, assuming an input 'ret' in ___wait_var_event() macro is used as a timeout value. Signed-off-by: Byungchul Park <byungchul.park@xxxxxxx> --- include/linux/wait_bit.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/include/linux/wait_bit.h b/include/linux/wait_bit.h index bad30ba..b504815 100644 --- a/include/linux/wait_bit.h +++ b/include/linux/wait_bit.h @@ -247,7 +247,10 @@ struct wait_bit_queue_entry { struct wait_bit_queue_entry __wbq_entry; \ long __ret = ret; /* explicit shadow */ \ \ - sdt_might_sleep_weak(NULL); \ + if (!__ret || __ret == MAX_SCHEDULE_TIMEOUT) \ + sdt_might_sleep_weak(NULL); \ + else \ + sdt_might_sleep_weak_timeout(NULL); \ init_wait_var_entry(&__wbq_entry, var, \ exclusive ? WQ_FLAG_EXCLUSIVE : 0); \ for (;;) { \ -- 1.9.1