Whamcloud - gitweb
LU-10467 lustre: use wait_event_idle() where appropriate. 71/35971/10
authorMr NeilBrown <neilb@suse.com>
Mon, 26 Aug 2019 05:34:17 +0000 (15:34 +1000)
committerOleg Drokin <green@whamcloud.com>
Fri, 6 Dec 2019 00:58:40 +0000 (00:58 +0000)
commitfa9c4d0fee01d30d538a819f370f281431a43f68
tree28b68ca30a7c2bb4e1238d790039aeeca9227e0d
parentd0ca764a1a9116238f64f4f6e1ded116d5d28ed0
LU-10467 lustre: use wait_event_idle() where appropriate.

When l_wait_event() is passed an 'lwi' which is initialised
to all zeroes, it behaves exactly like wait_event_idle():
 - no timeout
 - not interrupted by any signal
 - doesn't add to load average.

So change all these instances to wait_event_idle(), or in two cases,
to wait_event_idle_exclusive().

There are three ways that lwi gets set to all zeros:
struct l_wait_info lwi = { 0 };
lwi = LWI_INTR(NULL, NULL);
memset(&lwi, 0, sizeof(lwi));

Change-Id: Ia6723cbe248ce067331a002e5e9d54796739c08a
Signed-off-by: Mr NeilBrown <neilb@suse.de>
Reviewed-on: https://review.whamcloud.com/35971
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Petros Koutoupis <pkoutoupis@cray.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Shaun Tancheff <stancheff@cray.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
35 files changed:
lustre/ldlm/ldlm_lib.c
lustre/ldlm/ldlm_lock.c
lustre/ldlm/ldlm_lockd.c
lustre/ldlm/ldlm_request.c
lustre/lfsck/lfsck_engine.c
lustre/lfsck/lfsck_layout.c
lustre/lfsck/lfsck_lib.c
lustre/lfsck/lfsck_namespace.c
lustre/llite/pcc.c
lustre/llite/statahead.c
lustre/lod/lod_dev.c
lustre/lov/lov_object.c
lustre/mgc/mgc_request.c
lustre/mgs/mgs_nids.c
lustre/obdclass/cl_io.c
lustre/obdclass/genops.c
lustre/obdclass/lu_object.c
lustre/obdclass/scrub.c
lustre/ofd/ofd_io.c
lustre/osc/osc_cache.c
lustre/osc/osc_object.c
lustre/osd-ldiskfs/osd_scrub.c
lustre/osd-zfs/osd_scrub.c
lustre/osp/lwp_dev.c
lustre/osp/osp_dev.c
lustre/osp/osp_precreate.c
lustre/osp/osp_sync.c
lustre/osp/osp_trans.c
lustre/ptlrpc/pinger.c
lustre/ptlrpc/service.c
lustre/quota/qmt_lock.c
lustre/quota/qsd_reint.c
lustre/quota/qsd_writeback.c
lustre/target/tgt_handler.c
lustre/target/update_trans.c