From: "Heiko Stübner" <heiko@sntech.de>
To: Guo Ren <guoren@kernel.org>
Cc: "Conor Dooley" <conor@kernel.org>,
arnd@arndb.de, palmer@rivosinc.com, tglx@linutronix.de,
peterz@infradead.org, luto@kernel.org,
conor.dooley@microchip.com, jszhang@kernel.org,
lazyparser@gmail.com, falcon@tinylab.org, chenhuacai@kernel.org,
apatel@ventanamicro.com, atishp@atishpatra.org,
mark.rutland@arm.com, ben@decadent.org.uk, bjorn@kernel.org,
palmer@dabbelt.com, linux-arch@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org,
"Guo Ren" <guoren@linux.alibaba.com>,
"Björn Töpel" <bjorn@rivosinc.com>,
"Yipeng Zou" <zouyipeng@huawei.com>
Subject: Re: [PATCH -next V17 4/7] riscv: entry: Convert to generic entry
Date: Sat, 01 Apr 2023 14:10:25 +0200 [thread overview]
Message-ID: <2587778.7s5MMGUR32@diego> (raw)
In-Reply-To: <CAJF2gTSWETHhQFuE19H+RVX6Jbue+UAu8o94QoBFx65NABas1Q@mail.gmail.com>
Hi Guo,
Am Samstag, 1. April 2023, 04:15:32 CEST schrieb Guo Ren:
> On Fri, Mar 31, 2023 at 2:47 PM Heiko Stübner <heiko@sntech.de> wrote:
> > Am Freitag, 31. März 2023, 20:41:35 CEST schrieb Conor Dooley:
> > > On Fri, Mar 31, 2023 at 07:34:38PM +0100, Conor Dooley wrote:
> > > > On Tue, Feb 21, 2023 at 10:30:18PM -0500, guoren@kernel.org wrote:
> > > > > From: Guo Ren <guoren@linux.alibaba.com>
> > > > >
> > > > > This patch converts riscv to use the generic entry infrastructure from
> > > > > kernel/entry/*. The generic entry makes maintainers' work easier and
> > > > > codes more elegant. Here are the changes:
> > > > >
> > > > > - More clear entry.S with handle_exception and ret_from_exception
> > > > > - Get rid of complex custom signal implementation
> > > > > - Move syscall procedure from assembly to C, which is much more
> > > > > readable.
> > > > > - Connect ret_from_fork & ret_from_kernel_thread to generic entry.
> > > > > - Wrap with irqentry_enter/exit and syscall_enter/exit_from_user_mode
> > > > > - Use the standard preemption code instead of custom
> > > >
> > > > This has unfortunately broken booting my usual NFS rootfs on both my D1
> > > > and Icicle. It's one of the Fedora images from David, I think this one:
> > > > http://fedora.riscv.rocks/kojifiles/work/tasks/3933/1313933/
> > > >
> > > > It gets pretty far into things, it's once systemd is operational that
> > > > things go pear shaped:
> > >
> > > Shoulda said, can share the full logs if required of course, but they're
> > > quite verbose cos systemd etc.
> >
> > I was just investigating the same thing just now. So that saves me some
> > tracking down the culprit :-) .
> >
> > My main qemu is living as a "board" in my boardfarm (also doing nfsroot)
> > as well as my d1 nezha with nfsroot was affected.
> Can you reproduce it with qemu? Could give me some tips and let me
> reproduce it on qemu?
As written the issue both happens on qemu-virt and also the d1-nezha board.
Below I've summarized my setup a bit:
(1) Qemu-commandline:
---------------------
/usr/local/bin/qemu-system-riscv64 -M virt -smp 2 -m 1G -display none \
-cpu rv64,zbb=true,zbc=true,svpbmt=true,Zicbom=true,Zawrs=true,sscofpmf=true,v=true \
-serial telnet:localhost:5500,server,nowait -kernel /home/devel/nfs/kernel/riscv64/Image \
-append "earlycon=sbi root=/dev/nfs nfsroot=10.0.2.2:/home/devel/nfs/rootfs-riscv64virt ip=dhcp rw" \
-netdev user,id=n1 -device virtio-net-pci,netdev=n1
Which does the start using a nfs-root coming from an nfs-server running
on the same host as qemu.
Though the issue does not seem to be related to the nfs. I also tried
starting with a local disk image like [0] and the issue with the journald
still persists.
(2) the rootfs-contents:
------------------------
Conor seems to be using Fedora, while my distribution of choice is Debian.
My rootfs was created following the instructions on the Debian wiki for
the debports with debootstrap [1].
This morning I also re-created a completely new and pristine rootfs using
those instructions and the issue appeared immediately on first-boot.
Hope this helps a bit
Heiko
[0] same result with a disk-image ... journald failing
/usr/local/bin/qemu-system-riscv64 -M virt -smp 2 -m 1G -display none \
-cpu rv64,zbb=true,zbc=true,svpbmt=true,Zicbom=true,Zawrs=true,sscofpmf=true,v=true \
-serial telnet:localhost:5500,server,nowait -kernel /home/devel/nfs/kernel/riscv64/Image \
-append 'root=/dev/vda console=ttyS0' \
-drive file=/home/devel/nfs/rootfs-riscv64virt.ext4,format=raw,id=hd0 \
-device virtio-blk-pci,drive=hd0
[1] https://wiki.debian.org/RISC-V#debootstrap
WARNING: multiple messages have this Message-ID (diff)
From: "Heiko Stübner" <heiko@sntech.de>
To: Guo Ren <guoren@kernel.org>
Cc: "Conor Dooley" <conor@kernel.org>,
arnd@arndb.de, palmer@rivosinc.com, tglx@linutronix.de,
peterz@infradead.org, luto@kernel.org,
conor.dooley@microchip.com, jszhang@kernel.org,
lazyparser@gmail.com, falcon@tinylab.org, chenhuacai@kernel.org,
apatel@ventanamicro.com, atishp@atishpatra.org,
mark.rutland@arm.com, ben@decadent.org.uk, bjorn@kernel.org,
palmer@dabbelt.com, linux-arch@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org,
"Guo Ren" <guoren@linux.alibaba.com>,
"Björn Töpel" <bjorn@rivosinc.com>,
"Yipeng Zou" <zouyipeng@huawei.com>
Subject: Re: [PATCH -next V17 4/7] riscv: entry: Convert to generic entry
Date: Sat, 01 Apr 2023 14:10:25 +0200 [thread overview]
Message-ID: <2587778.7s5MMGUR32@diego> (raw)
In-Reply-To: <CAJF2gTSWETHhQFuE19H+RVX6Jbue+UAu8o94QoBFx65NABas1Q@mail.gmail.com>
Hi Guo,
Am Samstag, 1. April 2023, 04:15:32 CEST schrieb Guo Ren:
> On Fri, Mar 31, 2023 at 2:47 PM Heiko Stübner <heiko@sntech.de> wrote:
> > Am Freitag, 31. März 2023, 20:41:35 CEST schrieb Conor Dooley:
> > > On Fri, Mar 31, 2023 at 07:34:38PM +0100, Conor Dooley wrote:
> > > > On Tue, Feb 21, 2023 at 10:30:18PM -0500, guoren@kernel.org wrote:
> > > > > From: Guo Ren <guoren@linux.alibaba.com>
> > > > >
> > > > > This patch converts riscv to use the generic entry infrastructure from
> > > > > kernel/entry/*. The generic entry makes maintainers' work easier and
> > > > > codes more elegant. Here are the changes:
> > > > >
> > > > > - More clear entry.S with handle_exception and ret_from_exception
> > > > > - Get rid of complex custom signal implementation
> > > > > - Move syscall procedure from assembly to C, which is much more
> > > > > readable.
> > > > > - Connect ret_from_fork & ret_from_kernel_thread to generic entry.
> > > > > - Wrap with irqentry_enter/exit and syscall_enter/exit_from_user_mode
> > > > > - Use the standard preemption code instead of custom
> > > >
> > > > This has unfortunately broken booting my usual NFS rootfs on both my D1
> > > > and Icicle. It's one of the Fedora images from David, I think this one:
> > > > http://fedora.riscv.rocks/kojifiles/work/tasks/3933/1313933/
> > > >
> > > > It gets pretty far into things, it's once systemd is operational that
> > > > things go pear shaped:
> > >
> > > Shoulda said, can share the full logs if required of course, but they're
> > > quite verbose cos systemd etc.
> >
> > I was just investigating the same thing just now. So that saves me some
> > tracking down the culprit :-) .
> >
> > My main qemu is living as a "board" in my boardfarm (also doing nfsroot)
> > as well as my d1 nezha with nfsroot was affected.
> Can you reproduce it with qemu? Could give me some tips and let me
> reproduce it on qemu?
As written the issue both happens on qemu-virt and also the d1-nezha board.
Below I've summarized my setup a bit:
(1) Qemu-commandline:
---------------------
/usr/local/bin/qemu-system-riscv64 -M virt -smp 2 -m 1G -display none \
-cpu rv64,zbb=true,zbc=true,svpbmt=true,Zicbom=true,Zawrs=true,sscofpmf=true,v=true \
-serial telnet:localhost:5500,server,nowait -kernel /home/devel/nfs/kernel/riscv64/Image \
-append "earlycon=sbi root=/dev/nfs nfsroot=10.0.2.2:/home/devel/nfs/rootfs-riscv64virt ip=dhcp rw" \
-netdev user,id=n1 -device virtio-net-pci,netdev=n1
Which does the start using a nfs-root coming from an nfs-server running
on the same host as qemu.
Though the issue does not seem to be related to the nfs. I also tried
starting with a local disk image like [0] and the issue with the journald
still persists.
(2) the rootfs-contents:
------------------------
Conor seems to be using Fedora, while my distribution of choice is Debian.
My rootfs was created following the instructions on the Debian wiki for
the debports with debootstrap [1].
This morning I also re-created a completely new and pristine rootfs using
those instructions and the issue appeared immediately on first-boot.
Hope this helps a bit
Heiko
[0] same result with a disk-image ... journald failing
/usr/local/bin/qemu-system-riscv64 -M virt -smp 2 -m 1G -display none \
-cpu rv64,zbb=true,zbc=true,svpbmt=true,Zicbom=true,Zawrs=true,sscofpmf=true,v=true \
-serial telnet:localhost:5500,server,nowait -kernel /home/devel/nfs/kernel/riscv64/Image \
-append 'root=/dev/vda console=ttyS0' \
-drive file=/home/devel/nfs/rootfs-riscv64virt.ext4,format=raw,id=hd0 \
-device virtio-blk-pci,drive=hd0
[1] https://wiki.debian.org/RISC-V#debootstrap
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
next prev parent reply other threads:[~2023-04-01 12:11 UTC|newest]
Thread overview: 71+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-22 3:30 [PATCH -next V17 0/7] riscv: Add GENERIC_ENTRY support guoren
2023-02-22 3:30 ` guoren
2023-02-22 3:30 ` [PATCH -next V17 1/7] compiler_types.h: Add __noinstr_section() for noinstr guoren
2023-02-22 3:30 ` guoren
2023-03-22 14:46 ` Björn Töpel
2023-03-22 14:46 ` Björn Töpel
2023-03-24 1:51 ` Guo Ren
2023-03-24 1:51 ` Guo Ren
2023-03-23 0:43 ` Lai Jiangshan
2023-03-23 0:43 ` Lai Jiangshan
2023-02-22 3:30 ` [PATCH -next V17 2/7] riscv: ptrace: Remove duplicate operation guoren
2023-02-22 3:30 ` guoren
2023-02-22 3:30 ` [PATCH -next V17 3/7] riscv: entry: Add noinstr to prevent instrumentation inserted guoren
2023-02-22 3:30 ` guoren
2023-02-22 3:30 ` [PATCH -next V17 4/7] riscv: entry: Convert to generic entry guoren
2023-02-22 3:30 ` guoren
2023-03-31 18:34 ` Conor Dooley
2023-03-31 18:34 ` Conor Dooley
2023-03-31 18:41 ` Conor Dooley
2023-03-31 18:41 ` Conor Dooley
2023-03-31 18:46 ` Heiko Stübner
2023-03-31 18:46 ` Heiko Stübner
2023-03-31 18:55 ` Conor Dooley
2023-03-31 18:55 ` Conor Dooley
2023-03-31 21:22 ` Palmer Dabbelt
2023-03-31 21:22 ` Palmer Dabbelt
2023-04-01 2:15 ` Guo Ren
2023-04-01 2:15 ` Guo Ren
2023-04-01 12:10 ` Heiko Stübner [this message]
2023-04-01 12:10 ` Heiko Stübner
2023-04-01 13:19 ` Björn Töpel
2023-04-01 13:19 ` Björn Töpel
2023-04-01 13:33 ` Björn Töpel
2023-04-01 14:58 ` Björn Töpel
2023-04-01 15:42 ` Heiko Stübner
2023-04-01 18:41 ` Björn Töpel
2023-04-07 9:13 ` Guo Ren
2023-04-07 9:18 ` Conor.Dooley
2023-04-08 4:59 ` Guo Ren
2023-04-01 1:39 ` Guo Ren
2023-04-01 1:39 ` Guo Ren
2023-04-01 9:32 ` Conor Dooley
2023-04-01 9:32 ` Conor Dooley
2023-06-29 14:02 ` Daniel Thompson
2023-06-29 14:02 ` Daniel Thompson
2023-06-30 11:16 ` Guo Ren
2023-06-30 11:16 ` Guo Ren
2023-06-30 11:22 ` Guo Ren
2023-06-30 11:22 ` Guo Ren
2023-06-30 14:50 ` Daniel Thompson
2023-06-30 14:50 ` Daniel Thompson
2023-07-01 2:55 ` Guo Ren
2023-07-01 2:55 ` Guo Ren
2023-07-01 3:08 ` Guo Ren
2023-07-01 3:08 ` Guo Ren
2023-07-01 4:22 ` Guo Ren
2023-07-01 4:22 ` Guo Ren
2023-07-03 3:09 ` Guo Ren
2023-07-03 3:09 ` Guo Ren
2023-02-22 3:30 ` [PATCH -next V17 5/7] riscv: entry: Remove extra level wrappers of trace_hardirqs_{on,off} guoren
2023-02-22 3:30 ` guoren
2023-02-22 3:30 ` [PATCH -next V17 6/7] riscv: entry: Consolidate ret_from_kernel_thread into ret_from_fork guoren
2023-02-22 3:30 ` guoren
2023-02-22 3:30 ` [PATCH -next V17 7/7] riscv: entry: Consolidate general regs saving/restoring guoren
2023-02-22 3:30 ` guoren
2023-03-24 22:01 ` (subset) [PATCH -next V17 0/7] riscv: Add GENERIC_ENTRY support Palmer Dabbelt
2023-03-24 22:01 ` Palmer Dabbelt
2023-03-24 22:10 ` patchwork-bot+linux-riscv
2023-03-24 22:10 ` patchwork-bot+linux-riscv
2023-03-27 23:27 ` Palmer Dabbelt
2023-03-27 23:27 ` Palmer Dabbelt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2587778.7s5MMGUR32@diego \
--to=heiko@sntech.de \
--cc=apatel@ventanamicro.com \
--cc=arnd@arndb.de \
--cc=atishp@atishpatra.org \
--cc=ben@decadent.org.uk \
--cc=bjorn@kernel.org \
--cc=bjorn@rivosinc.com \
--cc=chenhuacai@kernel.org \
--cc=conor.dooley@microchip.com \
--cc=conor@kernel.org \
--cc=falcon@tinylab.org \
--cc=guoren@kernel.org \
--cc=guoren@linux.alibaba.com \
--cc=jszhang@kernel.org \
--cc=lazyparser@gmail.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=luto@kernel.org \
--cc=mark.rutland@arm.com \
--cc=palmer@dabbelt.com \
--cc=palmer@rivosinc.com \
--cc=peterz@infradead.org \
--cc=tglx@linutronix.de \
--cc=zouyipeng@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.