From: Christophe Leroy <christophe.leroy@c-s.fr>
To: Ravi Bangoria <ravi.bangoria@linux.ibm.com>,
mpe@ellerman.id.au, mikey@neuling.org
Cc: apopple@linux.ibm.com, peterz@infradead.org, fweisbec@gmail.com,
oleg@redhat.com, npiggin@gmail.com, linux-kernel@vger.kernel.org,
paulus@samba.org, jolsa@kernel.org,
naveen.n.rao@linux.vnet.ibm.com, linuxppc-dev@lists.ozlabs.org,
mingo@kernel.org
Subject: Re: [PATCH 01/15] powerpc/watchpoint: Rename current DAWR macros
Date: Tue, 17 Mar 2020 11:14:50 +0100 [thread overview]
Message-ID: <6ae1865c-fcf6-5bef-2d93-e75b03ed8b44@c-s.fr> (raw)
In-Reply-To: <20200309085806.155823-2-ravi.bangoria@linux.ibm.com>
Le 09/03/2020 à 09:57, Ravi Bangoria a écrit :
> Future Power architecture is introducing second DAWR. Rename current
> DAWR macros as:
> s/SPRN_DAWR/SPRN_DAWR0/
> s/SPRN_DAWRX/SPRN_DAWRX0/
I think you should tell that DAWR0 and DAWRX0 is the real name of the
register as documented in (at least) power8 and power9 user manual.
Otherwise, we can't understand why you change the name of the register.
Christophe
>
> Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
> ---
> arch/powerpc/include/asm/reg.h | 4 ++--
> arch/powerpc/kernel/dawr.c | 4 ++--
> arch/powerpc/kvm/book3s_hv.c | 12 ++++++------
> arch/powerpc/kvm/book3s_hv_rmhandlers.S | 18 +++++++++---------
> arch/powerpc/xmon/xmon.c | 2 +-
> 5 files changed, 20 insertions(+), 20 deletions(-)
>
> diff --git a/arch/powerpc/include/asm/reg.h b/arch/powerpc/include/asm/reg.h
> index da5cab038e25..156ee89fa9be 100644
> --- a/arch/powerpc/include/asm/reg.h
> +++ b/arch/powerpc/include/asm/reg.h
> @@ -283,14 +283,14 @@
> #define CTRL_CT1 0x40000000 /* thread 1 */
> #define CTRL_TE 0x00c00000 /* thread enable */
> #define CTRL_RUNLATCH 0x1
> -#define SPRN_DAWR 0xB4
> +#define SPRN_DAWR0 0xB4
> #define SPRN_RPR 0xBA /* Relative Priority Register */
> #define SPRN_CIABR 0xBB
> #define CIABR_PRIV 0x3
> #define CIABR_PRIV_USER 1
> #define CIABR_PRIV_SUPER 2
> #define CIABR_PRIV_HYPER 3
> -#define SPRN_DAWRX 0xBC
> +#define SPRN_DAWRX0 0xBC
> #define DAWRX_USER __MASK(0)
> #define DAWRX_KERNEL __MASK(1)
> #define DAWRX_HYP __MASK(2)
> diff --git a/arch/powerpc/kernel/dawr.c b/arch/powerpc/kernel/dawr.c
> index cc14aa6c4a1b..e91b613bf137 100644
> --- a/arch/powerpc/kernel/dawr.c
> +++ b/arch/powerpc/kernel/dawr.c
> @@ -39,8 +39,8 @@ int set_dawr(struct arch_hw_breakpoint *brk)
> if (ppc_md.set_dawr)
> return ppc_md.set_dawr(dawr, dawrx);
>
> - mtspr(SPRN_DAWR, dawr);
> - mtspr(SPRN_DAWRX, dawrx);
> + mtspr(SPRN_DAWR0, dawr);
> + mtspr(SPRN_DAWRX0, dawrx);
>
> return 0;
> }
> diff --git a/arch/powerpc/kvm/book3s_hv.c b/arch/powerpc/kvm/book3s_hv.c
> index 33be4d93248a..498c57e1f5c9 100644
> --- a/arch/powerpc/kvm/book3s_hv.c
> +++ b/arch/powerpc/kvm/book3s_hv.c
> @@ -3383,8 +3383,8 @@ static int kvmhv_load_hv_regs_and_go(struct kvm_vcpu *vcpu, u64 time_limit,
> int trap;
> unsigned long host_hfscr = mfspr(SPRN_HFSCR);
> unsigned long host_ciabr = mfspr(SPRN_CIABR);
> - unsigned long host_dawr = mfspr(SPRN_DAWR);
> - unsigned long host_dawrx = mfspr(SPRN_DAWRX);
> + unsigned long host_dawr = mfspr(SPRN_DAWR0);
> + unsigned long host_dawrx = mfspr(SPRN_DAWRX0);
> unsigned long host_psscr = mfspr(SPRN_PSSCR);
> unsigned long host_pidr = mfspr(SPRN_PID);
>
> @@ -3413,8 +3413,8 @@ static int kvmhv_load_hv_regs_and_go(struct kvm_vcpu *vcpu, u64 time_limit,
> mtspr(SPRN_SPURR, vcpu->arch.spurr);
>
> if (dawr_enabled()) {
> - mtspr(SPRN_DAWR, vcpu->arch.dawr);
> - mtspr(SPRN_DAWRX, vcpu->arch.dawrx);
> + mtspr(SPRN_DAWR0, vcpu->arch.dawr);
> + mtspr(SPRN_DAWRX0, vcpu->arch.dawrx);
> }
> mtspr(SPRN_CIABR, vcpu->arch.ciabr);
> mtspr(SPRN_IC, vcpu->arch.ic);
> @@ -3466,8 +3466,8 @@ static int kvmhv_load_hv_regs_and_go(struct kvm_vcpu *vcpu, u64 time_limit,
> (local_paca->kvm_hstate.fake_suspend << PSSCR_FAKE_SUSPEND_LG));
> mtspr(SPRN_HFSCR, host_hfscr);
> mtspr(SPRN_CIABR, host_ciabr);
> - mtspr(SPRN_DAWR, host_dawr);
> - mtspr(SPRN_DAWRX, host_dawrx);
> + mtspr(SPRN_DAWR0, host_dawr);
> + mtspr(SPRN_DAWRX0, host_dawrx);
> mtspr(SPRN_PID, host_pidr);
>
> /*
> diff --git a/arch/powerpc/kvm/book3s_hv_rmhandlers.S b/arch/powerpc/kvm/book3s_hv_rmhandlers.S
> index dbc2fecc37f0..f4b412b7cad8 100644
> --- a/arch/powerpc/kvm/book3s_hv_rmhandlers.S
> +++ b/arch/powerpc/kvm/book3s_hv_rmhandlers.S
> @@ -707,8 +707,8 @@ BEGIN_FTR_SECTION
> END_FTR_SECTION_IFSET(CPU_FTR_ARCH_300)
> BEGIN_FTR_SECTION
> mfspr r5, SPRN_CIABR
> - mfspr r6, SPRN_DAWR
> - mfspr r7, SPRN_DAWRX
> + mfspr r6, SPRN_DAWR0
> + mfspr r7, SPRN_DAWRX0
> mfspr r8, SPRN_IAMR
> std r5, STACK_SLOT_CIABR(r1)
> std r6, STACK_SLOT_DAWR(r1)
> @@ -803,8 +803,8 @@ END_FTR_SECTION_IFCLR(CPU_FTR_ARCH_207S)
> beq 1f
> ld r5, VCPU_DAWR(r4)
> ld r6, VCPU_DAWRX(r4)
> - mtspr SPRN_DAWR, r5
> - mtspr SPRN_DAWRX, r6
> + mtspr SPRN_DAWR0, r5
> + mtspr SPRN_DAWRX0, r6
> 1:
> ld r7, VCPU_CIABR(r4)
> ld r8, VCPU_TAR(r4)
> @@ -1772,8 +1772,8 @@ BEGIN_FTR_SECTION
> * If the DAWR doesn't work, it's ok to write these here as
> * this value should always be zero
> */
> - mtspr SPRN_DAWR, r6
> - mtspr SPRN_DAWRX, r7
> + mtspr SPRN_DAWR0, r6
> + mtspr SPRN_DAWRX0, r7
> END_FTR_SECTION_IFSET(CPU_FTR_ARCH_207S)
> BEGIN_FTR_SECTION
> ld r5, STACK_SLOT_TID(r1)
> @@ -2583,8 +2583,8 @@ END_FTR_SECTION_IFSET(CPU_FTR_ARCH_207S)
> mfmsr r6
> andi. r6, r6, MSR_DR /* in real mode? */
> bne 4f
> - mtspr SPRN_DAWR, r4
> - mtspr SPRN_DAWRX, r5
> + mtspr SPRN_DAWR0, r4
> + mtspr SPRN_DAWRX0, r5
> 4: li r3, 0
> blr
>
> @@ -3340,7 +3340,7 @@ END_FTR_SECTION_IFCLR(CPU_FTR_ARCH_300)
> mtspr SPRN_AMR, r0
> mtspr SPRN_IAMR, r0
> mtspr SPRN_CIABR, r0
> - mtspr SPRN_DAWRX, r0
> + mtspr SPRN_DAWRX0, r0
>
> BEGIN_MMU_FTR_SECTION
> b 4f
> diff --git a/arch/powerpc/xmon/xmon.c b/arch/powerpc/xmon/xmon.c
> index e8c84d265602..6c4a8f8c0bd8 100644
> --- a/arch/powerpc/xmon/xmon.c
> +++ b/arch/powerpc/xmon/xmon.c
> @@ -1938,7 +1938,7 @@ static void dump_207_sprs(void)
> printf("hfscr = %.16lx dhdes = %.16lx rpr = %.16lx\n",
> mfspr(SPRN_HFSCR), mfspr(SPRN_DHDES), mfspr(SPRN_RPR));
> printf("dawr = %.16lx dawrx = %.16lx ciabr = %.16lx\n",
> - mfspr(SPRN_DAWR), mfspr(SPRN_DAWRX), mfspr(SPRN_CIABR));
> + mfspr(SPRN_DAWR0), mfspr(SPRN_DAWRX0), mfspr(SPRN_CIABR));
> #endif
> }
>
>
next prev parent reply other threads:[~2020-03-17 10:16 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-09 8:57 [PATCH 00/15] powerpc/watchpoint: Preparation for more than one watchpoint Ravi Bangoria
2020-03-09 8:57 ` [PATCH 01/15] powerpc/watchpoint: Rename current DAWR macros Ravi Bangoria
2020-03-17 10:14 ` Christophe Leroy [this message]
2020-03-18 12:40 ` Ravi Bangoria
2020-03-09 8:57 ` [PATCH 02/15] powerpc/watchpoint: Add SPRN macros for second DAWR Ravi Bangoria
2020-03-17 10:16 ` Christophe Leroy
2020-03-18 18:30 ` Segher Boessenkool
2020-03-09 8:57 ` [PATCH 03/15] powerpc/watchpoint: Introduce function to get nr watchpoints dynamically Ravi Bangoria
2020-03-17 10:21 ` Christophe Leroy
2020-03-18 5:50 ` Ravi Bangoria
2020-03-09 8:57 ` [PATCH 04/15] powerpc/watchpoint/ptrace: Return actual num of available watchpoints Ravi Bangoria
2020-03-09 8:57 ` [PATCH 05/15] powerpc/watchpoint: Provide DAWR number to set_dawr Ravi Bangoria
2020-03-17 10:28 ` Christophe Leroy
2020-03-18 6:18 ` Ravi Bangoria
2020-03-09 8:57 ` [PATCH 06/15] powerpc/watchpoint: Provide DAWR number to __set_breakpoint Ravi Bangoria
2020-03-09 8:57 ` [PATCH 07/15] powerpc/watchpoint: Get watchpoint count dynamically while disabling them Ravi Bangoria
2020-03-17 10:32 ` Christophe Leroy
2020-03-18 6:57 ` Ravi Bangoria
2020-03-26 3:32 ` Ravi Bangoria
2020-03-09 8:57 ` [PATCH 08/15] powerpc/watchpoint: Disable all available watchpoints when !dawr_force_enable Ravi Bangoria
2020-03-17 10:35 ` Christophe Leroy
2020-03-18 7:32 ` Ravi Bangoria
2020-03-09 8:58 ` [PATCH 09/15] powerpc/watchpoint: Convert thread_struct->hw_brk to an array Ravi Bangoria
2020-03-17 10:37 ` Christophe Leroy
2020-03-18 8:36 ` Ravi Bangoria
2020-03-18 8:56 ` Christophe Leroy
2020-03-18 9:22 ` Ravi Bangoria
2020-03-09 8:58 ` [PATCH 10/15] powerpc/watchpoint: Use loop for thread_struct->ptrace_bps Ravi Bangoria
2020-03-17 10:48 ` Christophe Leroy
2020-03-18 9:43 ` Ravi Bangoria
2020-03-09 8:58 ` [PATCH 11/15] powerpc/watchpoint: Introduce is_ptrace_bp() function Ravi Bangoria
2020-03-17 10:49 ` Christophe Leroy
2020-03-09 8:58 ` [PATCH 12/15] powerpc/watchpoint: Prepare handler to handle more than one watcnhpoint Ravi Bangoria
2020-03-17 10:59 ` Christophe Leroy
2020-03-18 11:35 ` Michael Ellerman
2020-03-18 11:44 ` Christophe Leroy
2020-03-18 21:27 ` Segher Boessenkool
2020-03-18 23:36 ` Michael Ellerman
2020-03-18 12:14 ` Ravi Bangoria
2020-03-09 8:58 ` [PATCH 13/15] powerpc/watchpoint: Don't allow concurrent perf and ptrace events Ravi Bangoria
2020-03-17 11:08 ` Christophe Leroy
2020-03-18 12:35 ` Ravi Bangoria
2020-03-09 8:58 ` [PATCH 14/15] powerpc/watchpoint/xmon: Don't allow breakpoint overwriting Ravi Bangoria
2020-03-17 11:10 ` Christophe Leroy
2020-03-18 12:37 ` Ravi Bangoria
2020-03-18 13:31 ` Christophe Leroy
2020-03-09 8:58 ` [PATCH 15/15] powerpc/watchpoint/xmon: Support 2nd dawr Ravi Bangoria
2020-03-17 11:14 ` Christophe Leroy
2020-03-18 12:39 ` Ravi Bangoria
2020-03-16 15:05 ` [PATCH 00/15] powerpc/watchpoint: Preparation for more than one watchpoint Christophe Leroy
2020-03-16 18:43 ` Segher Boessenkool
2020-03-17 5:56 ` Christophe Leroy
2020-03-18 12:52 ` Ravi Bangoria
2020-03-23 13:37 ` Ravi Bangoria
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=6ae1865c-fcf6-5bef-2d93-e75b03ed8b44@c-s.fr \
--to=christophe.leroy@c-s.fr \
--cc=apopple@linux.ibm.com \
--cc=fweisbec@gmail.com \
--cc=jolsa@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=mikey@neuling.org \
--cc=mingo@kernel.org \
--cc=mpe@ellerman.id.au \
--cc=naveen.n.rao@linux.vnet.ibm.com \
--cc=npiggin@gmail.com \
--cc=oleg@redhat.com \
--cc=paulus@samba.org \
--cc=peterz@infradead.org \
--cc=ravi.bangoria@linux.ibm.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).