Re: [linux-next:master] [fs] cdc4ad36a8: kernel_BUG_at_include/linux/page-flags.h

Ryan Roberts
2024-08-07T07:38:52Z

On 07/08/2024 04:46, Matthew Wilcox wrote:
> On Tue, Aug 06, 2024 at 10:26:17PM +0800, kernel test robot wrote:
>> kernel test robot noticed "kernel_BUG_at_include/linux/page-flags.h" on:
>>
>> commit: cdc4ad36a871b7ac43fcc6b2891058d332ce60ce ("fs: Convert aops->write_begin to take a folio")
>> https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git master
>>
>> [test failed on linux-next/master 1e391b34f6aa043c7afa40a2103163a0ef06d179]
>>
>> in testcase: boot
>
> This patch should fix it.
>
> Christian, can you squash the fix in?
>
>
> diff --git a/mm/shmem.c b/mm/shmem.c
> index 7d28304aea0f..66ff87417090 100644
> --- a/mm/shmem.c
> +++ b/mm/shmem.c
> @@ -2904,7 +2904,8 @@ shmem_write_begin(struct file *file, struct address_space *mapping,
> if (ret)
> return ret;
>
> - if (folio_test_has_hwpoisoned(folio)) {
> + if (folio_test_hwpoison(folio) ||
> + (folio_test_large(folio) && folio_test_has_hwpoisoned(folio))) {

Reviewed-by: Ryan Roberts <ryan.roberts@arm.com>
Tested-by: Ryan Roberts <ryan.roberts@arm.com>

> folio_unlock(folio);
> folio_put(folio);
> return -EIO;