All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sean Christopherson <seanjc@google.com>
To: Colton Lewis <coltonlewis@google.com>
Cc: kvm@vger.kernel.org, pbonzini@redhat.com, maz@kernel.org,
	dmatlack@google.com, oupton@google.com, ricarkol@google.com,
	andrew.jones@linux.dev
Subject: Re: [PATCH v6 1/3] KVM: selftests: implement random number generation for guest code
Date: Wed, 12 Oct 2022 23:34:36 +0000	[thread overview]
Message-ID: <Y0dPDGtj4SJTeqAO@google.com> (raw)
In-Reply-To: <gsnt1qrc3fy9.fsf@coltonlewis-kvm.c.googlers.com>

On Wed, Oct 12, 2022, Colton Lewis wrote:
> Sean Christopherson <seanjc@google.com> writes:
> > The code is trivial to write and I can't think of any meaningful downside.
> > Worst case scenario, we end up with an implementation that is slightly more
> > formal than then we really need.
> 
> As a matter of personal taste, I don't like the additional formality
> making things look more complicated than they are. The stakes are small
> here but that kind of extra boilerplate can add up to make things
> confusing.

I agree about unnecessary boilerplate being a burden, especially when it comes to
KVM selftests, which are ridiculously "formal" and make simple operations
frustratingly difficult.

In this case though, I think the benefits of encapsulating the seed outweigh the
cost of the formality by a good margin, and I don't see that formality snowballing
any further.  A struct gets us:

  - Type checking on the input param, e.g. prevents passing in garbage for the seed.
  - The ability to switch out the algorithm.
  - Some protection against overwriting the seed, e.g. corrupting the struct pointer
    will explode and a memcpy() to overwrite the struct will be more visibily wrong.

> Thanks for your patience. I never wanted to cause trouble.

Heh, no worries.

  reply	other threads:[~2022-10-12 23:34 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-12 19:58 [PATCH v6 0/3] KVM: selftests: randomize memory access of dirty_log_perf_test Colton Lewis
2022-09-12 19:58 ` [PATCH v6 1/3] KVM: selftests: implement random number generation for guest code Colton Lewis
2022-10-07 20:41   ` Sean Christopherson
2022-10-11 18:11     ` Colton Lewis
2022-10-11 18:39       ` Sean Christopherson
2022-10-11 22:24         ` Colton Lewis
2022-10-11 23:47           ` Sean Christopherson
2022-10-12 21:11             ` Colton Lewis
2022-10-12 23:34               ` Sean Christopherson [this message]
2022-10-10 18:03   ` Sean Christopherson
2022-10-11 18:13     ` Colton Lewis
2022-10-11 18:26       ` Sean Christopherson
2022-10-11 22:33         ` Colton Lewis
2022-09-12 19:58 ` [PATCH v6 2/3] KVM: selftests: randomize which pages are written vs read Colton Lewis
2022-10-07 20:55   ` Sean Christopherson
2022-10-07 21:07     ` David Matlack
2022-10-08  9:50     ` Andrew Jones
2022-10-10 14:46       ` Sean Christopherson
2022-10-10 16:38         ` Andrew Jones
2022-09-12 19:58 ` [PATCH v6 3/3] KVM: selftests: randomize page access order Colton Lewis
2022-10-07 21:09   ` Sean Christopherson
2022-10-11 18:12     ` Colton Lewis
2022-10-11 18:22       ` Sean Christopherson
2022-10-11 22:25         ` Colton Lewis
2022-10-11 22:50           ` Sean Christopherson
2022-09-19 22:36 ` [PATCH v6 0/3] KVM: selftests: randomize memory access of dirty_log_perf_test David Matlack

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=Y0dPDGtj4SJTeqAO@google.com \
    --to=seanjc@google.com \
    --cc=andrew.jones@linux.dev \
    --cc=coltonlewis@google.com \
    --cc=dmatlack@google.com \
    --cc=kvm@vger.kernel.org \
    --cc=maz@kernel.org \
    --cc=oupton@google.com \
    --cc=pbonzini@redhat.com \
    --cc=ricarkol@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 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.