[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5c9043d0bd8257c813435e35c2df2f943543d168.camel@gmx.de>
Date: Tue, 01 Aug 2023 02:33:29 +0200
From: Mike Galbraith <efault@....de>
To: Lorenzo Stoakes <lstoakes@...il.com>, Will Deacon <will@...nel.org>
Cc: lkml <linux-kernel@...r.kernel.org>,
Mark Rutland <mark.rutland@....com>,
wangkefeng.wang@...wei.com, catalin.marinas@....com,
ardb@...nel.org
Subject: Re: arm64: perf test 26 rpi4 oops
On Tue, 2023-08-01 at 01:48 +0200, Mike Galbraith wrote:
> On Tue, 2023-08-01 at 01:27 +0200, Mike Galbraith wrote:
> > On Mon, 2023-07-31 at 22:54 +0100, Lorenzo Stoakes wrote:
> > >
> > > Posted a fix at:-
> > >
> > > https://lore.kernel.org/all/20230731215021.70911-1-lstoakes@gmail.com/
> > >
> > > Please give that a go and indicate whether that resolves the issue.
> >
> > Yup, that fixed the oops issue.
>
> Heh, using Jiri's pick a spot from /proc/kallsyms test...
>
> root@...4:~# cat /proc/kallsyms | grep ksys_read
> ffffffe950baf7f8 T ksys_readahead
> ffffffe950c38708 T ksys_read
> root@...4:~# objdump -d --start-address=0xffffffe950c38708 --stop-address=0xffffffe950c3870a /proc/kcore
>
> /proc/kcore: file format elf64-littleaarch64
>
>
> Disassembly of section load1:
>
> ffffffe950c38708 <load1+0x238708>:
> ffffffe950c38708: Address 0xffffffe950c38708 is out of bounds.
>
> objdump: error: /proc/kcore(load2) is too large (0x3de8000000 bytes)
> objdump: Reading section load2 failed because: memory exhausted
> root@...4:~# dmesg|tail -2
> [ 979.003019] __vm_enough_memory: pid: 12439, comm: objdump, not enough memory for the allocation
> [ 979.003080] __vm_enough_memory: pid: 12439, comm: objdump, not enough memory for the allocation
crash> p ksys_read
ksys_read = $2 =
{ssize_t (unsigned int, char *, size_t)} 0xffffffe950c38710 <ksys_read>
crash> dis 0xffffffe950c38710 10
0xffffffe950c38710 <ksys_read+8>: paciasp
0xffffffe950c38714 <ksys_read+12>: stp x29, x30, [sp, #-64]!
0xffffffe950c38718 <ksys_read+16>: mrs x3, sp_el0
0xffffffe950c3871c <ksys_read+20>: mov x29, sp
0xffffffe950c38720 <ksys_read+24>: stp x21, x22, [sp, #32]
0xffffffe950c38724 <ksys_read+28>: mov x21, x1
0xffffffe950c38728 <ksys_read+32>: mov x22, x2
0xffffffe950c3872c <ksys_read+36>: ldr x1, [x3, #1320]
0xffffffe950c38730 <ksys_read+40>: str x1, [sp, #56]
0xffffffe950c38734 <ksys_read+44>: mov x1, #0x0 // #0
crash>
Ah, so arm64 kallsyms fibs a little.. x64_64 doesn't.
root@...4:~# objdump -d --start-address=0xffffffe950c38710 --stop-address=0xffffffe950c38734 /proc/kcore
/proc/kcore: file format elf64-littleaarch64
Disassembly of section load1:
ffffffe950c38710 <load1+0x238710>:
ffffffe950c38710: d503233f paciasp
ffffffe950c38714: a9bc7bfd stp x29, x30, [sp, #-64]!
ffffffe950c38718: d5384103 mrs x3, sp_el0
ffffffe950c3871c: 910003fd mov x29, sp
ffffffe950c38720: a9025bf5 stp x21, x22, [sp, #32]
ffffffe950c38724: aa0103f5 mov x21, x1
ffffffe950c38728: aa0203f6 mov x22, x2
ffffffe950c3872c: f9429461 ldr x1, [x3, #1320]
ffffffe950c38730: f9001fe1 str x1, [sp, #56]
objdump: error: /proc/kcore(load2) is too large (0x3de8000000 bytes)
objdump: Reading section load2 failed because: memory exhausted
root@...4:~#
Powered by blists - more mailing lists