summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Egorenkov <egorenar@linux.ibm.com>2023-01-27 14:52:42 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-02-22 12:46:02 +0100
commit13baa57dceba77fb6e3057366bd0ee49ede4d129 (patch)
treeeea89e780c6a6665c1a8835a004e04d6a864aa67
parent9737f8ffb5ac3c10a6a9edb7c74122f367b60822 (diff)
downloadgoldfish-13baa57dceba77fb6e3057366bd0ee49ede4d129.tar.gz
watchdog: diag288_wdt: fix __diag288() inline assembly
commit 32e40f9506b9e32917eb73154f93037b443124d1 upstream. The DIAG 288 statement consumes an EBCDIC string the address of which is passed in a register. Use a "memory" clobber to tell the compiler that memory is accessed within the inline assembly. Signed-off-by: Alexander Egorenkov <egorenar@linux.ibm.com> Reviewed-by: Heiko Carstens <hca@linux.ibm.com> Cc: <stable@vger.kernel.org> Signed-off-by: Heiko Carstens <hca@linux.ibm.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/watchdog/diag288_wdt.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/watchdog/diag288_wdt.c b/drivers/watchdog/diag288_wdt.c
index eda505a6a143..561797c3b202 100644
--- a/drivers/watchdog/diag288_wdt.c
+++ b/drivers/watchdog/diag288_wdt.c
@@ -88,7 +88,7 @@ static int __diag288(unsigned int func, unsigned int timeout,
"1:\n"
EX_TABLE(0b, 1b)
: "+d" (err) : "d"(__func), "d"(__timeout),
- "d"(__action), "d"(__len) : "1", "cc");
+ "d"(__action), "d"(__len) : "1", "cc", "memory");
return err;
}