Whamcloud - gitweb
LU-4505 quota: race of edquot updating 15/9315/2
authorNiu Yawei <yawei.niu@intel.com>
Wed, 22 Jan 2014 04:24:00 +0000 (23:24 -0500)
committerOleg Drokin <oleg.drokin@intel.com>
Fri, 21 Feb 2014 03:48:23 +0000 (03:48 +0000)
commitd66d14cfa91466c28f61798eef2c065fef8bf04e
tree29011d5d264d54e7c1b54fd4ca6080c47dc31f8c
parent3e2d5806b50061ee0faa8377bcabb66201baad94
LU-4505 quota: race of edquot updating

The slave edquot flag could be set mistakenly as following:

- slave A acquires quota from master, master found that the
  user is running out of quota, set edquot in reply;
- another slave deletes files and release quota to master,
  master clears edquot and notify all slaves by glimpse;
- glimpse reaches slave A before the reply of dqacq, so
  edquot flag will be set on slave A at the end.

Given that edquot can't be fully trusted, it should only be
revalidated every 5 seconds on the sync acquire path.

Lustre-commit: 109fef5b053490549726f7b5abc9ba840d3a4ae0
Lustre-change: http://review.whamcloud.com/8954

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: I553bd1bc3aa6df6c449341e56564073043afd3da
Reviewed-on: http://review.whamcloud.com/9315
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lustre/quota/lquota_internal.h
lustre/quota/qsd_handler.c
lustre/quota/qsd_internal.h
lustre/quota/qsd_lock.c