automation/eclair_analysis/ECLAIR/deviations.ecl | 4 ++++ docs/misra/deviations.rst | 7 +++++++ 2 files changed, 11 insertions(+)
Update ECLAIR configuration to deviate Rule 8.3 ("All declarations of
an object or function shall use the same names and type qualifiers")
for the following functions:
- set_px_pminfo();
- guest_walk_tables_[0-9]+_levels().
Update file docs/misra/deviations.rst accordingly.
No functional change.
Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
I had a discussion with Jan about the reasons behind the choice of parameter
name 'walk' for the definitions of functions guest_walk_tables_[0-9]+_levels()
and the parameter name 'pfec' for the corresponding declarations.
Also for the function set_px_pminfo(), it seems that the parameter names are
different on purpose.
Can I submit a patch with these deviations? Do you have any comments?
---
automation/eclair_analysis/ECLAIR/deviations.ecl | 4 ++++
docs/misra/deviations.rst | 7 +++++++
2 files changed, 11 insertions(+)
diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index d8170106b4..9485d66928 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -204,6 +204,10 @@ const-qualified."
-config=MC3R1.R8.3,reports+={deliberate,"any_area(any_loc(file(adopted_mpparse_r8_3)))&&any_area(any_loc(file(^xen/arch/x86/include/asm/mpspec\\.h$)))"}
-doc_end
+-doc_begin="For functions set_px_pminfo() and guest_walk_tables_[0-9]+_levels(), parameter names of definitions deliberately differ from the ones used in the corresponding declarations."
+-config=MC3R1.R8.3,declarations={deliberate,"^set_px_pminfo\\(uint32_t, struct xen_processor_performance\\*\\)|guest_walk_tables_[0-9]+_levels\\(const struct vcpu\\*, struct p2m_domain\\*, unsigned long, walk_t\\*, uint32_t, gfn_t, mfn_t, void\\*\\)$"}
+-doc_end
+
-doc_begin="The following variables are compiled in multiple translation units
belonging to different executables and therefore are safe."
-config=MC3R1.R8.6,declarations+={safe, "name(current_stack_pointer||bsearch||sort)"}
diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
index 8511a18925..b5016412f6 100644
--- a/docs/misra/deviations.rst
+++ b/docs/misra/deviations.rst
@@ -121,6 +121,13 @@ Deviations related to MISRA C:2012 Rules:
- xen/common/unxz.c
- xen/common/unzstd.c
+ * - R8.3
+ - In some cases, parameter names used in the function definition
+ deliberately differ from the ones used in the corresponding declaration.
+ - Tagged as `deliberate` for ECLAIR. Such functions are:
+ - set_px_pminfo()
+ - guest_walk_tables_[0-9]+_levels()
+
* - R8.4
- The definitions present in the files 'asm-offsets.c' for any architecture
are used to generate definitions for asm modules, and are not called by
--
2.34.1
On 24.10.2023 15:22, Federico Serafini wrote: > Update ECLAIR configuration to deviate Rule 8.3 ("All declarations of > an object or function shall use the same names and type qualifiers") > for the following functions: > - set_px_pminfo(); > - guest_walk_tables_[0-9]+_levels(). > > Update file docs/misra/deviations.rst accordingly. > No functional change. > > Signed-off-by: Federico Serafini <federico.serafini@bugseng.com> > --- > I had a discussion with Jan about the reasons behind the choice of parameter > name 'walk' for the definitions of functions guest_walk_tables_[0-9]+_levels() > and the parameter name 'pfec' for the corresponding declarations. > Also for the function set_px_pminfo(), it seems that the parameter names are > different on purpose. In this latter case I wonder why you think so. Did I end up making a misleading comment anywhere? It looks to me as if naming the parameter in question "perf" uniformly would be quite okay. Jan
On 24/10/23 16:32, Jan Beulich wrote: > On 24.10.2023 15:22, Federico Serafini wrote: >> Update ECLAIR configuration to deviate Rule 8.3 ("All declarations of >> an object or function shall use the same names and type qualifiers") >> for the following functions: >> - set_px_pminfo(); >> - guest_walk_tables_[0-9]+_levels(). >> >> Update file docs/misra/deviations.rst accordingly. >> No functional change. >> >> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com> >> --- >> I had a discussion with Jan about the reasons behind the choice of parameter >> name 'walk' for the definitions of functions guest_walk_tables_[0-9]+_levels() >> and the parameter name 'pfec' for the corresponding declarations. >> Also for the function set_px_pminfo(), it seems that the parameter names are >> different on purpose. > > In this latter case I wonder why you think so. Did I end up making a > misleading comment anywhere? It looks to me as if naming the parameter > in question "perf" uniformly would be quite okay. > > Jan No, it was just my impression. What about the mismatch on the first parameter "acpi_id" vs "cpu"? -- Federico Serafini, M.Sc. Software Engineer, BUGSENG (http://bugseng.com)
On 24.10.2023 17:22, Federico Serafini wrote: > On 24/10/23 16:32, Jan Beulich wrote: >> On 24.10.2023 15:22, Federico Serafini wrote: >>> Update ECLAIR configuration to deviate Rule 8.3 ("All declarations of >>> an object or function shall use the same names and type qualifiers") >>> for the following functions: >>> - set_px_pminfo(); >>> - guest_walk_tables_[0-9]+_levels(). >>> >>> Update file docs/misra/deviations.rst accordingly. >>> No functional change. >>> >>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com> >>> --- >>> I had a discussion with Jan about the reasons behind the choice of parameter >>> name 'walk' for the definitions of functions guest_walk_tables_[0-9]+_levels() >>> and the parameter name 'pfec' for the corresponding declarations. >>> Also for the function set_px_pminfo(), it seems that the parameter names are >>> different on purpose. >> >> In this latter case I wonder why you think so. Did I end up making a >> misleading comment anywhere? It looks to me as if naming the parameter >> in question "perf" uniformly would be quite okay. > > No, it was just my impression. > What about the mismatch on the first parameter "acpi_id" vs "cpu"? The two can't possibly be used interchangeably, so whichever entity it is that is being passed should determine the uniformly used name. Jan
© 2016 - 2024 Red Hat, Inc.