Whamcloud - gitweb
LU-10467 lustre: convert users of back_to_sleep() 80/35980/11
authorMr NeilBrown <neilb@suse.com>
Sat, 18 Jan 2020 14:39:47 +0000 (09:39 -0500)
committerOleg Drokin <green@whamcloud.com>
Sat, 8 Feb 2020 03:59:57 +0000 (03:59 +0000)
commitca6c35cab141597809c6f3a58102fac8ac86104a
tree261a30cebf7f4f8a6c56c0449192c820ac35c38b
parent5e30a2c06176f50f5e17aba68fdae7e38d922d33
LU-10467 lustre: convert users of back_to_sleep()

When back_to_sleep() is passed to l_wait_event as
the on_timeout hander, the effect is to potentially wait twice.
The first wait ignores all signals and has a timeout.
If the timeout fires without the event occuring, the l_wait_event()
goes "back to sleep" indefinitely, but this time with fatal
signals unblocked.

This pattern can be made more clear with two separate wait calls:
  wait_event_idle_timeout() followed by l_wait_event_abortable().

Change-Id: I3536e33b4d982f37c960f31df1ea0d9808f9ced7
Signed-off-by: Mr NeilBrown <neilb@suse.com>
Reviewed-on: https://review.whamcloud.com/35980
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Petros Koutoupis <pkoutoupis@cray.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/osp/osp_precreate.c
lustre/ptlrpc/import.c
lustre/ptlrpc/ptlrpcd.c