All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
To: David Gibson <david@gibson.dropbear.id.au>
Cc: paulus@samba.org, mpe@ellerman.id.au, mikey@neuling.org,
	pbonzini@redhat.com, mst@redhat.com, clg@kaod.org,
	qemu-ppc@nongnu.org, qemu-devel@nongnu.org, kvm@vger.kernel.org,
	cohuck@redhat.com, groug@kaod.org,
	Ravi Bangoria <ravi.bangoria@linux.ibm.com>
Subject: Re: [PATCH v5 3/3] ppc: Enable 2nd DAWR support on p10
Date: Wed, 21 Apr 2021 11:50:40 +0530	[thread overview]
Message-ID: <ca21d852-4b54-01d3-baab-cc8d0d50e505@linux.ibm.com> (raw)
In-Reply-To: <YH0M1YdINJqbdqP+@yekko.fritz.box>

Hi David,

On 4/19/21 10:23 AM, David Gibson wrote:
> On Mon, Apr 12, 2021 at 05:14:33PM +0530, Ravi Bangoria wrote:
>> As per the PAPR, bit 0 of byte 64 in pa-features property indicates
>> availability of 2nd DAWR registers. i.e. If this bit is set, 2nd
>> DAWR is present, otherwise not. Use KVM_CAP_PPC_DAWR1 capability to
>> find whether kvm supports 2nd DAWR or not. If it's supported, allow
>> user to set the pa-feature bit in guest DT using cap-dawr1 machine
>> capability. Though, watchpoint on powerpc TCG guest is not supported
>> and thus 2nd DAWR is not enabled for TCG mode.
>>
>> Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
>> Reviewed-by: Greg Kurz <groug@kaod.org>
> 
> So, I'm actually not sure if using an spapr capability is what we want
> to do here.  The problem is that presumably the idea is to at some
> point make the DAWR1 capability default to on (on POWER10, at least).
> But at that point you'll no longer to be able to start TCG guests
> without explicitly disabling it.  That's technically correct, since we
> don't implement DAWR1 in TCG, but then we also don't implement DAWR0
> and we let that slide... which I think is probably going to cause less
> irritation on balance.

Ok. Probably something like this is what you want?

Power10 behavior:
   - KVM does not support DAWR1: Boot the guest without DAWR1
     support (No warnings). Error out only if user tries with
     cap-dawr1=on.
   - KVM supports DAWR1: Boot the guest with DAWR1 support, unless
     user specifies cap-dawr1=off.
   - TCG guest: Ignore cap-dawr1 i.e. boot as if there is only
     DAWR0 (Should be fixed in future while adding PowerPC watch-
     point support in TCG mode)

Power10 predecessor behavior:
   - KVM guest: Boot the guest without DAWR1 support. Error out
     if user tries with cap-dawr1=on.
   - TCG guest: Ignore cap-dawr1 i.e. boot as if there is only
     DAWR0 (Should be fixed in future while adding PowerPC watch-
     point support in TCG mode)

> I'm wondering if we're actually just better off setting the pa feature
> just based on the guest CPU model.  TCG will be broken if you try to
> use it, but then, it already is.  AFAIK there's no inherent reason we
> couldn't implement DAWR support in TCG, it's just never been worth the
> trouble.

Correct. Probably there is no practical usecase for DAWR in TCG mode.

Thanks,
Ravi

WARNING: multiple messages have this Message-ID (diff)
From: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
To: David Gibson <david@gibson.dropbear.id.au>
Cc: qemu-ppc@nongnu.org, mikey@neuling.org, kvm@vger.kernel.org,
	mst@redhat.com, mpe@ellerman.id.au, cohuck@redhat.com,
	qemu-devel@nongnu.org, groug@kaod.org, paulus@samba.org,
	clg@kaod.org, pbonzini@redhat.com,
	Ravi Bangoria <ravi.bangoria@linux.ibm.com>
Subject: Re: [PATCH v5 3/3] ppc: Enable 2nd DAWR support on p10
Date: Wed, 21 Apr 2021 11:50:40 +0530	[thread overview]
Message-ID: <ca21d852-4b54-01d3-baab-cc8d0d50e505@linux.ibm.com> (raw)
In-Reply-To: <YH0M1YdINJqbdqP+@yekko.fritz.box>

Hi David,

On 4/19/21 10:23 AM, David Gibson wrote:
> On Mon, Apr 12, 2021 at 05:14:33PM +0530, Ravi Bangoria wrote:
>> As per the PAPR, bit 0 of byte 64 in pa-features property indicates
>> availability of 2nd DAWR registers. i.e. If this bit is set, 2nd
>> DAWR is present, otherwise not. Use KVM_CAP_PPC_DAWR1 capability to
>> find whether kvm supports 2nd DAWR or not. If it's supported, allow
>> user to set the pa-feature bit in guest DT using cap-dawr1 machine
>> capability. Though, watchpoint on powerpc TCG guest is not supported
>> and thus 2nd DAWR is not enabled for TCG mode.
>>
>> Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
>> Reviewed-by: Greg Kurz <groug@kaod.org>
> 
> So, I'm actually not sure if using an spapr capability is what we want
> to do here.  The problem is that presumably the idea is to at some
> point make the DAWR1 capability default to on (on POWER10, at least).
> But at that point you'll no longer to be able to start TCG guests
> without explicitly disabling it.  That's technically correct, since we
> don't implement DAWR1 in TCG, but then we also don't implement DAWR0
> and we let that slide... which I think is probably going to cause less
> irritation on balance.

Ok. Probably something like this is what you want?

Power10 behavior:
   - KVM does not support DAWR1: Boot the guest without DAWR1
     support (No warnings). Error out only if user tries with
     cap-dawr1=on.
   - KVM supports DAWR1: Boot the guest with DAWR1 support, unless
     user specifies cap-dawr1=off.
   - TCG guest: Ignore cap-dawr1 i.e. boot as if there is only
     DAWR0 (Should be fixed in future while adding PowerPC watch-
     point support in TCG mode)

Power10 predecessor behavior:
   - KVM guest: Boot the guest without DAWR1 support. Error out
     if user tries with cap-dawr1=on.
   - TCG guest: Ignore cap-dawr1 i.e. boot as if there is only
     DAWR0 (Should be fixed in future while adding PowerPC watch-
     point support in TCG mode)

> I'm wondering if we're actually just better off setting the pa feature
> just based on the guest CPU model.  TCG will be broken if you try to
> use it, but then, it already is.  AFAIK there's no inherent reason we
> couldn't implement DAWR support in TCG, it's just never been worth the
> trouble.

Correct. Probably there is no practical usecase for DAWR in TCG mode.

Thanks,
Ravi


  reply	other threads:[~2021-04-21  6:22 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-12 11:44 [PATCH v5 0/3] ppc: Enable 2nd DAWR support on Power10 Ravi Bangoria
2021-04-12 11:44 ` Ravi Bangoria
2021-04-12 11:44 ` [PATCH v5 1/3] Linux headers: update from 5.12-rc3 Ravi Bangoria
2021-04-12 11:44   ` Ravi Bangoria
2021-04-12 11:44 ` [PATCH v5 2/3] ppc: Rename current DAWR macros and variables Ravi Bangoria
2021-04-12 11:44   ` Ravi Bangoria
2021-04-19  4:47   ` David Gibson
2021-04-19  4:47     ` David Gibson
2021-04-12 11:44 ` [PATCH v5 3/3] ppc: Enable 2nd DAWR support on p10 Ravi Bangoria
2021-04-12 11:44   ` Ravi Bangoria
2021-04-12 13:10   ` Cédric Le Goater
2021-04-12 13:10     ` Cédric Le Goater
2021-04-19  4:53   ` David Gibson
2021-04-19  4:53     ` David Gibson
2021-04-21  6:20     ` Ravi Bangoria [this message]
2021-04-21  6:20       ` Ravi Bangoria
2021-04-21  6:31       ` Cédric Le Goater
2021-04-21  6:31         ` Cédric Le Goater
2021-04-21  6:54         ` Ravi Bangoria
2021-04-21  6:54           ` Ravi Bangoria
2021-04-22  1:56           ` David Gibson
2021-04-22  1:56             ` David Gibson
2021-04-22  4:45             ` Richard Henderson
2021-04-22  4:45               ` Richard Henderson
2021-05-05  5:50       ` David Gibson
2021-05-05  5:50         ` David Gibson
2023-07-07  8:42         ` Shivaprasad G Bhat

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=ca21d852-4b54-01d3-baab-cc8d0d50e505@linux.ibm.com \
    --to=ravi.bangoria@linux.ibm.com \
    --cc=clg@kaod.org \
    --cc=cohuck@redhat.com \
    --cc=david@gibson.dropbear.id.au \
    --cc=groug@kaod.org \
    --cc=kvm@vger.kernel.org \
    --cc=mikey@neuling.org \
    --cc=mpe@ellerman.id.au \
    --cc=mst@redhat.com \
    --cc=paulus@samba.org \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@nongnu.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 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.