Web lists-archives.com

Re: [PATCH -mm] mm, swap: Fix bad swap file entry warning




On Fri, May 31, 2019 at 10:00 AM Mike Kravetz <mike.kravetz@xxxxxxxxxx> wrote:
>
> On 5/30/19 7:41 PM, Huang, Ying wrote:
> > From: Huang Ying <ying.huang@xxxxxxxxx>
> >
> > Mike reported the following warning messages
> >
> >   get_swap_device: Bad swap file entry 1400000000000001
> >
> > This is produced by
> >
> > - total_swapcache_pages()
> >   - get_swap_device()
> >
> > Where get_swap_device() is used to check whether the swap device is
> > valid and prevent it from being swapoff if so.  But get_swap_device()
> > may produce warning message as above for some invalid swap devices.
> > This is fixed via calling swp_swap_info() before get_swap_device() to
> > filter out the swap devices that may cause warning messages.
> >
> > Fixes: 6a946753dbe6 ("mm/swap_state.c: simplify total_swapcache_pages() with get_swap_device()")
> > Signed-off-by: "Huang, Ying" <ying.huang@xxxxxxxxx>
>
> Thank you, this eliminates the messages for me:
>
> Tested-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
>
> --
> Mike Kravetz

Hi,
Did you know about the panic reported here:
https://marc.info/?t=155930773000003&r=1&w=2

"Kernel panic - not syncing: stack-protector: Kernel stack is
corrupted in: write_irq_affinity.isra"

This panic is reported on PowerPC and x86.

In the case of x86, we see a lot of "get_swap_device: Bad swap file entry"
errors before the panic:

...
[   24.404693] get_swap_device: Bad swap file entry 5800000000000001
[   24.408702] get_swap_device: Bad swap file entry 5c00000000000001
[   24.412510] get_swap_device: Bad swap file entry 6000000000000001
[   24.416519] get_swap_device: Bad swap file entry 6400000000000001
[   24.420217] get_swap_device: Bad swap file entry 6800000000000001
[   24.423921] get_swap_device: Bad swap file entry 6c00000000000001
[   24.427685] get_swap_device: Bad swap file entry 7000000000000001
[   24.760678] Kernel panic - not syncing: stack-protector: Kernel
stack is corrupted in: write_irq_affinity.isra.7+0xe5/0xf0
[   24.760975] CPU: 25 PID: 1773 Comm: irqbalance Not tainted
5.2.0-rc2-2fefea438dac #1
[   24.760975] Hardware name: Microsoft Corporation Virtual
Machine/Virtual Machine, BIOS 090007  06/02/2017
[   24.760975] Call Trace:
[   24.760975]  dump_stack+0x46/0x5b
[   24.760975]  panic+0xf8/0x2d2
[   24.760975]  ? write_irq_affinity.isra.7+0xe5/0xf0
[   24.760975]  __stack_chk_fail+0x15/0x20
[   24.760975]  write_irq_affinity.isra.7+0xe5/0xf0
[   24.760975]  proc_reg_write+0x40/0x60
[   24.760975]  vfs_write+0xb3/0x1a0
[   24.760975]  ? _cond_resched+0x16/0x40
[   24.760975]  ksys_write+0x5c/0xe0
[   24.760975]  do_syscall_64+0x4f/0x120
[   24.760975]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
[   24.760975] RIP: 0033:0x7f93bcdde187
[   24.760975] Code: c3 66 90 41 54 55 49 89 d4 53 48 89 f5 89 fb 48
83 ec 10 e8 6b 05 02 00 4c 89 e2 41 89 c0 48 89 ee 89 df b8 01 00 00
00 0f 05 <48> 3d 00 f0 ff ff 77 35 44 89 c7 48 89 44 24 08 e8 a4 05 02
00 48
[   24.760975] RSP: 002b:00007ffc4600d900 EFLAGS: 00000293 ORIG_RAX:
0000000000000001
[   24.760975] RAX: ffffffffffffffda RBX: 0000000000000006 RCX: 00007f93bcdde187
[   24.760975] RDX: 0000000000000008 RSI: 00005595ad515540 RDI: 0000000000000006
[   24.760975] RBP: 00005595ad515540 R08: 0000000000000000 R09: 00005595ab381820
[   24.760975] R10: 0000000000000008 R11: 0000000000000293 R12: 0000000000000008
[   24.760975] R13: 0000000000000008 R14: 00007f93bd0b62a0 R15: 00007f93bd0b5760
[   24.760975] Kernel Offset: 0x3a000000 from 0xffffffff81000000
(relocation range: 0xffffffff80000000-0xffffffffbfffffff)
[   24.760975] ---[ end Kernel panic - not syncing: stack-protector:
Kernel stack is corrupted in: write_irq_affinity.isra.7+0xe5/0xf0 ]---

Thanks,
-- Dexuan