Whamcloud - gitweb
LU-15340 llite: Delay dput in ll_dirty_page_discard_warn
authorOleg Drokin <green@whamcloud.com>
Wed, 8 Dec 2021 04:30:06 +0000 (23:30 -0500)
committerAndreas Dilger <adilger@whamcloud.com>
Wed, 9 Mar 2022 17:48:30 +0000 (17:48 +0000)
commit763ee3ab83da3ebe880498aac6919b3343a0fd50
tree192a8bb6e3fcdbe980c4180155f4dc6899bf62c0
parent24a26fb3b203adcc7f26381b2cd3f66bae8668e9
LU-15340 llite: Delay dput in ll_dirty_page_discard_warn

Otherwise we can be final dput and need to wait for pages
to clear which is bad because this is called from ptlrpcd
that is not supposed to block esp. for network traffic as
it can cause livelocks if it happens to be needed to kill
the very same RPC we are waiting on.

Additionally pass in the inode from IO since the page
we are using might come from directio and that is
probably not even a valid inode.

Lustre-change: https://review.whamcloud.com/45784
Lustre-commit: a1d75780ba19cfca53cbacf0d38e8d7df540b209

Fixes: 624a3ac23393 ("LU-921 llite: warning in case of discarding dirty pages")
Change-Id: Ie2f1a34047145202c11a4e1a0b18b2e01d9e4601
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-on: https://review.whamcloud.com/46635
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
lustre/llite/llite_internal.h
lustre/llite/llite_lib.c
lustre/llite/vvp_page.c