On Sun, Dec 4, 2016 at 6:05 AM, Rabin Vincent <rabin@xxxxxx> wrote: > On Sat, Dec 03, 2016 at 01:15:23PM -0800, Sagar Borikar wrote: >> > So the first error should be fixed properly before attempting "mod". What >> > kernel version is this and what page size do to use? >> >> 4.4.20 kernel and page size is 16K > > I'd only tested 4K pages before but I've now provisioned a QEMU Malta machine > with 16K pages. I've now sent a patch to the list which fixes the > definition of __PGD_ORDER. With only that patch, the pgd size errors > are gone and "mod" works for my 16K kernel/dump: > > crash> sym -n swapper_pg_dir > 80540000 (B) swapper_pg_dir > 80544000 (B) invalid_pte_table > crash> sys > KERNEL: vmlinux-16k-unload > DUMPFILES: /var/tmp/ramdump_elf_wZxP65 [temporary ELF header] > rawdump-16k-unload > CPUS: 1 > DATE: Sun Dec 4 14:46:08 2016 > UPTIME: 00:00:21 > LOAD AVERAGE: 0.31, 0.07, 0.02 > TASKS: 54 > NODENAME: buildroot > RELEASE: 4.4.27-dirty > VERSION: #12 SMP Sun Dec 4 14:45:32 CET 2016 > MACHINE: mips (unknown Mhz) > MEMORY: 128 MB > PANIC: "Kernel panic - not syncing: Fatal exception" > crash> help -m | grep -A7 pagesize > pagesize: 16384 > pageshift: 14 > pagemask: ffffffffffffc000 > pageoffset: 3fff > pgdir_shift: 26 > ptrs_per_pgd: 64 > ptrs_per_pte: 4096 > stacksize: 16384 > crash> mod > MODULE NAME SIZE OBJECT FILE > c01050c0 null_blk 5333 (not loaded) [CONFIG_KALLSYMS] > > With the fixed __PGD_ORDER, PGD_ORDER gets the value zero and that is > correct for my kernel. __PGD_ORDER isn't used anywhere else that in > PGD_ORDER, so even your hack of forcing PGD_ORDER to zero would have > fixed "mod" for me. > > So there could be some other additional problem in your case besides the > incorrect __PGD_ORDER. Could you please apply the fix and run crash > with the -d8 argument and post the full log? Thanks. With your earlier patches, its same result as I was getting. i.e please wait... (gathering module symbol data) WARNING: cannot access vmalloc'd module memory crash> mod mod: cannot access vmalloc'd module memory Here is detailed info of the help -m and mach output flags: 1 (KSYMS_START) [0/153] kvbase: 80000000 identity_map_base: 80000000 pagesize: 16384 pageshift: 14 pagemask: ffffffffffffc000 pageoffset: 3fff pgdir_shift: 26 ptrs_per_pgd: 64 ptrs_per_pte: 4096 stacksize: 16384 hz: 1000 memsize: 261865472 (0xf9bc000) bits: 32 nr_irqs: 360 eframe_search: mips_eframe_search() back_trace: mips_back_trace_cmd() processor_speed: mips_processor_speed() uvtop: mips_uvtop() kvtop: mips_kvtop() get_task_pgd: mips_get_task_pgd() dump_irq: generic_dump_irq() show_interrupts: generic_show_interrupts() get_irq_affinity: generic_get_irq_affinity() get_stack_frame: mips_get_stack_frame() get_stackbase: generic_get_stackbase() get_stacktop: generic_get_stacktop() translate_pte: mips_translate_pte() memory_size: generic_memory_size() vmalloc_start: mips_vmalloc_start() is_task_addr: mips_is_task_addr() verify_symbol: mips_verify_symbol() dis_filter: generic_dis_filter() cmd_mach: mips_cmd_mach() get_smp_cpus: mips_get_smp_cpus() is_kvaddr: generic_is_kvaddr() is_uvaddr: generic_is_uvaddr() verify_paddr: generic_verify_paddr() init_kernel_pgd: NULL value_to_symbol: generic_machdep_value_to_symbol() line_number_hooks: NULL last_pgd_read: 82c30000 last_pmd_read: 0 last_ptbl_read: 3018000 pgd: 8a71b70 pmd: 0 ptbl: 8a75b78 section_size_bits: 26 max_physmem_bits: 32 sections_per_root: 0 machspec: 8696240 crash> mach HZ: 1000 PAGE SIZE: 16384 _PAGE_PRESENT: 00000001 _PAGE_READ: 00000020 _PAGE_WRITE: 00000002 _PAGE_ACCESSED: 00000004 _PAGE_MODIFIED: 00000008 _PAGE_GLOBAL: 00000040 _PAGE_VALID: 00000080 _PAGE_NO_READ: 00000020 _PAGE_NO_EXEC: 00000010 _PAGE_DIRTY: 00000100 Please find the attached log with -d8 output. Thanks Sagar > > -- > Crash-utility mailing list > Crash-utility@xxxxxxxxxx > https://www.redhat.com/mailman/listinfo/crash-utility
Attachment:
crash.log
Description: Binary data
-- Crash-utility mailing list Crash-utility@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/crash-utility