Re: [PATCH] PM: hibernate: Get test_resume hibernation mode working again

From: Chen Yu
Date: Wed Apr 05 2023 - 00:43:30 EST


Hi Pavankumar,
On 2023-04-05 at 09:15:02 +0530, Pavankumar Kondeti wrote:
> Commit 39fbef4b0f77 ("PM: hibernate: Get block device exclusively in
> swsusp_check()") changed the opening mode of the block device to
> (FMODE_READ | FMODE_EXCL) during resume. This breaks the test_resume
> hibernation mode as the block device is not available for exclusive
> open. Because the block device is configured as swap during hibernation.
>
> Fix this issue by opening the device in FMODE_READ only in test_resume
> restore path. Cache the flags used in opening the block device so that
> callers of swsusp_close() does not need to worry about test_resume vs
> normal restore.
>
> Fixes: 39fbef4b0f77 ("PM: hibernate: Get block device exclusively in swsusp_check()")
> Signed-off-by: Pavankumar Kondeti <quic_pkondeti@xxxxxxxxxxx>
> ---
> kernel/power/hibernate.c | 21 +++++++++++-----
> kernel/power/power.h | 4 +--
> kernel/power/swap.c | 53 +++++++++++++++++++++++-----------------
> 3 files changed, 48 insertions(+), 30 deletions(-)
>
Thanks for taking a look at this, would the following fix make sense?
https://lore.kernel.org/lkml/20230401165540.322665-1-yu.c.chen@xxxxxxxxx/

thanks,
Chenyu