X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2Fosp%2Fosp_precreate.c;h=23b7713734607ce8b0ae64343bfe1db94628df7f;hp=6e55a239ff7b9d5cb23d7e275006ef25b78ccdb2;hb=ca6c35cab141597809c6f3a58102fac8ac86104a;hpb=5e30a2c06176f50f5e17aba68fdae7e38d922d33 diff --git a/lustre/osp/osp_precreate.c b/lustre/osp/osp_precreate.c index 6e55a23..23b7713 100644 --- a/lustre/osp/osp_precreate.c +++ b/lustre/osp/osp_precreate.c @@ -1200,8 +1200,6 @@ static int osp_precreate_thread(void *_arg) { struct osp_device *d = _arg; struct ptlrpc_thread *thread = &d->opd_pre_thread; - struct l_wait_info lwi2 = LWI_TIMEOUT(cfs_time_seconds(5), - back_to_sleep, NULL); struct lu_env env; int rc; @@ -1267,8 +1265,12 @@ static int osp_precreate_thread(void *_arg) } if (osp_statfs_update(&env, d)) { - l_wait_event(d->opd_pre_waitq, - !osp_precreate_running(d), &lwi2); + if (wait_event_idle_timeout(d->opd_pre_waitq, + !osp_precreate_running(d), + cfs_time_seconds(5)) == 0) + l_wait_event_abortable( + d->opd_pre_waitq, + !osp_precreate_running(d)); continue; }