From mboxrd@z Thu Jan 1 00:00:00 1970 From: tsutomu.owa@toshiba.co.jp Date: Tue, 12 Sep 2017 09:01:46 +0000 Subject: [Cluster-devel] [PATCH 15/18] [try #2] DLM: fix overflow dlm_cb_seq Message-ID: <7c3bf9f6d55d4c7fa1536814d5d2c110@TGXML394.toshiba.local> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit dlm_cb_seq is 64 bits. If dlm_cb_seq overflows and returns to 0, dlm_rem_lkb_callback() will not work properly. Signed-off-by: Tadashi Miyauchi Signed-off-by: Tsutomu Owa --- fs/dlm/ast.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/fs/dlm/ast.c b/fs/dlm/ast.c index 07fed83..562fa8c 100644 --- a/fs/dlm/ast.c +++ b/fs/dlm/ast.c @@ -181,6 +181,8 @@ void dlm_add_cb(struct dlm_lkb *lkb, uint32_t flags, int mode, int status, spin_lock(&dlm_cb_seq_spin); new_seq = ++dlm_cb_seq; + if (!dlm_cb_seq) + new_seq = ++dlm_cb_seq; spin_unlock(&dlm_cb_seq_spin); if (lkb->lkb_flags & DLM_IFL_USER) { -- 2.7.4