Message ID | 20200312074404.87293-1-aik@ozlabs.ru |
---|---|
State | Accepted |
Commit | 74bb84e5117146fa73eb9d01305975c53022b3c3 |
Headers | show |
Series | [kernel] powerpc/prom_init: Pass the "os-term" message to hypervisor | expand |
Context | Check | Description |
---|---|---|
snowpatch_ozlabs/needsstable | success | Patch has no Fixes tags |
snowpatch_ozlabs/checkpatch | success | total: 0 errors, 0 warnings, 0 checks, 9 lines checked |
snowpatch_ozlabs/build-pmac32 | success | Build succeeded |
snowpatch_ozlabs/build-ppc64e | success | Build succeeded |
snowpatch_ozlabs/build-ppc64be | success | Build succeeded |
snowpatch_ozlabs/build-ppc64le | success | Build succeeded |
snowpatch_ozlabs/apply_patch | success | Successfully applied on branch powerpc/merge (ab326587bb5fb91cc97df9b9f48e9e1469f04621) |
Alexey Kardashevskiy <aik@ozlabs.ru> writes: > The "os-term" RTAS calls has one argument with a message address of > OS termination cause. rtas_os_term() already passes it but the recently > added prom_init's version of that missed it; it also does not fill args > correctly. > > This passes the message address and initializes the number of arguments. > > Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> I added: Fixes: 6a9c930bd775 ("powerpc/prom_init: Add the ESM call to prom_init") cheers > diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c > index 577345382b23..673f13b87db1 100644 > --- a/arch/powerpc/kernel/prom_init.c > +++ b/arch/powerpc/kernel/prom_init.c > @@ -1773,6 +1773,9 @@ static void __init prom_rtas_os_term(char *str) > if (token == 0) > prom_panic("Could not get token for ibm,os-term\n"); > os_term_args.token = cpu_to_be32(token); > + os_term_args.nargs = cpu_to_be32(1); > + os_term_args.nret = cpu_to_be32(1); > + os_term_args.args[0] = cpu_to_be32(__pa(str)); > prom_rtas_hcall((uint64_t)&os_term_args); > } > #endif /* CONFIG_PPC_SVM */ > -- > 2.17.1
On Thu, 2020-03-12 at 07:44:04 UTC, Alexey Kardashevskiy wrote: > The "os-term" RTAS calls has one argument with a message address of > OS termination cause. rtas_os_term() already passes it but the recently > added prom_init's version of that missed it; it also does not fill args > correctly. > > This passes the message address and initializes the number of arguments. > > Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> Applied to powerpc next, thanks. https://git.kernel.org/powerpc/c/74bb84e5117146fa73eb9d01305975c53022b3c3 cheers
diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c index 577345382b23..673f13b87db1 100644 --- a/arch/powerpc/kernel/prom_init.c +++ b/arch/powerpc/kernel/prom_init.c @@ -1773,6 +1773,9 @@ static void __init prom_rtas_os_term(char *str) if (token == 0) prom_panic("Could not get token for ibm,os-term\n"); os_term_args.token = cpu_to_be32(token); + os_term_args.nargs = cpu_to_be32(1); + os_term_args.nret = cpu_to_be32(1); + os_term_args.args[0] = cpu_to_be32(__pa(str)); prom_rtas_hcall((uint64_t)&os_term_args); } #endif /* CONFIG_PPC_SVM */
The "os-term" RTAS calls has one argument with a message address of OS termination cause. rtas_os_term() already passes it but the recently added prom_init's version of that missed it; it also does not fill args correctly. This passes the message address and initializes the number of arguments. Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> --- arch/powerpc/kernel/prom_init.c | 3 +++ 1 file changed, 3 insertions(+)