On 2023/11/30 22:05, 薛国伦 wrote:
Hi kazu:
1. I found that vmlinux of kernel-6.1 did not have symbol nr_swapper_spaces but only have
swapper_spaces
Also check in GKI vmlinux, can not find nr_swapper_spaces
Hmm, upstream kernel 6.1 has it.
$ git show v6.1:mm/swap_state.c
struct address_space *swapper_spaces[MAX_SWAPFILES] __read_mostly;
static unsigned int nr_swapper_spaces[MAX_SWAPFILES] __read_mostly;
It may have some problem in symbol of nr_swapper_spaces
2. I think that crash tools will check nr_swapper_spaces first and then check
*swapper_spaces, swaper_space[] last.
so first check nr_swapper_spaces not found, crash tool can use *swapper_spaces to enhance
compatibility.
The patch i send can resolve this situation which nr_swapper_spaces symbols can not
found.
But I cannot determine whether your patch is correct and should be
applied, without kernel patches or the cause of no nr_swapper_spaces.
Could you please find the information (e.g. links) of the related kernel
patches?
Thanks,
Kazu