[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [XEN PATCH 2/2] xen/delay: address MISRA C:2012 Rule 5.3.



On 09/08/2023 15:56, Luca Fancellu wrote:
On 9 Aug 2023, at 08:55, Nicola Vetrini <nicola.vetrini@xxxxxxxxxxx> wrote:

The variable 'msec' declared in the macro shadows the local
variable in 'ehci_dbgp_bios_handoff', but to prevent any
future clashes with other functions the macro is converted to
a static inline function.

No functional change.

Signed-off-by: Nicola Vetrini <nicola.vetrini@xxxxxxxxxxx>
---
xen/include/xen/delay.h | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/xen/include/xen/delay.h b/xen/include/xen/delay.h
index 9d70ef035f..9150226271 100644
--- a/xen/include/xen/delay.h
+++ b/xen/include/xen/delay.h
@@ -4,7 +4,11 @@
/* Copyright (C) 1993 Linus Torvalds */

#include <asm/delay.h>
-#define mdelay(n) (\
- {unsigned long msec=(n); while (msec--) udelay(1000);})
+
+static inline void mdelay(unsigned long msec)
+{
+    while ( msec-- )

Does misra allows to modify the function parameters? (Truly asking because IDK)


I checked: there's an advisory (R17.8) that disallows this, but since advisories (apart from a couple of selected ones) are not taken into consideration for compliance, so it's not a big deal.
Even less so since it's not a pointer type.

--
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.