From: Aaron Lewis <aaronlewis@google.com>
To: Sean Christopherson <seanjc@google.com>
Cc: kvm@vger.kernel.org, pbonzini@redhat.com, jmattson@google.com
Subject: Re: [PATCH 4/8] KVM: selftests: Copy printf.c to KVM selftests
Date: Mon, 17 Apr 2023 15:59:03 +0000 [thread overview]
Message-ID: <ZD1sx+G2oWchaleW@google.com> (raw)
In-Reply-To: <ZBzM6M/Bm69KIGQQ@google.com>
On Thu, Mar 23, 2023, Sean Christopherson wrote:
> On Wed, Mar 01, 2023, Aaron Lewis wrote:
> > Add a local version of vsprintf() for the guest to use.
> >
> > The file printf.c was lifted from arch/x86/boot/printf.c.
>
> Is there by any shance a version of
> > +/*
> > + * Oh, it's a waste of space, but oh-so-yummy for debugging. This
> > + * version of printf() does not include 64-bit support. "Live with
>
> But selftests are 64-bit only, at least on x86.
>
I think that's a legacy comment. AFAICT this code supports 64-bit values.
I'll remove the comment to avoid confusion.
> > +static char *number(char *str, long num, int base, int size, int precision,
> > + int type)
>
> Do we actually need a custom number()? I.e. can we sub in a libc equivalent?
> That would reduce the craziness of this file by more than a few degrees.
>
Yeah, I think we need it. One of the biggest problems I'm trying to avoid
here is the use of LIBC in a guest. Using it always seems to end poorly
because guests generally don't set up AVX-512 or a TLS segmet, nor should
they have to. Calling into LIBC seems to require both of them too often,
so it seems like it's better to just avoid it.
Also, in working on v2 I upgraded vsprintf() to vsnprintf() which required
custom changes to number().
next prev parent reply other threads:[~2023-04-17 15:59 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-01 5:34 [PATCH 0/8] Add printf and formatted asserts in the guest Aaron Lewis
2023-03-01 5:34 ` [PATCH 1/8] KVM: selftests: Hoist XGETBV and XSETBV to make them more accessible Aaron Lewis
2023-03-01 5:34 ` [PATCH 2/8] KVM: selftests: Add XFEATURE masks to common code Aaron Lewis
2023-03-01 5:34 ` [PATCH 3/8] KVM: selftests: Add strnlen() to the string overrides Aaron Lewis
2023-03-01 5:34 ` [PATCH 4/8] KVM: selftests: Copy printf.c to KVM selftests Aaron Lewis
2023-03-23 22:04 ` Sean Christopherson
2023-04-17 15:59 ` Aaron Lewis [this message]
2023-04-18 15:03 ` Sean Christopherson
2023-04-18 16:06 ` Andrew Jones
2023-04-20 17:50 ` Sean Christopherson
2023-04-21 6:03 ` Andrew Jones
2023-03-01 5:34 ` [PATCH 5/8] KVM: selftests: Add vsprintf() " Aaron Lewis
2023-03-23 21:59 ` Sean Christopherson
2023-04-17 16:08 ` Aaron Lewis
2023-04-18 15:04 ` Sean Christopherson
2023-03-01 5:34 ` [PATCH 6/8] KVM: selftests: Add additional pages to the guest to accommodate ucall Aaron Lewis
2023-03-23 22:07 ` Sean Christopherson
2023-03-01 5:34 ` [PATCH 7/8] KVM: selftests: Add string formatting options to ucall Aaron Lewis
2023-03-01 8:07 ` Shaoqin Huang
2023-03-02 14:52 ` Aaron Lewis
2023-03-23 22:12 ` Sean Christopherson
2023-03-01 5:34 ` [PATCH 8/8] KVM: selftests: Add a selftest for guest prints and formatted asserts Aaron Lewis
2023-03-23 20:57 ` [PATCH 0/8] Add printf and formatted asserts in the guest Sean Christopherson
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=ZD1sx+G2oWchaleW@google.com \
--to=aaronlewis@google.com \
--cc=jmattson@google.com \
--cc=kvm@vger.kernel.org \
--cc=pbonzini@redhat.com \
--cc=seanjc@google.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 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).