|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [XEN PATCH 07/11] xen: address MISRA C:2012 Rule 2.1
Rule 2.1 states: "A project shall not contain unreachable code".
The functions
- machine_halt
- maybe_reboot
- machine_restart
are not supposed to return, hence the following break statement
is marked as intentionally unreachable with the ASSERT_UNREACHABLE()
macro to justify the violation of the rule.
Signed-off-by: Nicola Vetrini <nicola.vetrini@xxxxxxxxxxx>
---
xen/common/shutdown.c | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
diff --git a/xen/common/shutdown.c b/xen/common/shutdown.c
index a933ee001e..88f735a30e 100644
--- a/xen/common/shutdown.c
+++ b/xen/common/shutdown.c
@@ -38,39 +38,45 @@ void hwdom_shutdown(u8 reason)
printk("Hardware Dom%u halted: halting machine\n",
hardware_domain->domain_id);
machine_halt();
- break; /* not reached */
+ ASSERT_UNREACHABLE();
+ break;
case SHUTDOWN_crash:
debugger_trap_immediate();
printk("Hardware Dom%u crashed: ", hardware_domain->domain_id);
kexec_crash(CRASHREASON_HWDOM);
maybe_reboot();
- break; /* not reached */
+ ASSERT_UNREACHABLE();
+ break;
case SHUTDOWN_reboot:
printk("Hardware Dom%u shutdown: rebooting machine\n",
hardware_domain->domain_id);
machine_restart(0);
- break; /* not reached */
+ ASSERT_UNREACHABLE();
+ break;
case SHUTDOWN_watchdog:
printk("Hardware Dom%u shutdown: watchdog rebooting machine\n",
hardware_domain->domain_id);
kexec_crash(CRASHREASON_WATCHDOG);
machine_restart(0);
- break; /* not reached */
+ ASSERT_UNREACHABLE();
+ break;
case SHUTDOWN_soft_reset:
printk("Hardware domain %d did unsupported soft reset, rebooting.\n",
hardware_domain->domain_id);
machine_restart(0);
- break; /* not reached */
+ ASSERT_UNREACHABLE();
+ break;
default:
printk("Hardware Dom%u shutdown (unknown reason %u): ",
hardware_domain->domain_id, reason);
maybe_reboot();
- break; /* not reached */
+ ASSERT_UNREACHABLE();
+ break;
}
}
--
2.34.1
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |