On Wed, May 25, 2016 at 11:44:23AM -0400, Dave Anderson wrote: > > ----- Original Message ----- > > > > > > Are you using a mainline kernel (final v4.6, not -rcX)? > > > > Good point. When I configured my arm64 test system, I installed the latest > > Fedora kernel available at the time (4.6.0-0.rc7.git2.1.fc25), but it is based > > upon linux-4.5.tar.xz. I see now that there is a kernel-4.6.0-1.fc25 available > > that is based upon linux-4.6.tar.xz. I'll update the system. > > Here's the output from the updated non-randomized live system: > > crash> sys > KERNEL: /usr/lib/debug/lib/modules/4.6.0-1.fc25.aarch64/vmlinux > DUMPFILE: /dev/crash > CPUS: 8 > DATE: Wed May 25 11:30:06 2016 > UPTIME: 00:18:43 > LOAD AVERAGE: 0.01, 0.14, 0.17 > TASKS: 200 > NODENAME: apm-mustang-ev3-36.khw.lab.eng.bos.redhat.com > RELEASE: 4.6.0-1.fc25.aarch64 > VERSION: #1 SMP Mon May 16 23:11:08 UTC 2016 > MACHINE: aarch64 (unknown Mhz) > MEMORY: 16 GB > crash> log > ... [ cut ] ... > [ 0.000000] Virtual kernel memory layout: > [ 0.000000] modules : 0xfffffc0000000000 - 0xfffffc0008000000 ( 128 MB) > [ 0.000000] vmalloc : 0xfffffc0008000000 - 0xfffffdfedfff0000 ( 2043 GB) > [ 0.000000] .text : 0xfffffc0008080000 - 0xfffffc0008890000 ( 8256 KB) > .rodata : 0xfffffc0008890000 - 0xfffffc0008c10000 ( 3584 KB) > .init : 0xfffffc0008c10000 - 0xfffffc0008d50000 ( 1280 KB) > .data : 0xfffffc0008d50000 - 0xfffffc0008eaac00 ( 1387 KB) > [ 0.000000] vmemmap : 0xfffffdfee0000000 - 0xfffffdffe0000000 ( 4 GB maximum) > 0xfffffdfee0000000 - 0xfffffdfee1000000 ( 16 MB actual) > [ 0.000000] fixed : 0xfffffdfffe7d0000 - 0xfffffdfffec00000 ( 4288 KB) > [ 0.000000] PCI I/O : 0xfffffdfffee00000 - 0xfffffdffffe00000 ( 16 MB) > [ 0.000000] memory : 0xfffffe0000000000 - 0xfffffe0400000000 ( 16384 MB) > ... > > The starting addresses are OK, but still the vmemmap range looks suspect: > > crash> help -m > ... [ cut ] ... > VA_BITS: 42 > userspace_top: 0000040000000000 > page_offset: fffffe0000000000 > vmalloc_start_addr: fffffc0008000000 > vmalloc_end: fffffdff5ffeffff > modules_vaddr: fffffc0000000000 > modules_end: fffffc0007ffffff > vmemmap_vaddr: fffffdff80000000 ??? > vmemmap_end: fffffdffffffffff > kimage_text: fffffc0008080000 > kimage_end: fffffc0009070000 > kimage_voffset: 0000000000000000 > phys_offset: 4000000000 > ... In my environment, Virtual kernel memory layout: modules : 0xffff000000000000 - 0xffff000008000000 ( 128 MB) vmalloc : 0xffff000008000000 - 0xffff7dffbfff0000 (129022 GB) .text : 0xffff000008080000 - 0xffff0000087e0000 ( 7552 KB) .rodata : 0xffff0000087e0000 - 0xffff000008b10000 ( 3264 KB) .init : 0xffff000008b10000 - 0xffff000008c00000 ( 960 KB) .data : 0xffff000008c00000 - 0xffff000008ca1e00 ( 648 KB) .bss : 0xffff000008ca1e00 - 0xffff000008ce4b38 ( 268 KB) fixed : 0xffff7dfffe7fd000 - 0xffff7dfffec00000 ( 4108 KB) PCI I/O : 0xffff7dfffee00000 - 0xffff7dffffe00000 ( 16 MB) vmemmap : 0xffff7e0000000000 - 0xffff800000000000 ( 2048 GB maximum) 0xffff7e0000000000 - 0xffff7e0000900000 ( 9 MB actual) memory : 0xffff800000000000 - 0xffff800024000000 ( 576 MB) and, $ crash ... KERNEL: ./vmlinux.0526_64_48_nok DUMPFILE: vmcore.0526_64_48_nok CPUS: 8 [OFFLINE: 7] DATE: Thu May 26 12:04:05 2016 UPTIME: 00:00:49 LOAD AVERAGE: 0.13, 0.04, 0.01 TASKS: 100 NODENAME: buildroot_le RELEASE: 4.6.0+ VERSION: #1 SMP PREEMPT Thu May 26 12:02:41 JST 2016 MACHINE: aarch64 (unknown Mhz) MEMORY: 512 MB PANIC: "sysrq: SysRq : Trigger a crash" PID: 1050 COMMAND: "sh" TASK: ffff800020679c00 [THREAD_INFO: ffff8000205fc000] CPU: 0 STATE: TASK_RUNNING (SYSRQ) crash> help -m ... VA_BITS: 48 userspace_top: 0001000000000000 page_offset: ffff800000000000 vmalloc_start_addr: ffff000008000000 vmalloc_end: ffff7fdfdffeffff modules_vaddr: ffff000000000000 modules_end: ffff000007ffffff vmemmap_vaddr: ffff7fe000000000 vmemmap_end: ffff7fffffffffff kimage_text: ffff000008080000 kimage_end: ffff000008de0000 kimage_voffset: fffeffff88000000 phys_offset: 80000000 > > crash> kmem fffffdff80000000 > kmem: WARNING: cannot make virtual-to-physical translation: fffffdff80000000 > fffffdff80000000: kernel virtual address not found in mem map > crash> Yeah, I noticed this issue. But the current crash doesn't support 4-level translation for 4KB now, I changed the kernel configuration with 64KB page size and with 48 bit VA (so 3-level), then confirmed that it just worked on non-randomized kernel, but not on randomized kernel. > The vmemmap address from the log reads OK: > > crash> kmem -p | head -10 > PAGE PHYSICAL MAPPING INDEX CNT FLAGS > fffffdfee0000000 4000000000 fffffe03dc99f430 1b 2 4003c referenced,uptodate,dirty,lru,swapbacked > fffffdfee0000040 4000010000 fffffe03dc99f430 1c 2 4003c referenced,uptodate,dirty,lru,swapbacked > fffffdfee0000080 4000020000 fffffe03dc99f430 1d 2 4003c referenced,uptodate,dirty,lru,swapbacked > fffffdfee00000c0 4000030000 fffffe03dc99f430 1e 2 4003c referenced,uptodate,dirty,lru,swapbacked > fffffdfee0000100 4000040000 fffffe03dc99f430 1f 2 4003c referenced,uptodate,dirty,lru,swapbacked > fffffdfee0000140 4000050000 fffffe03dc99f430 20 2 40078 uptodate,dirty,lru,active,swapbacked > fffffdfee0000180 4000060000 fffffe03dc99f430 21 2 4003c referenced,uptodate,dirty,lru,swapbacked > fffffdfee00001c0 4000070000 fffffe03dc99f430 22 2 40078 uptodate,dirty,lru,active,swapbacked > fffffdfee0000200 4000080000 0 0 1 400 reserved > ... [ cut ] ... > fffffdfee0fffd80 43fff60000 0 0 1 4000000000000400 reserved > fffffdfee0fffdc0 43fff70000 0 0 1 4000000000000400 reserved > fffffdfee0fffe00 43fff80000 0 0 1 4000000000000400 reserved > fffffdfee0fffe40 43fff90000 0 0 1 4000000000000400 reserved > fffffdfee0fffe80 43fffa0000 0 0 1 4000000000000400 reserved > fffffdfee0fffec0 43fffb0000 0 0 1 4000000000000400 reserved > fffffdfee0ffff00 43fffc0000 0 0 1 4000000000000400 reserved > fffffdfee0ffff40 43fffd0000 0 0 1 4000000000000400 reserved > fffffdfee0ffff80 43fffe0000 0 0 1 4000000000000400 reserved > fffffdfee0ffffc0 43ffff0000 0 0 1 4000000000000400 reserved > crash> > > > And again, the page_offset is fffffe0000000000 with a kernel VA_BITS configuration of 42: > > kernel-4.6.0-aarch64.config:CONFIG_ARM64_VA_BITS_42=y > kernel-4.6.0-aarch64.config:# CONFIG_ARM64_VA_BITS_48 is not set > kernel-4.6.0-aarch64.config:CONFIG_ARM64_VA_BITS=42 I think it looks OK. Thanks, -Takahiro AKASHI > Dave > > -- > Crash-utility mailing list > Crash-utility@xxxxxxxxxx > https://www.redhat.com/mailman/listinfo/crash-utility -- Thanks, -Takahiro AKASHI -- Crash-utility mailing list Crash-utility@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/crash-utility