Message ID | 20201219143648.56217-2-wsa+renesas@sang-engineering.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | arm64: small updates to rebooting | expand |
On Sat, Dec 19, 2020 at 03:36:46PM +0100, Wolfram Sang wrote: > I work on a system where I currently need to reboot via watchdog. > Because the watchdog needs a bit of time to fire, add a grace period > like on arm32 to avoid the false positive warning message. Please can you elaborate a bit on the control flow here, specifically from the part which arms the watchdog to how we end up in at the mdelay()? Ideally, the mdelay() would live in some code that knows about the watchdog, and therefore can choose the appropriate delay. Thanks, Will
Hi Will, > Ideally, the mdelay() would live in some code that knows about the watchdog, > and therefore can choose the appropriate delay. Agreed. I'll put the delay into the watchdog driver. Thanks, Wolfram
diff --git a/arch/arm64/kernel/process.c b/arch/arm64/kernel/process.c index 6616486a58fe..3c770329364f 100644 --- a/arch/arm64/kernel/process.c +++ b/arch/arm64/kernel/process.c @@ -204,6 +204,9 @@ void machine_restart(char *cmd) else do_kernel_restart(cmd); + /* Give a grace period for failure to restart of 1s */ + mdelay(1000); + /* * Whoops - the architecture was unable to reboot. */
I work on a system where I currently need to reboot via watchdog. Because the watchdog needs a bit of time to fire, add a grace period like on arm32 to avoid the false positive warning message. Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> --- arch/arm64/kernel/process.c | 3 +++ 1 file changed, 3 insertions(+)