From d7fe5b6152d9f01f003c93cc1367455c30dc35ed Mon Sep 17 00:00:00 2001 From: Lai Siyao Date: Tue, 7 Mar 2017 13:56:04 +0800 Subject: [PATCH] LU-9210 statahead: missing barrier before wake_up A barrier is missing before wake_up() in ll_statahead_interpret(), which may cause 'ls' hang. Signed-off-by: Lai Siyao Signed-off-by: Bob Glossman Change-Id: I391d6222e353fb27761ffd5412b52ce08f7a0592 Reviewed-on: https://review.whamcloud.com/27330 Tested-by: Jenkins Tested-by: Maloo Reviewed-by: Nathaniel Clark Reviewed-by: Oleg Drokin --- lustre/llite/statahead.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lustre/llite/statahead.c b/lustre/llite/statahead.c index 1ecb86a..c11c682 100644 --- a/lustre/llite/statahead.c +++ b/lustre/llite/statahead.c @@ -713,6 +713,8 @@ static int ll_statahead_interpret(struct ptlrpc_request *req, list_add_tail(&entry->se_list, &sai->sai_interim_entries); } sai->sai_replied++; + + smp_mb(); if (waitq != NULL) wake_up(waitq); spin_unlock(&lli->lli_sa_lock); -- 1.8.3.1