Messages in this thread | | | From | Anup Patel <> | Date | Fri, 4 Sep 2020 15:12:18 +0530 | Subject | Re: [GIT PULL] RISC-V Fixes for 5.9-rc2 |
| |
On Fri, Sep 4, 2020 at 2:01 PM Christoph Hellwig <hch@infradead.org> wrote: > > On Fri, Aug 21, 2020 at 12:35:20PM -0700, Linus Torvalds wrote: > > On Fri, Aug 21, 2020 at 11:26 AM Palmer Dabbelt <palmer@dabbelt.com> wrote: > > > > > > * The CLINT driver has been split in two: one to handle the M-mode CLINT > > > (memory mapped and used on NOMMU systems) and one to handle the S-mode CLINT > > > (via SBI). > > > > This looks more like development than fixes. > > > > I guess I don't care deeply enough about it, but please don't do this. > > Well, I care because this late pull requests completely breaks nommu > (nommu_virt_defconfig). More specifically commit 2bc3fc877aa9 > ("RISC-V: Remove CLINT related code from timer and arch") leas to this > spew when booting under qemu: > > [ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0 > [ 0.000000] riscv-intc: 64 local interrupts mapped > [ 0.000000] plic: interrupt-controller@c000000: mapped 53 interrupts with 2 handlers for 4 contexts. > [ 0.000000] Oops - illegal instruction [#1] > [ 0.000000] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 5.9.0-rc1-00003-g2bc3fc877aa9c4 #609 > [ 0.000000] epc: 000000008000de78 ra : 000000008000ddaa sp : 0000000080187f40 > [ 0.000000] gp : 00000000801a3aa8 tp : 000000008018bd40 t0 : 0000000000000019 > [ 0.000000] t1 : 0000000000000018 t2 : 0000000000000001 s0 : 0000000080187f80 > [ 0.000000] s1 : 0000000000000200 a0 : 000000008019b738 a1 : 0000000000000000 > [ 0.000000] a2 : ffffffff80187f50 a3 : 0000000000000000 a4 : 0000000000000000 > [ 0.000000] a5 : 0000000080169018 a6 : 0000000000000000 a7 : 00000000000001e4 > [ 0.000000] s2 : 00000000801a40a8 s3 : 00000000801a4068 s4 : 000000008fc7c040 > [ 0.000000] s5 : 00000000801a4038 s6 : 00000000801a4030 s7 : 0000000080012da0 > [ 0.000000] s8 : 0000000000000000 s9 : 0000000000000000 s10: 0000000000000000 > [ 0.000000] s11: 0000000000000000 t3 : 00000000801c40d8 t4 : 0000000000000068 > [ 0.000000] t5 : 000000000000004c t6 : 0000000000000033 > [ 0.000000] status: 0000000000001800 badaddr: 0000000000000000 cause: 0000000000000002 > [ 0.000000] random: get_random_bytes called from 0x00000000800210c4 with crng_init=0 > [ 0.000000] ---[ end trace 0000000000000000 ]--- > [ 0.000000] Kernel panic - not syncing: Attempted to kill the idle task! > [ 0.000000] ---[ end Kernel panic - not syncing: Attempted to kill the idle task! ]---
I tried Linux-5.9-rc3 using nommu_virt_defconfig at my end. I am not able to reproduce this issue. Is there additional Kconfig option required to reproduce this issue ??
anup@anup-ubuntu64-vm:~/Work/riscv-test/nommu$ qemu-system-riscv64 -M virt -m 8M -display none -nographic -kernel ./build-riscv64/arch/riscv/boot/loader -append "root=/dev/ram rw console=ttyS0" -smp 4 qemu-system-riscv64: warning: No -bios option specified. Not loading a firmware. qemu-system-riscv64: warning: This default will change in a future QEMU release. Please use the -bios option to avoid breakages when this happens. qemu-system-riscv64: warning: See QEMU's deprecation documentation for details. [ 0.000000] Linux version 5.9.0-rc3 (anup@anup-ubuntu64-vm) (riscv64-unknown-linux-gnu-gcc (GCC) 9.2.0, GNU ld (GNU Binutils) 2.34) #1 SMP Fri Sep 4 15:02:31 IST 2020 [ 0.000000] earlycon: uart8250 at MMIO 0x0000000010000000 (options '115200n8') [ 0.000000] printk: bootconsole [uart8250] enabled [ 0.000000] Zone ranges: [ 0.000000] DMA32 [mem 0x0000000080000000-0x00000000807fffff] [ 0.000000] Normal empty [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000080000000-0x00000000807fffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x00000000807fffff] [ 0.000000] riscv: ISA extensions acdfimsu [ 0.000000] riscv: ELF capabilities acdfim [ 0.000000] percpu: max_distance=0x30000 too large for vmalloc space 0x0 [ 0.000000] percpu: Embedded 12 pages/cpu s18592 r0 d30560 u49152 [ 0.000000] Built 1 zonelists, mobility grouping off. Total pages: 2020 [ 0.000000] Kernel command line: root=/dev/vda rw earlycon=uart8250,mmio,0x10000000,115200n8 console=ttyS0 [ 0.000000] Dentry cache hash table entries: 1024 (order: 1, 8192 bytes, linear) [ 0.000000] Inode-cache hash table entries: 512 (order: 0, 4096 bytes, linear) [ 0.000000] Sorting __ex_table... [ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off [ 0.000000] Memory: 6016K/8192K available (1283K kernel code, 138K rwdata, 200K rodata, 106K init, 133K bss, 2176K reserved, 0K cma-reserved) [ 0.000000] rcu: Hierarchical RCU implementation. [ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=4. [ 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=4 [ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0 [ 0.000000] riscv-intc: 64 local interrupts mapped [ 0.000000] plic: plic@c000000: mapped 53 interrupts with 4 handlers for 8 contexts. [ 0.000000] random: get_random_bytes called from 0x00000000800019b4 with crng_init=0 [ 0.000000] clint: clint@2000000: timer running at 10000000 Hz [ 0.000000] clocksource: clint_clocksource: mask: 0xffffffffffffffff max_cycles: 0x24e6a1710, max_idle_ns: 440795202120 ns [ 0.000212] sched_clock: 64 bits at 10MHz, resolution 100ns, wraps every 4398046511100ns [ 0.016835] Console: colour dummy device 80x25 [ 0.034899] Calibrating delay loop (skipped), value calculated using timer frequency.. 20.00 BogoMIPS (lpj=40000) [ 0.050107] pid_max: default: 4096 minimum: 301 [ 0.051951] Mount-cache hash table entries: 512 (order: 0, 4096 bytes, linear) [ 0.052711] Mountpoint-cache hash table entries: 512 (order: 0, 4096 bytes, linear) [ 0.151318] rcu: Hierarchical SRCU implementation. [ 0.158697] smp: Bringing up secondary CPUs ... [ 0.213140] smp: Brought up 1 node, 4 CPUs [ 0.245903] devtmpfs: initialized [ 0.262757] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns [ 0.264822] futex hash table entries: 16 (order: -2, 1024 bytes, linear) [ 0.413555] clocksource: Switched to clocksource clint_clocksource [ 0.580364] workingset: timestamp_bits=62 max_order=11 bucket_order=0 [ 0.589640] Serial: 8250/16550 driver, 1 ports, IRQ sharing disabled [ 0.604478] printk: console [ttyS0] disabled [ 0.611025] 10000000.uart: ttyS0 at MMIO 0x10000000 (irq = 2, base_baud = 230400) is a 16550A [ 0.621897] printk: console [ttyS0] enabled [ 0.621897] printk: console [ttyS0] enabled [ 0.622997] printk: bootconsole [uart8250] disabled [ 0.622997] printk: bootconsole [uart8250] disabled [ 0.646964] syscon-poweroff soc:poweroff: pm_power_off already claimed (____ptrval____) [ 0.648264] syscon-poweroff: probe of soc:poweroff failed with error -16 [ 0.677403] VFS: Cannot open root device "vda" or unknown-block(0,0): error -6 [ 0.679474] Please append a correct "root=" boot option; here are the available partitions: [ 0.682862] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
Regards, Anup
| |