lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <fe00c756-8c1c-4219-af16-8bb9f6300bbc@linux.alibaba.com>
Date: Wed, 14 May 2025 17:31:02 +0800
From: Baolin Wang <baolin.wang@...ux.alibaba.com>
To: Kemeng Shi <shikemeng@...weicloud.com>, hughd@...gle.com,
 akpm@...ux-foundation.org
Cc: linux-mm@...ck.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 4/5] mm: shmem: keep inode in swaplist when failed to
 allocate swap entry in shmem_writepage()



On 2025/5/15 00:50, Kemeng Shi wrote:
> Even if we fail to allocate a swap entry, the inode might have previously
> allocated entry and we might take inode containing swap entry off swaplist.
> As a result, try_to_unuse() may enter a potential dead loop to repeatedly
> look for inode and clean it's swap entry.
> Address this by keeping inode in swaplist even if we fail to allocate
> swap entry as it does not pose significant problem to keep inode without
> swap entry in swaplist.
> 
> Fixes: b487a2da3575b ("mm, swap: simplify folio swap allocation")
> Signed-off-by: Kemeng Shi <shikemeng@...weicloud.com>
> ---
>   mm/shmem.c | 2 --
>   1 file changed, 2 deletions(-)
> 
> diff --git a/mm/shmem.c b/mm/shmem.c
> index 0fed94c2bc09..dfd2f730833c 100644
> --- a/mm/shmem.c
> +++ b/mm/shmem.c
> @@ -1651,8 +1651,6 @@ static int shmem_writepage(struct page *page, struct writeback_control *wbc)
>   		BUG_ON(folio_mapped(folio));
>   		return swap_writepage(&folio->page, wbc);
>   	}
> -
> -	list_del_init(&info->swaplist);

If 'info->swapped' is 0, we can still remove it?

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ