Re: [PATCH v4 05/13] powerpc/rtas: Facilitate high-level call sequences

2023-12-06 Thread Michael Ellerman
Nathan Lynch writes: > Nathan Lynch writes: >> Michael Ellerman writes: >>> Nathan Lynch writes: Michael Ellerman writes: > Nathan Lynch writes: >> Michael Ellerman writes: >>> Nathan Lynch via B4 Relay >>> writes: From: Nathan Lynch On RTAS

Re: [PATCH v4 05/13] powerpc/rtas: Facilitate high-level call sequences

2023-12-05 Thread Nathan Lynch
Nathan Lynch writes: > Michael Ellerman writes: >> Nathan Lynch writes: >>> Michael Ellerman writes: Nathan Lynch writes: > Michael Ellerman writes: >> Nathan Lynch via B4 Relay >> writes: >>> From: Nathan Lynch >>> >>> On RTAS platforms there is a general

Re: [PATCH v4 05/13] powerpc/rtas: Facilitate high-level call sequences

2023-11-30 Thread Nathan Lynch
Michael Ellerman writes: > Nathan Lynch writes: >> Michael Ellerman writes: >>> Nathan Lynch writes: Michael Ellerman writes: > Nathan Lynch via B4 Relay > writes: >> From: Nathan Lynch >> >> On RTAS platforms there is a general restriction that the OS must not

Re: [PATCH v4 05/13] powerpc/rtas: Facilitate high-level call sequences

2023-11-30 Thread Michael Ellerman
Nathan Lynch writes: > Michael Ellerman writes: >> Nathan Lynch writes: >>> Michael Ellerman writes: Nathan Lynch via B4 Relay writes: > From: Nathan Lynch > > On RTAS platforms there is a general restriction that the OS must not > enter RTAS on more than one CPU at

Re: [PATCH v4 05/13] powerpc/rtas: Facilitate high-level call sequences

2023-11-30 Thread Nathan Lynch
Nathan Lynch writes: > Alternatively, sys_rtas() could be refactored into locking and > non-locking paths, e.g. > > static long __do_sys_rtas(struct rtas_function *func) > { > // [ ... acquire rtas_lock, enter RTAS, fetch any error etc ... ] > } Of course this conflicts with the code

Re: [PATCH v4 05/13] powerpc/rtas: Facilitate high-level call sequences

2023-11-30 Thread Nathan Lynch
Michael Ellerman writes: > Nathan Lynch writes: >> Michael Ellerman writes: >> >>> Nathan Lynch via B4 Relay >>> writes: From: Nathan Lynch On RTAS platforms there is a general restriction that the OS must not enter RTAS on more than one CPU at a time. This low-level

Re: [PATCH v4 05/13] powerpc/rtas: Facilitate high-level call sequences

2023-11-29 Thread Michael Ellerman
Nathan Lynch writes: > Michael Ellerman writes: > >> Nathan Lynch via B4 Relay >> writes: >>> From: Nathan Lynch >>> >>> On RTAS platforms there is a general restriction that the OS must not >>> enter RTAS on more than one CPU at a time. This low-level >>> serialization requirement is

Re: [PATCH v4 05/13] powerpc/rtas: Facilitate high-level call sequences

2023-11-28 Thread Michael Ellerman
Nathan Lynch writes: > Michael Ellerman writes: >> Nathan Lynch via B4 Relay >> writes: >>> diff --git a/arch/powerpc/kernel/rtas.c b/arch/powerpc/kernel/rtas.c >>> index 1fc0b3fffdd1..52f2242d0c28 100644 >>> --- a/arch/powerpc/kernel/rtas.c >>> +++ b/arch/powerpc/kernel/rtas.c >>> @@ -196,6

Re: [PATCH v4 05/13] powerpc/rtas: Facilitate high-level call sequences

2023-11-28 Thread Nathan Lynch
Michael Ellerman writes: > Nathan Lynch via B4 Relay > writes: >> diff --git a/arch/powerpc/kernel/rtas.c b/arch/powerpc/kernel/rtas.c >> index 1fc0b3fffdd1..52f2242d0c28 100644 >> --- a/arch/powerpc/kernel/rtas.c >> +++ b/arch/powerpc/kernel/rtas.c >> @@ -196,6 +224,12 @@ static struct

Re: [PATCH v4 05/13] powerpc/rtas: Facilitate high-level call sequences

2023-11-28 Thread Michael Ellerman
Nathan Lynch via B4 Relay writes: > diff --git a/arch/powerpc/kernel/rtas.c b/arch/powerpc/kernel/rtas.c > index 1fc0b3fffdd1..52f2242d0c28 100644 > --- a/arch/powerpc/kernel/rtas.c > +++ b/arch/powerpc/kernel/rtas.c > @@ -196,6 +224,12 @@ static struct rtas_function rtas_function_table[] >

Re: [PATCH v4 05/13] powerpc/rtas: Facilitate high-level call sequences

2023-11-28 Thread Nathan Lynch
Michael Ellerman writes: > Nathan Lynch via B4 Relay > writes: >> From: Nathan Lynch >> >> On RTAS platforms there is a general restriction that the OS must not >> enter RTAS on more than one CPU at a time. This low-level >> serialization requirement is satisfied by holding a spin >> lock

Re: [PATCH v4 05/13] powerpc/rtas: Facilitate high-level call sequences

2023-11-28 Thread Michael Ellerman
Nathan Lynch via B4 Relay writes: > From: Nathan Lynch > > On RTAS platforms there is a general restriction that the OS must not > enter RTAS on more than one CPU at a time. This low-level > serialization requirement is satisfied by holding a spin > lock (rtas_lock) across most RTAS function

Re: [PATCH v4 05/13] powerpc/rtas: Facilitate high-level call sequences

2023-11-28 Thread Nathan Lynch
"Aneesh Kumar K.V (IBM)" writes: > Nathan Lynch via B4 Relay > writes: >> There should be no perceivable change introduced here except that >> concurrent callers of the same RTAS function via sys_rtas() may block >> on a mutex instead of spinning on rtas_lock. Changes to follow will >> add

Re: [PATCH v4 05/13] powerpc/rtas: Facilitate high-level call sequences

2023-11-20 Thread IBM
Nathan Lynch via B4 Relay writes: > From: Nathan Lynch > > On RTAS platforms there is a general restriction that the OS must not > enter RTAS on more than one CPU at a time. This low-level > serialization requirement is satisfied by holding a spin > lock (rtas_lock) across most RTAS function

[PATCH v4 05/13] powerpc/rtas: Facilitate high-level call sequences

2023-11-17 Thread Nathan Lynch via B4 Relay
From: Nathan Lynch On RTAS platforms there is a general restriction that the OS must not enter RTAS on more than one CPU at a time. This low-level serialization requirement is satisfied by holding a spin lock (rtas_lock) across most RTAS function invocations. However, some pseries RTAS