Whamcloud - gitweb
LU-16913 quota: notify newest lqe in qmt_set_id_notify 37/53637/1
authorSergey Cheremencev <scherementsev@ddn.com>
Wed, 10 Jan 2024 18:56:03 +0000 (21:56 +0300)
committerSergey Cheremencev <scherementsev@ddn.com>
Wed, 10 Jan 2024 18:57:13 +0000 (21:57 +0300)
commit2832874970232fb5e1deedbf89b7a482518e6886
tree249d643035d701e4c2a5b08e8d14a4ece16ba7fa
parent3c66185c84c94c47f5d8031b92165c68ef666e0e
LU-16913 quota: notify newest lqe in qmt_set_id_notify

It is possible that lqe_locate may call lqe_find inside
qmt_pool_lqes_lookup_spec and insert the 2nd lqe into
lqs_hash during processing the previous one. Do not add the
1st lqe to be processed by qmt_reba_thread in qmt_id_lock_notify,
as this lqe will be freed in the end of lqe_locate_find due
to the race with the 2nd that is already exist in lqs_hash.
This fix should potentially fix the following assertion:

  (qmt_lock.c:950:qmt_id_lock_glimpse()) ASSERTION( lqe->lqe_gl ) failed:
  (qmt_lock.c:950:qmt_id_lock_glimpse()) LBUG

Fixes: 09f9fb3211 ("LU-11023 quota: quota pools for OSTs")
Signed-off-by: Sergey Cheremencev <scherementsev@ddn.com>
Change-Id: I3a3114d880077c87e61fccf4f32e3845bd42d842
lustre/quota/qmt_handler.c