[PATCH v2] KVM: PPC: BookE: Fix W=1 warnings

2023-04-02 Thread Michael Ellerman
Fix various W=1 warnings in booke.c:

  arch/powerpc/kvm/booke.c:1008:5: error: no previous prototype for 
‘kvmppc_handle_exit’ [-Werror=missing-prototypes]
   1008 | int kvmppc_handle_exit(struct kvm_vcpu *vcpu, unsigned int exit_nr)
| ^~
  arch/powerpc/kvm/booke.c:1009: warning: Function parameter or member 'vcpu' 
not described in 'kvmppc_handle_exit'
  arch/powerpc/kvm/booke.c:1009: warning: Function parameter or member 
'exit_nr' not described in 'kvmppc_handle_exit'

Reported-by: kernel test robot 
Link: https://lore.kernel.org/r/202304020827.3lez86wb-...@intel.com/
Signed-off-by: Michael Ellerman 
---
 arch/powerpc/kvm/booke.c | 2 +-
 arch/powerpc/kvm/booke.h | 3 +++
 2 files changed, 4 insertions(+), 1 deletion(-)

v2: Rebased on my topic/ppc-kvm branch where I already had some of the
fixes queued.

diff --git a/arch/powerpc/kvm/booke.c b/arch/powerpc/kvm/booke.c
index ce37d282be6d..a9c04073d27e 100644
--- a/arch/powerpc/kvm/booke.c
+++ b/arch/powerpc/kvm/booke.c
@@ -1000,7 +1000,7 @@ static int kvmppc_resume_inst_load(struct kvm_vcpu *vcpu,
}
 }
 
-/**
+/*
  * kvmppc_handle_exit
  *
  * Return value is in the form (errcode<<2 | RESUME_FLAG_HOST | RESUME_FLAG_NV)
diff --git a/arch/powerpc/kvm/booke.h b/arch/powerpc/kvm/booke.h
index be9da96d9f06..9c5b8e76014f 100644
--- a/arch/powerpc/kvm/booke.h
+++ b/arch/powerpc/kvm/booke.h
@@ -109,4 +109,7 @@ static inline void kvmppc_clear_dbsr(void)
 {
mtspr(SPRN_DBSR, mfspr(SPRN_DBSR));
 }
+
+int kvmppc_handle_exit(struct kvm_vcpu *vcpu, unsigned int exit_nr);
+
 #endif /* __KVM_BOOKE_H__ */
-- 
2.39.2



[PATCH] KVM: PPC: BookE: Fix W=1 warnings

2023-04-02 Thread Michael Ellerman
Fix various W=1 warnings in booke.c:

  arch/powerpc/kvm/booke.c:626:6: error: no previous prototype for 
‘kvmppc_watchdog_func’ [-Werror=missing-prototypes]
626 | void kvmppc_watchdog_func(struct timer_list *t)
|  ^~~~
  arch/powerpc/kvm/booke.c:1008:5: error: no previous prototype for 
‘kvmppc_handle_exit’ [-Werror=missing-prototypes]
   1008 | int kvmppc_handle_exit(struct kvm_vcpu *vcpu, unsigned int exit_nr)
| ^~
  arch/powerpc/kvm/booke.c:1949:6: error: no previous prototype for 
‘kvm_guest_protect_msr’ [-Werror=missing-prototypes]
   1949 | void kvm_guest_protect_msr(struct kvm_vcpu *vcpu, ulong prot_bitmap, 
bool set)
|  ^
  arch/powerpc/kvm/booke.c:1009: warning: Function parameter or member 'vcpu' 
not described in 'kvmppc_handle_exit'
  arch/powerpc/kvm/booke.c:1009: warning: Function parameter or member 
'exit_nr' not described in 'kvmppc_handle_exit'

Reported-by: kernel test robot 
Link: https://lore.kernel.org/r/202304020827.3lez86wb-...@intel.com/
Signed-off-by: Michael Ellerman 
---
 arch/powerpc/kvm/booke.c | 7 ---
 arch/powerpc/kvm/booke.h | 3 +++
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/arch/powerpc/kvm/booke.c b/arch/powerpc/kvm/booke.c
index 01adffb24667..5908f2cc6a81 100644
--- a/arch/powerpc/kvm/booke.c
+++ b/arch/powerpc/kvm/booke.c
@@ -623,7 +623,7 @@ static void arm_next_watchdog(struct kvm_vcpu *vcpu)
spin_unlock_irqrestore(>arch.wdt_lock, flags);
 }
 
-void kvmppc_watchdog_func(struct timer_list *t)
+static void kvmppc_watchdog_func(struct timer_list *t)
 {
struct kvm_vcpu *vcpu = from_timer(vcpu, t, arch.wdt_timer);
u32 tsr, new_tsr;
@@ -1000,7 +1000,7 @@ static int kvmppc_resume_inst_load(struct kvm_vcpu *vcpu,
}
 }
 
-/**
+/*
  * kvmppc_handle_exit
  *
  * Return value is in the form (errcode<<2 | RESUME_FLAG_HOST | RESUME_FLAG_NV)
@@ -1946,7 +1946,8 @@ static int kvmppc_booke_add_watchpoint(struct debug_reg 
*dbg_reg, uint64_t addr,
dbg_reg->dbcr0 |= DBCR0_IDM;
return 0;
 }
-void kvm_guest_protect_msr(struct kvm_vcpu *vcpu, ulong prot_bitmap, bool set)
+
+static void kvm_guest_protect_msr(struct kvm_vcpu *vcpu, ulong prot_bitmap, 
bool set)
 {
/* XXX: Add similar MSR protection for BookE-PR */
 #ifdef CONFIG_KVM_BOOKE_HV
diff --git a/arch/powerpc/kvm/booke.h b/arch/powerpc/kvm/booke.h
index be9da96d9f06..9c5b8e76014f 100644
--- a/arch/powerpc/kvm/booke.h
+++ b/arch/powerpc/kvm/booke.h
@@ -109,4 +109,7 @@ static inline void kvmppc_clear_dbsr(void)
 {
mtspr(SPRN_DBSR, mfspr(SPRN_DBSR));
 }
+
+int kvmppc_handle_exit(struct kvm_vcpu *vcpu, unsigned int exit_nr);
+
 #endif /* __KVM_BOOKE_H__ */
-- 
2.39.2



Re: [Skiboot] [PATCH V4 3/3] skiboot: Update IMC PMU node names for power10

2023-04-02 Thread Athira Rajeev



> On 23-Mar-2023, at 2:14 AM, Reza Arbab  wrote:
> 
> On Mon, Mar 06, 2023 at 09:09:13AM +0530, Athira Rajeev wrote:
>> +} else if (proc_gen == proc_gen_p10) {
>> +int val;
>> +char al[8], xl[8], otl[8], phb[8];
> 
> Are four different variables needed here? I think you could just reuse one 
> temporary variable.
> 
>   char name[8];

Hi Reza,

Thanks for checking the patch. I will send next version with this change

> 
>> +for (i=0; i<8; i++) {
>> +val = ((avl_vec & (0x7ULL << (29 + (3 * i >> (29 + 
>> (3 * i)));
>> +switch (val) {
>> +case 0x5: //xlink configured and functional
>> +
>> +snprintf(al, sizeof(al), "alink%1d",(7-i));
>> +target = dt_find_by_name_substr(dev, al);
>> +if (target)
>> +dt_free(target);
>> +
>> +snprintf(otl, sizeof(otl),"otl%1d_0",(7-i));
>> +target = dt_find_by_name_substr(dev, otl);
>> +if (target)
>> +dt_free(target);
>> +
>> +snprintf(otl,sizeof(otl),"otl%1d_1",(7-i));
>> +target = dt_find_by_name_substr(dev, otl);
>> +if (target)
>> +dt_free(target);
>> +
>> +break;
>> +case 0x6: //alink configured and functional
>> +
>> +snprintf(xl,sizeof(xl),"xlink%1d",(7-i));
>> +target = dt_find_by_name_substr(dev, xl);
>> +if (target)
>> +dt_free(target);
>> +
>> +snprintf(otl,sizeof(otl),"otl%1d_0",(7-i));
>> +target = dt_find_by_name_substr(dev, otl);
>> +if (target)
>> +dt_free(target);
>> +
>> +snprintf(otl,sizeof(otl),"otl%1d_1",(7-i));
>> +target = dt_find_by_name_substr(dev, otl);
>> +if (target)
>> +dt_free(target);
>> +break;
>> +
>> +case 0x7: //CAPI configured and functional
>> +snprintf(al,sizeof(al),"alink%1d",(7-i));
>> +target = dt_find_by_name_substr(dev, al);
>> +if (target)
>> +dt_free(target);
>> +
>> +snprintf(xl,sizeof(xl),"xlink%1d",(7-i));
>> +target = dt_find_by_name_substr(dev, xl);
>> +if (target)
>> +dt_free(target);
>> +break;
>> +default:
>> +snprintf(xl,sizeof(xl),"xlink%1d",(7-i));
>> +target = dt_find_by_name_substr(dev, xl);
>> +if (target)
>> +dt_free(target);
>> +
>> +snprintf(al,sizeof(al),"alink%1d",(7-i));
>> +target = dt_find_by_name_substr(dev, al);
>> +if (target)
>> +dt_free(target);
>> +
>> +snprintf(otl,sizeof(otl),"otl%1d_0",(7-i));
>> +target = dt_find_by_name_substr(dev, otl);
>> +if (target)
>> +dt_free(target);
>> +
>> +snprintf(otl,sizeof(otl),"otl%1d_1",(7-i));
>> +target = dt_find_by_name_substr(dev, otl);
>> +if (target)
>> +dt_free(target);
>> +break;
> 
> As far as I know skiboot follows the kernel coding style. Would you mind 
> fixing up the minor style nits checkpatch.pl reports for this patch?
Sure 

Thanks
Athira
> 
> -- 
> Reza Arbab



Re: [GIT PULL] Please pull powerpc/linux.git powerpc-6.3-4 tag

2023-04-02 Thread pr-tracker-bot
The pull request you sent on Sun, 02 Apr 2023 20:08:38 +1000:

> https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git 
> tags/powerpc-6.3-4

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/95d0b9d89d78e0983d4feb012b0f12d13d1ae19a

Thank you!

-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html


[GIT PULL] Please pull powerpc/linux.git powerpc-6.3-4 tag

2023-04-02 Thread Michael Ellerman
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA256

Hi Linus,

Please pull some more powerpc fixes for 6.3:

The following changes since commit f2c7e3562b4c4f1699acc1538ebf3e75f5cced35:

  powerpc/mm: Fix false detection of read faults (2023-03-15 20:48:53 +1100)

are available in the git repository at:

  https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git 
tags/powerpc-6.3-4

for you to fetch changes up to eca9f6e6f83b6725b84e1c76fdde19b003cff0eb:

  powerpc/pseries/vas: Ignore VAS update for DLPAR if copy/paste is not enabled 
(2023-03-29 23:01:35 +1100)

- --
powerpc fixes for 6.3 #4

 - Fix a false positive warning in __pte_needs_flush() (with DEBUG_VM=y).
 - Fix oops when a PF_IO_WORKER thread tries to core dump.
 - Don't try to reconfigure VAS when it's disabled.

Thanks to: Benjamin Gray, Haren Myneni, Jens Axboe, Nathan Lynch, Russell 
Currey.

- --
Benjamin Gray (1):
  powerpc/64s: Fix __pte_needs_flush() false positive warning

Haren Myneni (1):
  powerpc/pseries/vas: Ignore VAS update for DLPAR if copy/paste is not 
enabled

Jens Axboe (1):
  powerpc: Don't try to copy PPR for task with NULL pt_regs


 arch/powerpc/include/asm/book3s/64/tlbflush.h | 9 +++--
 arch/powerpc/kernel/ptrace/ptrace-view.c  | 6 ++
 arch/powerpc/platforms/pseries/vas.c  | 8 
 3 files changed, 21 insertions(+), 2 deletions(-)
-BEGIN PGP SIGNATURE-

iQIzBAEBCAAdFiEEJFGtCPCthwEv2Y/bUevqPMjhpYAFAmQpU+AACgkQUevqPMjh
pYAtgw//bMBbJvHS3zysyA4ADuISc5asa73axQJ8UK9je0UqeprA6z+DEocFIY+w
Tr6J4/0ynX5fbtAGOBQfaiiv3bhRzsZF7XFo6dw+Gy7kqPshjaF7hR/By4jNcva4
pM84AKaPQAnkeOntkxkExSWYyWLA7sjYlLdkPxnoifqH3WELOLCas9Be9NmUgKDi
kcspsRVeTdVlQuRS+mVJ62AHixfBz1ZmZcq9i1m4vrhvajlWtfp1TKb7xjIBAydL
el3yiNPlQa5W2aLuJM/+i/33Fik89jJ8muUssMIBL+1rVVzFcoLY/f/Tbo7i4ex1
+kwtSGRdp5N9EZglpUSmQobe/fc1dmx52aa0HFpnIpUKbd62oeKrAtvNowVx+UGa
zU5keDwCqUysweGtfDbIrn12828CQV50hywgwkF0r6wv2dqaJ6NVRWMsnGIFumV4
6i2ZLc014ixdju6xdL67hFPUl0WU/Nx+T9kKT1+9qEzOvsR9SUS8TuMcQkfNs7JL
zueSYJM3yf7J/EqKroyqnDgsR+UWApMMuOfXjEEeDLTAoGpzY2RdJ5Zh8tej7S7o
lAKbQC2s3g2/amNmySr9D19YWXAmQBaxk3t10J2Jvj5ccVlNMbrwjfrNFxOats2L
ZHELf7F/O9x5X21BpWypHKGZWq7GJx1uYGArGHgBjCrEUNR+7Aw=
=sL3a
-END PGP SIGNATURE-


Re: [PATCH 13/21] arc: dma-mapping: skip invalidating before bidirectional DMA

2023-04-02 Thread Vineet Gupta

CC Shahab

On 3/27/23 17:43, Arnd Bergmann wrote:

From: Arnd Bergmann

Some architectures that need to invalidate buffers after bidirectional
DMA because of speculative prefetching only do a simpler writeback
before that DMA, while architectures that don't need to do the second
invalidate tend to have a combined writeback+invalidate before the
DMA.

arc is one of the architectures that does both, which seems unnecessary.

Change it to behave like arm/arm64/xtensa instead, and use just a
writeback before the DMA when we do the invalidate afterwards.

Signed-off-by: Arnd Bergmann


Reviewed-by: Vineet Gupta 

Shahab can you give this a spin on hsdk - run glibc testsuite over ssh 
and make sure nothing strange happens.


Thx,
-Vineet