Re: Regression with kernel 6.3 "kernel BUG at include/linux/swapops.h:472!"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Helge Deller wrote...

> Since you run the 32-bit kernel, huge-pages are not involved as they
> aren't available in the 32-bit kernels.
> So I think swapping is triggering it.
> You could try to find a test program which triggers swapping, e.g. LTS testcases?
> Another test could be to enable CONFIG_MIGRATION again and disable
> all swap spaces and see if it survives.

Well, turns out I'm not using swap at all. But the "memory under
pressure" seemed right, and I could easily trigger the crash by
allowcating almost the entire available memory[1].

Then bisecting led to

commit 6d239fc78c0b0c687e5408573350714e6e789d71
Author: David Hildenbrand <david@xxxxxxxxxx>
Date:   Fri Jan 13 18:10:16 2023 +0100

    parisc/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE

    Let's support __HAVE_ARCH_PTE_SWP_EXCLUSIVE by using the yet-unused
    _PAGE_ACCESSED location in the swap PTE.  Looking at pte_present() and
    pte_none() checks, there seems to be no actual reason why we cannot use
    it: we only have to make sure we're not using _PAGE_PRESENT.

    Reusing this bit avoids having to steal one bit from the swap offset.

    Link: https://lkml.kernel.org/r/20230113171026.582290-17-david@xxxxxxxxxx
    Signed-off-by: David Hildenbrand <david@xxxxxxxxxx>
    Cc: "James E.J. Bottomley" <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx>
    Cc: Helge Deller <deller@xxxxxx>
    Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>

Does this make sense?

    Christoph

[1] Total is 1 Gbyte, and running
    | dd if=/dev/zero bs=896M count=1 | pv --rate-limit=1k >/dev/null
    might not be the best style but does the trick: Wait for pv to
    count up to a minute, then ^C it. If the host is still okay after
    that, it's considered "good".

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux SoC]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux