powerpc/rtas: Allow ibm,platform-dump RTAS call with null buffer address
authorAndrew Donnellan <ajd@linux.ibm.com>
Tue, 14 Jun 2022 13:49:52 +0000 (23:49 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Sat, 18 Jun 2022 00:19:10 +0000 (10:19 +1000)
commit7bc08056a6dabc3a1442216daf527edf61ac24b6
treeefeffbfd128740c763008593008a9c9703ff33dd
parentec6d0dde71d760aa60316f8d1c9a1b0d99213529
powerpc/rtas: Allow ibm,platform-dump RTAS call with null buffer address

Add a special case to block_rtas_call() to allow the ibm,platform-dump RTAS
call through the RTAS filter if the buffer address is 0.

According to PAPR, ibm,platform-dump is called with a null buffer address
to notify the platform firmware that processing of a particular dump is
finished.

Without this, on a pseries machine with CONFIG_PPC_RTAS_FILTER enabled, an
application such as rtas_errd that is attempting to retrieve a dump will
encounter an error at the end of the retrieval process.

Fixes: bd59380c5ba4 ("powerpc/rtas: Restrict RTAS requests from userspace")
Cc: stable@vger.kernel.org
Reported-by: Sathvika Vasireddy <sathvika@linux.ibm.com>
Signed-off-by: Andrew Donnellan <ajd@linux.ibm.com>
Reviewed-by: Tyrel Datwyler <tyreld@linux.ibm.com>
Reviewed-by: Nathan Lynch <nathanl@linux.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20220614134952.156010-1-ajd@linux.ibm.com
arch/powerpc/kernel/rtas.c