xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Andrew Cooper <Andrew.Cooper3@citrix.com>
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Gianluca Guida <gianluca@rivosinc.com>,
	Bob Eshleman <bobbyeshleman@gmail.com>,
	Alistair Francis <alistair.francis@wdc.com>,
	Connor Davis <connojdavis@gmail.com>,
	George Dunlap <George.Dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>, Doug Goldstein <cardoe@cardoe.com>
Subject: Re: [PATCH v1 0/8] Basic early_printk and smoke test implementation
Date: Fri, 6 Jan 2023 13:51:59 +0000	[thread overview]
Message-ID: <299d913c-8095-ad90-ea3b-d46ef74d4fdc@citrix.com> (raw)
In-Reply-To: <cover.1673009740.git.oleksii.kurochko@gmail.com>

On 06/01/2023 1:14 pm, Oleksii Kurochko wrote:
> The patch series introduces the following:
> - the minimal set of headers and changes inside them.
> - SBI (RISC-V Supervisor Binary Interface) things necessary for basic
>   early_printk implementation.
> - things needed to set up the stack.
> - early_printk() function to print only strings.
> - RISC-V smoke test which checks if  "Hello from C env" message is
>   present in serial.tmp
>
> Oleksii Kurochko (8):
>   xen/riscv: introduce dummy asm/init.h
>   xen/riscv: introduce asm/types.h header file
>   xen/riscv: introduce stack stuff
>   xen/riscv: introduce sbi call to putchar to console
>   xen/include: include <asm/types.h> in <xen/early_printk.h>
>   xen/riscv: introduce early_printk basic stuff
>   xen/riscv: print hello message from C env
>   automation: add RISC-V smoke test

Thanks.  This highlights several areas where I think we want some rework
to the current common/arch split.

First, it really shouldn't be necessary for architectures to create
emtpy stub files.  There are two options - first drop some empty files
in xen/include/arch-fallback/asm and put a suitable -I at the end of
CFLAGS.  The other option, which is nicer IMO, is to use __has_include()
although that would require us finally deciding to bump the minimum GCC
version to 5 for x86 (which we need to do for may other reasons too).

Second, the asm/types is absurd.  That should be one common header,
because there's nothing arch specific about making those types appear.

Third, the early printk infrastructure is partially broken (the common
header can't be cleanly included), and unsatisfactory with how it plumbs
into the default console steal function.  With a bit of cleanup, most of
it can be not duplicated per arch.

~Andrew

      parent reply	other threads:[~2023-01-06 13:52 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-06 13:14 [PATCH v1 0/8] Basic early_printk and smoke test implementation Oleksii Kurochko
2023-01-06 13:14 ` [PATCH v1 1/8] xen/riscv: introduce dummy asm/init.h Oleksii Kurochko
2023-01-06 13:42   ` Julien Grall
2023-01-09  8:53     ` Oleksii
2023-01-06 13:14 ` [PATCH v1 2/8] xen/riscv: introduce asm/types.h header file Oleksii Kurochko
2023-01-06 14:12   ` Jan Beulich
2023-01-09  8:55     ` Oleksii
2023-01-06 13:14 ` [PATCH v1 3/8] xen/riscv: introduce stack stuff Oleksii Kurochko
2023-01-06 13:54   ` Julien Grall
2023-01-09  9:00     ` Oleksii
2023-01-06 14:15   ` Jan Beulich
2023-01-09  8:57     ` Oleksii
2023-01-06 14:55   ` Andrew Cooper
2023-01-06 13:14 ` [PATCH v1 4/8] xen/riscv: introduce sbi call to putchar to console Oleksii Kurochko
2022-12-20  6:23   ` Bobby Eshleman
2023-01-06 17:16     ` Andrew Cooper
2022-12-20  6:50       ` Bobby Eshleman
2023-01-09 13:01       ` Oleksii
2023-01-06 13:40   ` Julien Grall
2023-01-06 15:19     ` Andrew Cooper
2023-01-06 15:39       ` Julien Grall
2023-01-09  9:04     ` Oleksii
2023-01-09 11:11       ` Julien Grall
2023-01-06 15:19   ` Michal Orzel
2023-01-09  9:06     ` Oleksii
2023-01-06 13:14 ` [PATCH v1 5/8] xen/include: include <asm/types.h> in <xen/early_printk.h> Oleksii Kurochko
2023-01-06 13:45   ` Julien Grall
2023-01-06 13:14 ` [PATCH v1 6/8] xen/riscv: introduce early_printk basic stuff Oleksii Kurochko
2023-01-06 13:51   ` Julien Grall
2023-01-09  9:10     ` Oleksii
2023-01-09 11:14       ` Julien Grall
2023-01-06 13:14 ` [PATCH v1 7/8] xen/riscv: print hello message from C env Oleksii Kurochko
2023-01-06 13:14 ` [PATCH v1 8/8] automation: add RISC-V smoke test Oleksii Kurochko
2023-01-06 15:05   ` Andrew Cooper
2023-01-09  9:11     ` Oleksii
2023-01-06 13:51 ` Andrew Cooper [this message]

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=299d913c-8095-ad90-ea3b-d46ef74d4fdc@citrix.com \
    --to=andrew.cooper3@citrix.com \
    --cc=George.Dunlap@citrix.com \
    --cc=alistair.francis@wdc.com \
    --cc=bobbyeshleman@gmail.com \
    --cc=cardoe@cardoe.com \
    --cc=connojdavis@gmail.com \
    --cc=gianluca@rivosinc.com \
    --cc=jbeulich@suse.com \
    --cc=julien@xen.org \
    --cc=oleksii.kurochko@gmail.com \
    --cc=sstabellini@kernel.org \
    --cc=wl@xen.org \
    --cc=xen-devel@lists.xenproject.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).