Message ID | 20191022232155.GA26174@home.buserror.net (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | Pull request: scottwood/linux.git next | expand |
Hi Michael, Can you pull this to linux-next so that we can test it on linux-next for some time? Thanks, Jason On 2019/10/23 7:21, Scott Wood wrote: > This contains KASLR support for book3e 32-bit. > > The following changes since commit 612ee81b9461475b5a5612c2e8d71559dd3c7920: > > powerpc/papr_scm: Fix an off-by-one check in papr_scm_meta_{get, set} (2019-10-10 20:15:53 +1100) > > are available in the Git repository at: > > git://git.kernel.org/pub/scm/linux/kernel/git/scottwood/linux.git next > > for you to fetch changes up to 9df1ef3f1376ec5d3a1b51a4546c94279bcd88ca: > > powerpc/fsl_booke/32: Document KASLR implementation (2019-10-21 16:09:16 -0500) > > ---------------------------------------------------------------- > Jason Yan (12): > powerpc: unify definition of M_IF_NEEDED > powerpc: move memstart_addr and kernstart_addr to init-common.c > powerpc: introduce kernstart_virt_addr to store the kernel base > powerpc/fsl_booke/32: introduce create_kaslr_tlb_entry() helper > powerpc/fsl_booke/32: introduce reloc_kernel_entry() helper > powerpc/fsl_booke/32: implement KASLR infrastructure > powerpc/fsl_booke/32: randomize the kernel image offset > powerpc/fsl_booke/kaslr: clear the original kernel if randomized > powerpc/fsl_booke/kaslr: support nokaslr cmdline parameter > powerpc/fsl_booke/kaslr: dump out kernel offset information on panic > powerpc/fsl_booke/kaslr: export offset in VMCOREINFO ELF notes > powerpc/fsl_booke/32: Document KASLR implementation > > Documentation/powerpc/kaslr-booke32.rst | 42 +++ > arch/powerpc/Kconfig | 11 + > arch/powerpc/include/asm/nohash/mmu-book3e.h | 11 +- > arch/powerpc/include/asm/page.h | 7 + > arch/powerpc/kernel/early_32.c | 5 +- > arch/powerpc/kernel/exceptions-64e.S | 12 +- > arch/powerpc/kernel/fsl_booke_entry_mapping.S | 25 +- > arch/powerpc/kernel/head_fsl_booke.S | 61 +++- > arch/powerpc/kernel/machine_kexec.c | 1 + > arch/powerpc/kernel/misc_64.S | 7 +- > arch/powerpc/kernel/setup-common.c | 20 ++ > arch/powerpc/mm/init-common.c | 7 + > arch/powerpc/mm/init_32.c | 5 - > arch/powerpc/mm/init_64.c | 5 - > arch/powerpc/mm/mmu_decl.h | 11 + > arch/powerpc/mm/nohash/Makefile | 1 + > arch/powerpc/mm/nohash/fsl_booke.c | 8 +- > arch/powerpc/mm/nohash/kaslr_booke.c | 401 ++++++++++++++++++++++++++ > 18 files changed, 587 insertions(+), 53 deletions(-) > create mode 100644 Documentation/powerpc/kaslr-booke32.rst > create mode 100644 arch/powerpc/mm/nohash/kaslr_booke.c > >
On Thu, 2019-10-31 at 10:01 +0800, Jason Yan wrote: > Hi Michael, Can you pull this to linux-next so that we can test it on > linux-next for some time? > > Thanks, > Jason FWIW, my tree is included in linux-next. -Scott
Jason Yan <yanaijie@huawei.com> writes: > Hi Michael, Can you pull this to linux-next so that we can test it on > linux-next for some time? Yes I plan to, I've just been busy doing other things. As Scott said it's in linux-next anyway. cheers > On 2019/10/23 7:21, Scott Wood wrote: >> This contains KASLR support for book3e 32-bit. >> >> The following changes since commit 612ee81b9461475b5a5612c2e8d71559dd3c7920: >> >> powerpc/papr_scm: Fix an off-by-one check in papr_scm_meta_{get, set} (2019-10-10 20:15:53 +1100) >> >> are available in the Git repository at: >> >> git://git.kernel.org/pub/scm/linux/kernel/git/scottwood/linux.git next >> >> for you to fetch changes up to 9df1ef3f1376ec5d3a1b51a4546c94279bcd88ca: >> >> powerpc/fsl_booke/32: Document KASLR implementation (2019-10-21 16:09:16 -0500) >> >> ---------------------------------------------------------------- >> Jason Yan (12): >> powerpc: unify definition of M_IF_NEEDED >> powerpc: move memstart_addr and kernstart_addr to init-common.c >> powerpc: introduce kernstart_virt_addr to store the kernel base >> powerpc/fsl_booke/32: introduce create_kaslr_tlb_entry() helper >> powerpc/fsl_booke/32: introduce reloc_kernel_entry() helper >> powerpc/fsl_booke/32: implement KASLR infrastructure >> powerpc/fsl_booke/32: randomize the kernel image offset >> powerpc/fsl_booke/kaslr: clear the original kernel if randomized >> powerpc/fsl_booke/kaslr: support nokaslr cmdline parameter >> powerpc/fsl_booke/kaslr: dump out kernel offset information on panic >> powerpc/fsl_booke/kaslr: export offset in VMCOREINFO ELF notes >> powerpc/fsl_booke/32: Document KASLR implementation >> >> Documentation/powerpc/kaslr-booke32.rst | 42 +++ >> arch/powerpc/Kconfig | 11 + >> arch/powerpc/include/asm/nohash/mmu-book3e.h | 11 +- >> arch/powerpc/include/asm/page.h | 7 + >> arch/powerpc/kernel/early_32.c | 5 +- >> arch/powerpc/kernel/exceptions-64e.S | 12 +- >> arch/powerpc/kernel/fsl_booke_entry_mapping.S | 25 +- >> arch/powerpc/kernel/head_fsl_booke.S | 61 +++- >> arch/powerpc/kernel/machine_kexec.c | 1 + >> arch/powerpc/kernel/misc_64.S | 7 +- >> arch/powerpc/kernel/setup-common.c | 20 ++ >> arch/powerpc/mm/init-common.c | 7 + >> arch/powerpc/mm/init_32.c | 5 - >> arch/powerpc/mm/init_64.c | 5 - >> arch/powerpc/mm/mmu_decl.h | 11 + >> arch/powerpc/mm/nohash/Makefile | 1 + >> arch/powerpc/mm/nohash/fsl_booke.c | 8 +- >> arch/powerpc/mm/nohash/kaslr_booke.c | 401 ++++++++++++++++++++++++++ >> 18 files changed, 587 insertions(+), 53 deletions(-) >> create mode 100644 Documentation/powerpc/kaslr-booke32.rst >> create mode 100644 arch/powerpc/mm/nohash/kaslr_booke.c >> >>
On 2019/11/2 1:01, Scott Wood wrote: > On Thu, 2019-10-31 at 10:01 +0800, Jason Yan wrote: >> Hi Michael, Can you pull this to linux-next so that we can test it on >> linux-next for some time? >> >> Thanks, >> Jason > > FWIW, my tree is included in linux-next. > Ah, I found it in linux-next. Thank you so much. Jason > -Scott > > > >
On 2019/11/2 18:38, Michael Ellerman wrote: > Jason Yan <yanaijie@huawei.com> writes: >> Hi Michael, Can you pull this to linux-next so that we can test it on >> linux-next for some time? > > Yes I plan to, I've just been busy doing other things. > > As Scott said it's in linux-next anyway. > Yeah, I found it in linux-next. Thanks again. Jason > cheers > >> On 2019/10/23 7:21, Scott Wood wrote: >>> This contains KASLR support for book3e 32-bit. >>> >>> The following changes since commit 612ee81b9461475b5a5612c2e8d71559dd3c7920: >>> >>> powerpc/papr_scm: Fix an off-by-one check in papr_scm_meta_{get, set} (2019-10-10 20:15:53 +1100) >>> >>> are available in the Git repository at: >>> >>> git://git.kernel.org/pub/scm/linux/kernel/git/scottwood/linux.git next >>> >>> for you to fetch changes up to 9df1ef3f1376ec5d3a1b51a4546c94279bcd88ca: >>> >>> powerpc/fsl_booke/32: Document KASLR implementation (2019-10-21 16:09:16 -0500) >>> >>> ---------------------------------------------------------------- >>> Jason Yan (12): >>> powerpc: unify definition of M_IF_NEEDED >>> powerpc: move memstart_addr and kernstart_addr to init-common.c >>> powerpc: introduce kernstart_virt_addr to store the kernel base >>> powerpc/fsl_booke/32: introduce create_kaslr_tlb_entry() helper >>> powerpc/fsl_booke/32: introduce reloc_kernel_entry() helper >>> powerpc/fsl_booke/32: implement KASLR infrastructure >>> powerpc/fsl_booke/32: randomize the kernel image offset >>> powerpc/fsl_booke/kaslr: clear the original kernel if randomized >>> powerpc/fsl_booke/kaslr: support nokaslr cmdline parameter >>> powerpc/fsl_booke/kaslr: dump out kernel offset information on panic >>> powerpc/fsl_booke/kaslr: export offset in VMCOREINFO ELF notes >>> powerpc/fsl_booke/32: Document KASLR implementation >>> >>> Documentation/powerpc/kaslr-booke32.rst | 42 +++ >>> arch/powerpc/Kconfig | 11 + >>> arch/powerpc/include/asm/nohash/mmu-book3e.h | 11 +- >>> arch/powerpc/include/asm/page.h | 7 + >>> arch/powerpc/kernel/early_32.c | 5 +- >>> arch/powerpc/kernel/exceptions-64e.S | 12 +- >>> arch/powerpc/kernel/fsl_booke_entry_mapping.S | 25 +- >>> arch/powerpc/kernel/head_fsl_booke.S | 61 +++- >>> arch/powerpc/kernel/machine_kexec.c | 1 + >>> arch/powerpc/kernel/misc_64.S | 7 +- >>> arch/powerpc/kernel/setup-common.c | 20 ++ >>> arch/powerpc/mm/init-common.c | 7 + >>> arch/powerpc/mm/init_32.c | 5 - >>> arch/powerpc/mm/init_64.c | 5 - >>> arch/powerpc/mm/mmu_decl.h | 11 + >>> arch/powerpc/mm/nohash/Makefile | 1 + >>> arch/powerpc/mm/nohash/fsl_booke.c | 8 +- >>> arch/powerpc/mm/nohash/kaslr_booke.c | 401 ++++++++++++++++++++++++++ >>> 18 files changed, 587 insertions(+), 53 deletions(-) >>> create mode 100644 Documentation/powerpc/kaslr-booke32.rst >>> create mode 100644 arch/powerpc/mm/nohash/kaslr_booke.c >>> >>> > > . >
Scott Wood <oss@buserror.net> writes: > This contains KASLR support for book3e 32-bit. > > The following changes since commit 612ee81b9461475b5a5612c2e8d71559dd3c7920: > > powerpc/papr_scm: Fix an off-by-one check in papr_scm_meta_{get, set} (2019-10-10 20:15:53 +1100) > > are available in the Git repository at: > > git://git.kernel.org/pub/scm/linux/kernel/git/scottwood/linux.git next > > for you to fetch changes up to 9df1ef3f1376ec5d3a1b51a4546c94279bcd88ca: > > powerpc/fsl_booke/32: Document KASLR implementation (2019-10-21 16:09:16 -0500) > > ---------------------------------------------------------------- > Jason Yan (12): > powerpc: unify definition of M_IF_NEEDED > powerpc: move memstart_addr and kernstart_addr to init-common.c > powerpc: introduce kernstart_virt_addr to store the kernel base > powerpc/fsl_booke/32: introduce create_kaslr_tlb_entry() helper > powerpc/fsl_booke/32: introduce reloc_kernel_entry() helper > powerpc/fsl_booke/32: implement KASLR infrastructure This commit breaks booting on the qemu mac99 machine, using pmac32_defconfig. $ qemu-system-ppc -nographic -vga none -M mac99 -m 1G -kernel vmlinux >> ============================================================= >> OpenBIOS 1.1 [Oct 5 2018 08:21] >> Configuration device id QEMU version 1 machine id 1 >> CPUs: 1 >> Memory: 1024M >> UUID: 00000000-0000-0000-0000-000000000000 >> CPU type PowerPC,G4 milliseconds isn't unique. Welcome to OpenBIOS v1.1 built on Oct 5 2018 08:21 >> [ppc] Kernel already loaded (0x01000000 + 0x009d2920) (initrd 0x00000000 + 0x00000000) >> [ppc] Kernel command line: >> switching to new context: OF stdout device is: /pci@f2000000/mac-io@c/escc@13000/ch-a@13020 Preparing to boot Linux version 5.4.0-rc2-gcc49-05398-g4e1bb50 (michael@alpine1-p1) (gcc version 7.4.0 (Ubuntu 7.4.0-1ubuntu1~18.04.1)) #30 Wed Nov 13 15:07:39 AEDT 2019 Detected machine type: 00000400 command line: memory layout at init: memory_limit : 00000000 (16 MB aligned) alloc_bottom : 019d7000 alloc_top : 30000000 alloc_top_hi : 40000000 rmo_top : 30000000 ram_top : 40000000 copying OF device tree... Building dt strings... Building dt structure... Device tree strings 0x019d8000 -> 0x019d70a4 Device tree struct 0x019d9000 -> 0x3fde7eb0 Quiescing Open Firmware ... Booting Linux via __start() @ 0x01000000 ... And no output after that. The problematic hunk is the change to early_32.c: diff --git a/arch/powerpc/kernel/early_32.c b/arch/powerpc/kernel/early_32.c index 3482118ffe76..6f8689d7ca7b 100644 --- a/arch/powerpc/kernel/early_32.c +++ b/arch/powerpc/kernel/early_32.c @@ -22,7 +22,8 @@ notrace unsigned long __init early_init(unsigned long dt_ptr) unsigned long offset = reloc_offset(); /* First zero the BSS */ - memset(PTRRELOC(&__bss_start), 0, __bss_stop - __bss_start); + if (kernstart_virt_addr == KERNELBASE) + memset(PTRRELOC(&__bss_start), 0, __bss_stop - __bss_start); /* * Identify the CPU type and fix up code sections @@ -32,5 +33,5 @@ notrace unsigned long __init early_init(unsigned long dt_ptr) apply_feature_fixups(); - return KERNELBASE + offset; + return kernstart_virt_addr + offset; } It needs to use PTRRELOC() for the kernstart_virt_addr accesses. I've made that change and squashed it into the series. I've pushed that as a branch to here: https://github.com/linuxppc/linux/commits/topic/kaslr-book3e32 That boots for me on qemu mac99. Jason can you please test it on your setup with KASLR enabled to make sure it still works. cheers
On 2019/11/13 17:23, Michael Ellerman wrote: > It needs to use PTRRELOC() for the kernstart_virt_addr accesses. > > I've made that change and squashed it into the series. I've pushed that > as a branch to here: > https://github.com/linuxppc/linux/commits/topic/kaslr-book3e32 > > > That boots for me on qemu mac99. > > Jason can you please test it on your setup with KASLR enabled to make > sure it still works. > Thanks Michael, I have confirmed it works with KASLR enabled on my machine. [ 0.000000] Memory CAM mapping: 256/256/256 Mb, residual: 3328Mb [ 0.000000] Linux version 5.4.0-rc2-00012-gc2d1a13520ee (yanaijie@138) (gcc version 7.3.0 (Compiler CPU V200R003C00SPC010B006)) #1 SMP Thu Nov 14 14:16:28 CST 2019 [ 0.000000] Using QEMU e500 machine description [ 0.000000] printk: bootconsole [udbg0] enabled [ 0.000000] CPU maps initialized for 1 thread per core [ 0.000000] ----------------------------------------------------- [ 0.000000] phys_mem_size = 0x100000000 [ 0.000000] dcache_bsize = 0x40 [ 0.000000] icache_bsize = 0x40 [ 0.000000] cpu_features = 0x00000000000001b4 [ 0.000000] possible = 0x00000000010103bc [ 0.000000] always = 0x0000000000000020 [ 0.000000] cpu_user_features = 0x8c008000 0x08000000 [ 0.000000] mmu_features = 0x000a0010 [ 0.000000] physical_start = 0x93a4000 [ 0.000000] ----------------------------------------------------- [ 0.000000] barrier-nospec: using isync; sync as speculation barrier [ 0.000000] Zone ranges: [ 0.000000] Normal [mem 0x0000000000000000-0x000000002fffffff] [ 0.000000] HighMem [mem 0x0000000030000000-0x00000000ffffffff] [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000000000000-0x00000000ffffffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x00000000ffffffff] [ 0.000000] MMU: Allocated 1088 bytes of context maps for 255 contexts [ 0.000000] percpu: Embedded 19 pages/cpu s47884 r8192 d21748 u77824 [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 1046656 [ 0.000000] Kernel command line: console=ttyS0 IP=192.168.25.187 root=/dev/vda rw [ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes, linear) [ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes, linear) [ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off [ 0.000000] Memory: 4066576K/4194304K available (11852K kernel code, 780K rwdata, 2844K rodata, 3128K init, 265K bss, 127728K reserved, 0K cma-reserved, 3407872K highmem) [ 0.000000] Kernel virtual memory layout: [ 0.000000] * 0xfff5f000..0xfffff000 : fixmap [ 0.000000] * 0xffc00000..0xffe00000 : highmem PTEs [ 0.000000] * 0xffbfe000..0xffc00000 : early ioremap [ 0.000000] * 0xf1000000..0xffbfe000 : vmalloc & ioremap [ 0.000000] rcu: Hierarchical RCU implementation. [ 0.000000] rcu: RCU event tracing is enabled. [ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=1. [ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies. [ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1 [ 0.000000] NR_IRQS: 512, nr_irqs: 512, preallocated irqs: 16 [ 0.000000] mpic: Setting up MPIC " OpenPIC " version 1.2 at fe0040000, max 1 CPUs [ 0.000000] mpic: ISU size: 256, shift: 8, mask: ff [ 0.000000] mpic: Initializing for 256 sources [ 0.000000] random: get_random_u32 called from start_kernel+0x32c/0x4f4 with crng_init=0 [ 0.000581] clocksource: timebase: mask: 0xffffffffffffffff max_cycles: 0x5c4093a7d1, max_idle_ns: 440795210635 ns [ 0.001136] clocksource: timebase mult[2800000] shift[24] registered [ 0.012660] Console: colour dummy device 80x25 [ 0.013981] pid_max: default: 32768 minimum: 301 [ 0.015472] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes, linear) [ 0.015838] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes, linear) [ 0.018991] *** VALIDATE tmpfs *** [ 0.031847] *** VALIDATE proc *** [ 0.034801] *** VALIDATE cgroup1 *** [ 0.034974] *** VALIDATE cgroup2 *** [ 0.053184] e500 family performance monitor hardware support registered [ 0.054372] rcu: Hierarchical SRCU implementation. [ 0.057294] smp: Bringing up secondary CPUs ... [ 0.057549] smp: Brought up 1 node, 1 CPU [ 0.057855] Using standard scheduler topology [ 0.068552] devtmpfs: initialized [ 0.077040] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns [ 0.077544] futex hash table entries: 256 (order: 2, 16384 bytes, linear) [ 0.086677] NET: Registered protocol family 16 [ 0.089312] audit: initializing netlink subsys (disabled) [ 0.115531] Found FSL PCI host bridge at 0x0000000fe0008000. Firmware bus number: 0->255 [ 0.115920] PCI host bridge /pci@fe0008000 (primary) ranges: [ 0.116586] MEM 0x0000000c00000000..0x0000000c1fffffff -> 0x00000000e0000000 [ 0.116993] IO 0x0000000fe1000000..0x0000000fe100ffff -> 0x0000000000000000 [ 0.118622] /pci@fe0008000: PCICSRBAR @ 0xdff00000 [ 0.118852] setup_pci_atmu: end of DRAM 100000000 [ 0.119635] /pci@fe0008000: DMA window size is 0xc0000000 [ 0.131070] audit: type=2000 audit(0.092:1): state=initialized audit_enabled=0 res=1 [ 0.140518] software IO TLB: mapped [mem 0x2971b000-0x2d71b000] (64MB) [ 0.140921] PCI: Probing PCI hardware [ 0.142830] fsl-pci fe0008000.pci: PCI host bridge to bus 8000:00 [ 0.143463] pci_bus 8000:00: root bus resource [io 0x0000-0xffff] [ 0.143790] pci_bus 8000:00: root bus resource [mem 0xc00000000-0xc1fffffff] (bus address [0xe0000000-0xffffffff]) [ 0.144371] pci_bus 8000:00: root bus resource [bus 00-ff] [ 0.145016] pci_bus 8000:00: busn_res: [bus 00-ff] end is updated to ff [ 0.145976] pci 8000:00:00.0: [1957:0030] type 00 class 0x0b2000 [ 0.147585] pci 8000:00:00.0: reg 0x10: [mem 0xdff00000-0xdfffffff] [ 0.152425] pci 8000:00:01.0: [1af4:1000] type 00 class 0x020000 [ 0.152913] pci 8000:00:01.0: reg 0x10: [io 0x0000-0x001f] [ 0.153252] pci 8000:00:01.0: reg 0x14: [mem 0x00000000-0x00000fff] [ 0.153650] pci 8000:00:01.0: reg 0x20: [mem 0x00000000-0x00003fff 64bit pref] [ 0.153948] pci 8000:00:01.0: reg 0x30: [mem 0x00000000-0x0003ffff pref] [ 0.154627] pci 8000:00:02.0: [1af4:1001] type 00 class 0x010000 [ 0.154931] pci 8000:00:02.0: reg 0x10: [io 0x0000-0x007f] [ 0.155170] pci 8000:00:02.0: reg 0x14: [mem 0x00000000-0x00000fff] [ 0.155440] pci 8000:00:02.0: reg 0x20: [mem 0x00000000-0x00003fff 64bit pref] [ 0.156038] pci 8000:00:03.0: [1af4:1009] type 00 class 0x000200 [ 0.156331] pci 8000:00:03.0: reg 0x10: [io 0x0000-0x003f] [ 0.156570] pci 8000:00:03.0: reg 0x14: [mem 0x00000000-0x00000fff] [ 0.156840] pci 8000:00:03.0: reg 0x20: [mem 0x00000000-0x00003fff 64bit pref] [ 0.159396] pci_bus 8000:00: busn_res: [bus 00-ff] end is updated to 00 [ 0.162849] pci 8000:00:01.0: BAR 6: assigned [mem 0xc00000000-0xc0003ffff pref] [ 0.163989] pci 8000:00:01.0: BAR 4: assigned [mem 0xc00040000-0xc00043fff 64bit pref] [ 0.164583] pci 8000:00:02.0: BAR 4: assigned [mem 0xc00044000-0xc00047fff 64bit pref] [ 0.164934] pci 8000:00:03.0: BAR 4: assigned [mem 0xc00048000-0xc0004bfff 64bit pref] [ 0.165268] pci 8000:00:01.0: BAR 1: assigned [mem 0xc0004c000-0xc0004cfff] [ 0.165654] pci 8000:00:02.0: BAR 1: assigned [mem 0xc0004d000-0xc0004dfff] [ 0.165956] pci 8000:00:03.0: BAR 1: assigned [mem 0xc0004e000-0xc0004efff] [ 0.166301] pci 8000:00:02.0: BAR 0: assigned [io 0x1000-0x107f] [ 0.166587] pci 8000:00:03.0: BAR 0: assigned [io 0x1080-0x10bf] [ 0.166849] pci 8000:00:01.0: BAR 0: assigned [io 0x10c0-0x10df] [ 0.167395] pci_bus 8000:00: resource 4 [io 0x0000-0xffff] [ 0.167643] pci_bus 8000:00: resource 5 [mem 0xc00000000-0xc1fffffff] [ 0.238672] HugeTLB registered 4.00 MiB page size, pre-allocated 0 pages [ 0.238981] HugeTLB registered 16.0 MiB page size, pre-allocated 0 pages [ 0.239232] HugeTLB registered 64.0 MiB page size, pre-allocated 0 pages [ 0.239505] HugeTLB registered 256 MiB page size, pre-allocated 0 pages [ 0.239757] HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages [ 0.266909] vgaarb: loaded [ 0.268488] SCSI subsystem initialized [ 0.272248] usbcore: registered new interface driver usbfs [ 0.272785] usbcore: registered new interface driver hub [ 0.273192] usbcore: registered new device driver usb [ 0.273917] pps_core: LinuxPPS API ver. 1 registered [ 0.274132] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it> [ 0.274571] PTP clock support registered [ 0.278401] EDAC MC: Ver: 3.0.0 [ 0.291537] clocksource: Switched to clocksource timebase [ 0.947371] VFS: Disk quotas dquot_6.6.0 [ 0.947750] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes) [ 0.950139] *** VALIDATE ramfs *** [ 0.950358] *** VALIDATE hugetlbfs *** [ 0.990556] NET: Registered protocol family 2 [ 0.996848] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 6144 bytes, linear) [ 0.997344] TCP established hash table entries: 8192 (order: 3, 32768 bytes, linear) [ 0.997865] TCP bind hash table entries: 8192 (order: 4, 65536 bytes, linear) [ 0.998367] TCP: Hash tables configured (established 8192 bind 8192) [ 0.999935] UDP hash table entries: 512 (order: 2, 16384 bytes, linear) [ 1.000411] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear) [ 1.002684] NET: Registered protocol family 1 [ 1.006928] RPC: Registered named UNIX socket transport module. [ 1.007220] RPC: Registered udp transport module. [ 1.007418] RPC: Registered tcp transport module. [ 1.007608] RPC: Registered tcp NFSv4.1 backchannel transport module. [ 1.008045] PCI: CLS 0 bytes, default 64 [ 1.018906] workingset: timestamp_bits=30 max_order=20 bucket_order=0 [ 1.023954] NFS: Registering the id_resolver key type [ 1.025160] Key type id_resolver registered [ 1.025528] Key type id_legacy registered [ 1.025840] Installing knfsd (copyright (C) 1996 okir@monad.swb.de). [ 1.027580] ntfs: driver 2.1.32 [Flags: R/O]. [ 1.028017] jffs2: version 2.2. (NAND) (SUMMARY) © 2001-2006 Red Hat, Inc. [ 1.029343] *** VALIDATE jffs2 *** [ 1.029923] fuse: init (API version 7.31) [ 1.030145] *** VALIDATE fuse *** [ 1.030308] *** VALIDATE fuse *** [ 1.031647] SGI XFS with ACLs, security attributes, realtime, debug enabled [ 1.034534] 9p: Installing v9fs 9p2000 file system support [ 1.086523] bounce: pool size: 64 pages [ 1.086909] io scheduler mq-deadline registered [ 1.087198] io scheduler kyber registered [ 1.090181] virtio-pci 8000:00:01.0: enabling device (0000 -> 0003) [ 1.094216] virtio-pci 8000:00:02.0: enabling device (0000 -> 0003) [ 1.096218] virtio-pci 8000:00:03.0: enabling device (0000 -> 0003) [ 1.102286] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled [ 1.110556] printk: console [ttyS0] disabled [ 1.134829] serial8250.0: ttyS0 at MMIO 0xfe0004500 (irq = 42, base_baud = 115200) is a 16550A [ 1.136397] printk: console [ttyS0] enabled [ 1.136397] printk: console [ttyS0] enabled [ 1.137037] printk: bootconsole [udbg0] disabled [ 1.137037] printk: bootconsole [udbg0] disabled [ 1.139341] ePAPR hypervisor byte channel driver [ 1.162871] loop: module loaded [ 1.171471] virtio_blk virtio1: [vda] 6291456 512-byte logical blocks (3.22 GB/3.00 GiB) [ 1.208027] st: Version 20160209, fixed bufsize 32768, s/g segs 256 [ 1.213030] libphy: Fixed MDIO Bus: probed [ 1.219498] e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI [ 1.219771] e1000: Copyright (c) 1999-2006 Intel Corporation. [ 1.220139] e1000e: Intel(R) PRO/1000 Network Driver - 3.2.6-k [ 1.220378] e1000e: Copyright(c) 1999 - 2015 Intel Corporation. [ 1.231399] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver [ 1.231864] ehci-pci: EHCI PCI platform driver [ 1.232288] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver [ 1.232765] ohci-pci: OHCI PCI platform driver [ 1.233346] ehci-fsl: Freescale EHCI Host controller driver [ 1.233889] usbcore: registered new interface driver usb-storage [ 1.234643] i2c /dev entries driver [ 1.235923] mpc-i2c fe0003000.i2c: timeout 1000000 us [ 1.246731] rtc-ds1307 0-0068: registered as rtc0 [ 1.248770] device-mapper: uevent: version 1.0.3 [ 1.251552] device-mapper: ioctl: 4.41.0-ioctl (2019-09-16) initialised: dm-devel@redhat.com [ 1.253535] Freescale(R) MPC85xx EDAC driver, (C) 2006 Montavista Software [ 1.255483] EDAC PCI0: Giving out device to module MPC85xx_edac controller mpc85xx_pci_err: DEV mpc85xx-pci-edac.0.auto (INTERRUPT) [ 1.256144] MPC85xx_edac acquired irq 24 for PCI Err [ 1.256466] MPC85xx_edac PCI err registered [ 1.257176] sdhci: Secure Digital Host Controller Interface driver [ 1.257537] sdhci: Copyright(c) Pierre Ossman [ 1.258524] usbcore: registered new interface driver usbhid [ 1.258766] usbhid: USB HID core driver [ 1.258949] Freescale hypervisor management driver [ 1.259160] fsl-hv: no hypervisor found [ 1.260074] ipip: IPv4 and MPLS over IPv4 tunneling driver [ 1.263269] Initializing XFRM netlink socket [ 1.263970] NET: Registered protocol family 10 [ 1.274568] Segment Routing with IPv6 [ 1.275693] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver [ 1.278112] NET: Registered protocol family 17 [ 1.278623] NET: Registered protocol family 15 [ 1.279811] 9pnet: Installing 9P2000 support [ 1.281362] Key type dns_resolver registered [ 1.281791] drmem: No dynamic reconfiguration memory found [ 1.304162] Key type encrypted registered [ 1.307598] rtc-ds1307 0-0068: setting system clock to 2019-11-14T06:18:22 UTC (1573712302) [ 1.319557] md: Waiting for all devices to be available before autodetect [ 1.319857] md: If you don't use raid, use raid=noautodetect [ 1.323318] md: Autodetecting RAID arrays. [ 1.323513] md: autorun ... [ 1.323649] md: ... autorun DONE. [ 1.447439] EXT4-fs (vda): recovery complete [ 1.449701] EXT4-fs (vda): mounted filesystem with ordered data mode. Opts: (null) [ 1.450272] VFS: Mounted root (ext4 filesystem) on device 253:0. [ 1.455491] devtmpfs: mounted [ 1.577786] Freeing unused kernel memory: 3128K [ 1.578011] This architecture does not have kernel memory protection. [ 1.578340] Run /sbin/init as init process [ 1.923836] random: fast init done [ 1.970814] random: systemd: uninitialized urandom read (16 bytes read) [ 1.992564] systemd[1]: systemd 215 running in system mode. (+PAM +AUDIT +SELINUX +IMA +SYSVINIT +LIBCRYPTSETUP +GCRYPT +ACL +XZ -SECCOMP -APPARMOR) [ 1.996140] systemd[1]: Detected architecture 'ppc'.