* [XEN PATCH 0/3] Move Xen ECLAIR configuration to analyze.yaml
@ 2025-02-14 20:45 Nicola Vetrini
2025-02-14 20:45 ` [XEN PATCH 1/3] xen/arm: platform: address violation of MISRA C Rule 7.2 Nicola Vetrini
` (2 more replies)
0 siblings, 3 replies; 10+ messages in thread
From: Nicola Vetrini @ 2025-02-14 20:45 UTC (permalink / raw)
To: xen-devel
Cc: sstabellini, michal.orzel, xenia.ragiadakou, ayan.kumar.halder,
consulting, Nicola Vetrini, Julien Grall, Bertrand Marquis,
Volodymyr Babchuk, Dario Faggioli, Meng Xu, Juergen Gross,
George Dunlap, Doug Goldstein
The initial configuration for the ECLAIR MISRA C analysis integration into Xen
consisted of two fixed configuration files (one for arm64 and one for x86_64).
This approach shows its downsides as configuration options may change over time.
To address this issues, the configuration can be derived from the architecture's
defconfig and overridden in analyze.yaml via EXTRA_XEN_CONFIG. While doing this,
some inconsistencies that were overlooked in the hand-crafted configuration
files have been resolved following the advice of Stefano Stabellini and
Michal Orzel.
A few regressions on clean guidelines result from such configuration changes,
therefore both patches are prerequisite to the last one to keep avoid pipeline
failures.
Nicola Vetrini (3):
xen/arm: platform: address violation of MISRA C Rule 7.2
xen/sched: address violation of MISRA C Rule 8.2
automation: Update ECLAIR analysis configuration
automation/eclair_analysis/prepare.sh | 8 +-
automation/eclair_analysis/xen_arm_config | 141 --------------------
automation/eclair_analysis/xen_x86_config | 143 ---------------------
automation/gitlab-ci/analyze.yaml | 68 ++++++++++
xen/arch/arm/platforms/brcm-raspberry-pi.c | 6 +-
xen/common/sched/rt.c | 2 +-
6 files changed, 77 insertions(+), 291 deletions(-)
delete mode 100644 automation/eclair_analysis/xen_arm_config
delete mode 100644 automation/eclair_analysis/xen_x86_config
--
2.43.0
^ permalink raw reply [flat|nested] 10+ messages in thread* [XEN PATCH 1/3] xen/arm: platform: address violation of MISRA C Rule 7.2
2025-02-14 20:45 [XEN PATCH 0/3] Move Xen ECLAIR configuration to analyze.yaml Nicola Vetrini
@ 2025-02-14 20:45 ` Nicola Vetrini
2025-02-14 23:04 ` Stefano Stabellini
2025-02-14 20:45 ` [XEN PATCH 2/3] xen/sched: address violation of MISRA C Rule 8.2 Nicola Vetrini
2025-02-14 20:45 ` [XEN PATCH 3/3] automation: Update ECLAIR analysis configuration Nicola Vetrini
2 siblings, 1 reply; 10+ messages in thread
From: Nicola Vetrini @ 2025-02-14 20:45 UTC (permalink / raw)
To: xen-devel
Cc: sstabellini, michal.orzel, xenia.ragiadakou, ayan.kumar.halder,
consulting, Nicola Vetrini, Julien Grall, Bertrand Marquis,
Volodymyr Babchuk
Rule 7.2 states: "A u or U suffix shall be applied to all integer
constants that are represented in an unsigned type".
Some PM_* constants are unsigned quantities, despite some
of them being representable in a signed type, so a 'U' suffix
should be present.
No functional change.
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
This fix is needed in order to keep the rule clean when the
Xen configuration under static analysis is changed later in patch 3
of this series.
Only PM_RSTC_WRCFG_CLR is strictly needed to conform to the rule,
but the other constants have a 'U' added for consistency. PM_RSTC
and PM_WDOG are used as offsets, so in principle they can be negative,
therefore they are left as is.
---
xen/arch/arm/platforms/brcm-raspberry-pi.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/xen/arch/arm/platforms/brcm-raspberry-pi.c b/xen/arch/arm/platforms/brcm-raspberry-pi.c
index 407ec07f63b8..d49460329cc8 100644
--- a/xen/arch/arm/platforms/brcm-raspberry-pi.c
+++ b/xen/arch/arm/platforms/brcm-raspberry-pi.c
@@ -47,11 +47,11 @@ static const struct dt_device_match rpi4_blacklist_dev[] __initconst =
};
-#define PM_PASSWORD 0x5a000000
+#define PM_PASSWORD 0x5a000000U
#define PM_RSTC 0x1c
#define PM_WDOG 0x24
-#define PM_RSTC_WRCFG_FULL_RESET 0x00000020
-#define PM_RSTC_WRCFG_CLR 0xffffffcf
+#define PM_RSTC_WRCFG_FULL_RESET 0x00000020U
+#define PM_RSTC_WRCFG_CLR 0xffffffcfU
static void __iomem *rpi4_map_watchdog(void)
{
--
2.43.0
^ permalink raw reply related [flat|nested] 10+ messages in thread* Re: [XEN PATCH 1/3] xen/arm: platform: address violation of MISRA C Rule 7.2
2025-02-14 20:45 ` [XEN PATCH 1/3] xen/arm: platform: address violation of MISRA C Rule 7.2 Nicola Vetrini
@ 2025-02-14 23:04 ` Stefano Stabellini
0 siblings, 0 replies; 10+ messages in thread
From: Stefano Stabellini @ 2025-02-14 23:04 UTC (permalink / raw)
To: Nicola Vetrini
Cc: xen-devel, sstabellini, michal.orzel, xenia.ragiadakou,
ayan.kumar.halder, consulting, Julien Grall, Bertrand Marquis,
Volodymyr Babchuk
On Fri, 14 Feb 2025, Nicola Vetrini wrote:
> Rule 7.2 states: "A u or U suffix shall be applied to all integer
> constants that are represented in an unsigned type".
>
> Some PM_* constants are unsigned quantities, despite some
> of them being representable in a signed type, so a 'U' suffix
> should be present.
>
> No functional change.
>
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
> ---
> This fix is needed in order to keep the rule clean when the
> Xen configuration under static analysis is changed later in patch 3
> of this series.
>
> Only PM_RSTC_WRCFG_CLR is strictly needed to conform to the rule,
> but the other constants have a 'U' added for consistency. PM_RSTC
> and PM_WDOG are used as offsets, so in principle they can be negative,
> therefore they are left as is.
> ---
> xen/arch/arm/platforms/brcm-raspberry-pi.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/xen/arch/arm/platforms/brcm-raspberry-pi.c b/xen/arch/arm/platforms/brcm-raspberry-pi.c
> index 407ec07f63b8..d49460329cc8 100644
> --- a/xen/arch/arm/platforms/brcm-raspberry-pi.c
> +++ b/xen/arch/arm/platforms/brcm-raspberry-pi.c
> @@ -47,11 +47,11 @@ static const struct dt_device_match rpi4_blacklist_dev[] __initconst =
> };
>
>
> -#define PM_PASSWORD 0x5a000000
> +#define PM_PASSWORD 0x5a000000U
> #define PM_RSTC 0x1c
> #define PM_WDOG 0x24
> -#define PM_RSTC_WRCFG_FULL_RESET 0x00000020
> -#define PM_RSTC_WRCFG_CLR 0xffffffcf
> +#define PM_RSTC_WRCFG_FULL_RESET 0x00000020U
> +#define PM_RSTC_WRCFG_CLR 0xffffffcfU
>
> static void __iomem *rpi4_map_watchdog(void)
> {
> --
> 2.43.0
>
^ permalink raw reply [flat|nested] 10+ messages in thread
* [XEN PATCH 2/3] xen/sched: address violation of MISRA C Rule 8.2
2025-02-14 20:45 [XEN PATCH 0/3] Move Xen ECLAIR configuration to analyze.yaml Nicola Vetrini
2025-02-14 20:45 ` [XEN PATCH 1/3] xen/arm: platform: address violation of MISRA C Rule 7.2 Nicola Vetrini
@ 2025-02-14 20:45 ` Nicola Vetrini
2025-02-14 23:04 ` Stefano Stabellini
2025-02-14 20:45 ` [XEN PATCH 3/3] automation: Update ECLAIR analysis configuration Nicola Vetrini
2 siblings, 1 reply; 10+ messages in thread
From: Nicola Vetrini @ 2025-02-14 20:45 UTC (permalink / raw)
To: xen-devel
Cc: sstabellini, michal.orzel, xenia.ragiadakou, ayan.kumar.halder,
consulting, Nicola Vetrini, Dario Faggioli, Meng Xu,
Juergen Gross, George Dunlap
Rule 8.2 states: "Function types shall be in prototype form with
named parameters".
The parameter name is missing from the function pointer type
that constitutes the first parameter.
No functional change.
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
This small fix is needed in order to keep the rule clean in the
follow-up patch that changes the Xen configuration under static
analysis.
I wasn't really certain about the right name to give to the parameter,
so if there are better options I'd be happy to accept them.
---
xen/common/sched/rt.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/xen/common/sched/rt.c b/xen/common/sched/rt.c
index f368e0fdd5a5..0300d2d2e454 100644
--- a/xen/common/sched/rt.c
+++ b/xen/common/sched/rt.c
@@ -500,7 +500,7 @@ deadline_queue_remove(struct list_head *queue, struct list_head *elem)
}
static inline bool
-deadline_queue_insert(struct rt_unit * (*qelem)(struct list_head *),
+deadline_queue_insert(struct rt_unit * (*qelem)(struct list_head *q_iter),
struct rt_unit *svc, struct list_head *elem,
struct list_head *queue)
{
--
2.43.0
^ permalink raw reply related [flat|nested] 10+ messages in thread* Re: [XEN PATCH 2/3] xen/sched: address violation of MISRA C Rule 8.2
2025-02-14 20:45 ` [XEN PATCH 2/3] xen/sched: address violation of MISRA C Rule 8.2 Nicola Vetrini
@ 2025-02-14 23:04 ` Stefano Stabellini
2025-02-17 7:54 ` Jan Beulich
0 siblings, 1 reply; 10+ messages in thread
From: Stefano Stabellini @ 2025-02-14 23:04 UTC (permalink / raw)
To: Nicola Vetrini
Cc: xen-devel, sstabellini, michal.orzel, xenia.ragiadakou,
ayan.kumar.halder, consulting, Dario Faggioli, Meng Xu,
Juergen Gross, George Dunlap
On Fri, 14 Feb 2025, Nicola Vetrini wrote:
> Rule 8.2 states: "Function types shall be in prototype form with
> named parameters".
>
> The parameter name is missing from the function pointer type
> that constitutes the first parameter.
>
> No functional change.
>
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
> This small fix is needed in order to keep the rule clean in the
> follow-up patch that changes the Xen configuration under static
> analysis.
>
> I wasn't really certain about the right name to give to the parameter,
> so if there are better options I'd be happy to accept them.
> ---
> xen/common/sched/rt.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/xen/common/sched/rt.c b/xen/common/sched/rt.c
> index f368e0fdd5a5..0300d2d2e454 100644
> --- a/xen/common/sched/rt.c
> +++ b/xen/common/sched/rt.c
> @@ -500,7 +500,7 @@ deadline_queue_remove(struct list_head *queue, struct list_head *elem)
> }
>
> static inline bool
> -deadline_queue_insert(struct rt_unit * (*qelem)(struct list_head *),
> +deadline_queue_insert(struct rt_unit * (*qelem)(struct list_head *q_iter),
I think it should be "elem" instead of "q_iter"
Other than that:
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
The small change can be done on commit.
> struct rt_unit *svc, struct list_head *elem,
> struct list_head *queue)
> {
> --
> 2.43.0
>
^ permalink raw reply [flat|nested] 10+ messages in thread* Re: [XEN PATCH 2/3] xen/sched: address violation of MISRA C Rule 8.2
2025-02-14 23:04 ` Stefano Stabellini
@ 2025-02-17 7:54 ` Jan Beulich
2025-02-17 8:31 ` Nicola Vetrini
0 siblings, 1 reply; 10+ messages in thread
From: Jan Beulich @ 2025-02-17 7:54 UTC (permalink / raw)
To: Stefano Stabellini, Nicola Vetrini
Cc: xen-devel, michal.orzel, xenia.ragiadakou, ayan.kumar.halder,
consulting, Dario Faggioli, Meng Xu, Juergen Gross, George Dunlap
On 15.02.2025 00:04, Stefano Stabellini wrote:
> On Fri, 14 Feb 2025, Nicola Vetrini wrote:
>> Rule 8.2 states: "Function types shall be in prototype form with
>> named parameters".
>>
>> The parameter name is missing from the function pointer type
>> that constitutes the first parameter.
>>
>> No functional change.
>>
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>> This small fix is needed in order to keep the rule clean in the
>> follow-up patch that changes the Xen configuration under static
>> analysis.
>>
>> I wasn't really certain about the right name to give to the parameter,
>> so if there are better options I'd be happy to accept them.
>> ---
>> xen/common/sched/rt.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
This is a specific scheduler you touch, which I think wants expressing
somehow (e.g. via an adjusted prefix) in the patch subject.
>> --- a/xen/common/sched/rt.c
>> +++ b/xen/common/sched/rt.c
>> @@ -500,7 +500,7 @@ deadline_queue_remove(struct list_head *queue, struct list_head *elem)
>> }
>>
>> static inline bool
>> -deadline_queue_insert(struct rt_unit * (*qelem)(struct list_head *),
>> +deadline_queue_insert(struct rt_unit * (*qelem)(struct list_head *q_iter),
>
> I think it should be "elem" instead of "q_iter"
Why would it matter what the name is? There's no separate decl to stay in
sync with. (That said, I'd be happy with "elem"; it'll be a matter of the
maintainers to judge.)
Jan
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [XEN PATCH 2/3] xen/sched: address violation of MISRA C Rule 8.2
2025-02-17 7:54 ` Jan Beulich
@ 2025-02-17 8:31 ` Nicola Vetrini
2025-02-17 8:48 ` Jürgen Groß
0 siblings, 1 reply; 10+ messages in thread
From: Nicola Vetrini @ 2025-02-17 8:31 UTC (permalink / raw)
To: Jan Beulich
Cc: Stefano Stabellini, xen-devel, michal.orzel, xenia.ragiadakou,
ayan.kumar.halder, consulting, Dario Faggioli, Meng Xu,
Juergen Gross, George Dunlap
On 2025-02-17 08:54, Jan Beulich wrote:
> On 15.02.2025 00:04, Stefano Stabellini wrote:
>> On Fri, 14 Feb 2025, Nicola Vetrini wrote:
>>> Rule 8.2 states: "Function types shall be in prototype form with
>>> named parameters".
>>>
>>> The parameter name is missing from the function pointer type
>>> that constitutes the first parameter.
>>>
>>> No functional change.
>>>
>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>> ---
>>> This small fix is needed in order to keep the rule clean in the
>>> follow-up patch that changes the Xen configuration under static
>>> analysis.
>>>
>>> I wasn't really certain about the right name to give to the
>>> parameter,
>>> so if there are better options I'd be happy to accept them.
>>> ---
>>> xen/common/sched/rt.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> This is a specific scheduler you touch, which I think wants expressing
> somehow (e.g. via an adjusted prefix) in the patch subject.
>
Ok. I think it should be "xen/rt" then.
>>> --- a/xen/common/sched/rt.c
>>> +++ b/xen/common/sched/rt.c
>>> @@ -500,7 +500,7 @@ deadline_queue_remove(struct list_head *queue,
>>> struct list_head *elem)
>>> }
>>>
>>> static inline bool
>>> -deadline_queue_insert(struct rt_unit * (*qelem)(struct list_head *),
>>> +deadline_queue_insert(struct rt_unit * (*qelem)(struct list_head
>>> *q_iter),
>>
>> I think it should be "elem" instead of "q_iter"
>
> Why would it matter what the name is? There's no separate decl to stay
> in
> sync with. (That said, I'd be happy with "elem"; it'll be a matter of
> the
> maintainers to judge.)
>
> Jan
I'd be ok with that too.
--
Nicola Vetrini, B.Sc.
Software Engineer
BUGSENG (https://bugseng.com)
LinkedIn: https://www.linkedin.com/in/nicola-vetrini-a42471253
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [XEN PATCH 2/3] xen/sched: address violation of MISRA C Rule 8.2
2025-02-17 8:31 ` Nicola Vetrini
@ 2025-02-17 8:48 ` Jürgen Groß
0 siblings, 0 replies; 10+ messages in thread
From: Jürgen Groß @ 2025-02-17 8:48 UTC (permalink / raw)
To: Nicola Vetrini, Jan Beulich
Cc: Stefano Stabellini, xen-devel, michal.orzel, xenia.ragiadakou,
ayan.kumar.halder, consulting, Dario Faggioli, Meng Xu,
George Dunlap
[-- Attachment #1.1.1: Type: text/plain, Size: 2001 bytes --]
On 17.02.25 09:31, Nicola Vetrini wrote:
> On 2025-02-17 08:54, Jan Beulich wrote:
>> On 15.02.2025 00:04, Stefano Stabellini wrote:
>>> On Fri, 14 Feb 2025, Nicola Vetrini wrote:
>>>> Rule 8.2 states: "Function types shall be in prototype form with
>>>> named parameters".
>>>>
>>>> The parameter name is missing from the function pointer type
>>>> that constitutes the first parameter.
>>>>
>>>> No functional change.
>>>>
>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>>> ---
>>>> This small fix is needed in order to keep the rule clean in the
>>>> follow-up patch that changes the Xen configuration under static
>>>> analysis.
>>>>
>>>> I wasn't really certain about the right name to give to the parameter,
>>>> so if there are better options I'd be happy to accept them.
>>>> ---
>>>> xen/common/sched/rt.c | 2 +-
>>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> This is a specific scheduler you touch, which I think wants expressing
>> somehow (e.g. via an adjusted prefix) in the patch subject.
>>
>
> Ok. I think it should be "xen/rt" then.
>
>>>> --- a/xen/common/sched/rt.c
>>>> +++ b/xen/common/sched/rt.c
>>>> @@ -500,7 +500,7 @@ deadline_queue_remove(struct list_head *queue, struct
>>>> list_head *elem)
>>>> }
>>>>
>>>> static inline bool
>>>> -deadline_queue_insert(struct rt_unit * (*qelem)(struct list_head *),
>>>> +deadline_queue_insert(struct rt_unit * (*qelem)(struct list_head *q_iter),
>>>
>>> I think it should be "elem" instead of "q_iter"
>>
>> Why would it matter what the name is? There's no separate decl to stay in
>> sync with. (That said, I'd be happy with "elem"; it'll be a matter of the
>> maintainers to judge.)
>>
>> Jan
>
> I'd be ok with that too.
>
I think naming it "elem" is the better choice, as both functions used for
the qelem() parameter name their parameter "elem" already.
With that change:
Reviewed-by: Juergen Gross <jgross@suse.com>
Juergen
[-- Attachment #1.1.2: OpenPGP public key --]
[-- Type: application/pgp-keys, Size: 3743 bytes --]
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 495 bytes --]
^ permalink raw reply [flat|nested] 10+ messages in thread
* [XEN PATCH 3/3] automation: Update ECLAIR analysis configuration
2025-02-14 20:45 [XEN PATCH 0/3] Move Xen ECLAIR configuration to analyze.yaml Nicola Vetrini
2025-02-14 20:45 ` [XEN PATCH 1/3] xen/arm: platform: address violation of MISRA C Rule 7.2 Nicola Vetrini
2025-02-14 20:45 ` [XEN PATCH 2/3] xen/sched: address violation of MISRA C Rule 8.2 Nicola Vetrini
@ 2025-02-14 20:45 ` Nicola Vetrini
2025-02-14 23:04 ` Stefano Stabellini
2 siblings, 1 reply; 10+ messages in thread
From: Nicola Vetrini @ 2025-02-14 20:45 UTC (permalink / raw)
To: xen-devel
Cc: sstabellini, michal.orzel, xenia.ragiadakou, ayan.kumar.halder,
consulting, Nicola Vetrini, Doug Goldstein
The Xen configurations for the ARM64 and X86_64 ECLAIR analyses
is currently held in fixed files under
'automation/eclair_analysis/xen_{arm,x86}_config'. The values
of the configuration options there are susceptible to going stale
due to configuration option changes.
To enhance maintainability, the configuration under analysis is
derived from the respective architecture's defconfig, with suitable
changes added via EXTRA_XEN_CONFIG.
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
This patch should be applied on top of the other two in the series to
ensure that the CI has no failures related to clean guidelines.
Note that any out of date values taken by configuration options
currently in xen_*_config were determined to be benign with respect to
the analysis results, but this wasn't the right approach in the long
term.
---
automation/eclair_analysis/prepare.sh | 8 +-
automation/eclair_analysis/xen_arm_config | 141 ---------------------
automation/eclair_analysis/xen_x86_config | 143 ----------------------
automation/gitlab-ci/analyze.yaml | 68 ++++++++++
4 files changed, 73 insertions(+), 287 deletions(-)
delete mode 100644 automation/eclair_analysis/xen_arm_config
delete mode 100644 automation/eclair_analysis/xen_x86_config
diff --git a/automation/eclair_analysis/prepare.sh b/automation/eclair_analysis/prepare.sh
index 3a646414a392..4285ff26de54 100755
--- a/automation/eclair_analysis/prepare.sh
+++ b/automation/eclair_analysis/prepare.sh
@@ -25,18 +25,20 @@ fi
export XEN_TARGET_ARCH
if [ "$1" = "X86_64" ]; then
- CONFIG_FILE="${script_dir}/xen_x86_config"
XEN_TARGET_ARCH=x86_64
elif [ "$1" = "ARM64" ]; then
- CONFIG_FILE="${script_dir}/xen_arm_config"
XEN_TARGET_ARCH=arm64
else
fatal "Unknown configuration: $1"
fi
(
+ make -C xen defconfig
+ if [[ -n "${EXTRA_XEN_CONFIG}" ]]; then
+ echo "${EXTRA_XEN_CONFIG}" >> xen/.config
+ fi
+
./configure
- cp "${CONFIG_FILE}" xen/.config
make clean
find . -type f -name "*.safparse" -print -delete
"${script_dir}/build.sh" "$1"
diff --git a/automation/eclair_analysis/xen_arm_config b/automation/eclair_analysis/xen_arm_config
deleted file mode 100644
index ef140ceb7383..000000000000
--- a/automation/eclair_analysis/xen_arm_config
+++ /dev/null
@@ -1,141 +0,0 @@
-CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=90400
-CONFIG_CLANG_VERSION=0
-CONFIG_LD_IS_GNU=y
-CONFIG_CC_HAS_VISIBILITY_ATTRIBUTE=y
-CONFIG_ARM_64=y
-CONFIG_ARM=y
-CONFIG_ARCH_DEFCONFIG="arch/arm/configs/arm64_defconfig"
-
-# UBSAN
-CONFIG_UBSAN=n
-
-#
-# Architecture Features
-#
-CONFIG_ARM64_SVE=n
-CONFIG_64BIT=y
-CONFIG_NR_CPUS=4
-# CONFIG_ACPI is not set
-CONFIG_ARM_EFI=y
-CONFIG_GICV3=y
-CONFIG_HAS_ITS=y
-CONFIG_HVM=y
-# CONFIG_NEW_VGIC is not set
-CONFIG_SBSA_VUART_CONSOLE=y
-CONFIG_ARM_SSBD=y
-CONFIG_HARDEN_BRANCH_PREDICTOR=y
-CONFIG_TEE=n
-CONFIG_OPTEE=n
-CONFIG_FFA=n
-# CONFIG_STATIC_SHM is not set
-# end of Architecture Features
-
-#
-# ARM errata workaround via the alternative framework
-#
-CONFIG_ARM64_ERRATUM_827319=y
-CONFIG_ARM64_ERRATUM_824069=y
-CONFIG_ARM64_ERRATUM_819472=y
-CONFIG_ARM64_ERRATUM_843419=y
-CONFIG_ARM64_ERRATUM_832075=y
-CONFIG_ARM64_ERRATUM_834220=y
-CONFIG_ARM64_ERRATUM_1508412=y
-CONFIG_ARM_ERRATUM_858921=y
-CONFIG_ARM64_WORKAROUND_REPEAT_TLBI=y
-CONFIG_ARM64_ERRATUM_1286807=y
-# end of ARM errata workaround via the alternative framework
-
-CONFIG_ARM64_HARDEN_BRANCH_PREDICTOR=y
-# CONFIG_ALL_PLAT is not set
-# CONFIG_QEMU is not set
-# CONFIG_RCAR3 is not set
-CONFIG_MPSOC=y
-# CONFIG_NO_PLAT is not set
-CONFIG_MPSOC_PLATFORM=y
-
-#
-# Common Features
-#
-CONFIG_GRANT_TABLE=y
-CONFIG_HAS_ALTERNATIVE=y
-CONFIG_HAS_DEVICE_TREE=y
-CONFIG_HAS_FAST_MULTIPLY=y
-CONFIG_HAS_PDX=y
-CONFIG_HAS_PMAP=y
-# CONFIG_MEM_ACCESS is not set
-CONFIG_STATIC_MEMORY=y
-
-#
-# Speculative hardening
-#
-CONFIG_SPECULATIVE_HARDEN_ARRAY=y
-# end of Speculative hardening
-
-# CONFIG_HYPFS is not set
-CONFIG_IOREQ_SERVER=y
-# CONFIG_EFI_SET_VIRTUAL_ADDRESS_MAP is not set
-# CONFIG_XSM is not set
-# CONFIG_ARGO is not set
-
-#
-# Schedulers
-#
-# CONFIG_SCHED_CREDIT is not set
-CONFIG_SCHED_CREDIT2=y
-# CONFIG_SCHED_RTDS is not set
-# CONFIG_SCHED_ARINC653 is not set
-CONFIG_SCHED_NULL=y
-CONFIG_SCHED_CREDIT2_DEFAULT=y
-# CONFIG_SCHED_NULL_DEFAULT is not set
-CONFIG_SCHED_DEFAULT="credit2"
-# end of Schedulers
-
-CONFIG_BOOT_TIME_CPUPOOLS=y
-# CONFIG_LIVEPATCH is not set
-# CONFIG_ENFORCE_UNIQUE_SYMBOLS is not set
-CONFIG_SUPPRESS_DUPLICATE_SYMBOL_WARNINGS=y
-CONFIG_CMDLINE=""
-CONFIG_DOM0_MEM=""
-CONFIG_DTB_FILE=""
-# CONFIG_TRACEBUFFER is not set
-# end of Common Features
-
-#
-# Device Drivers
-#
-# CONFIG_HAS_NS16550 is not set
-CONFIG_HAS_CADENCE_UART=y
-# CONFIG_HAS_IMX_LPUART is not set
-# CONFIG_HAS_MVEBU is not set
-# CONFIG_HAS_MESON is not set
-CONFIG_HAS_PL011=y
-# CONFIG_HAS_SCIF is not set
-CONFIG_SERIAL_TX_BUFSIZE=16384
-CONFIG_HAS_PASSTHROUGH=y
-CONFIG_ARM_SMMU=y
-CONFIG_ARM_SMMU_V3=y
-# CONFIG_IPMMU_VMSA is not set
-CONFIG_IOMMU_FORCE_PT_SHARE=y
-# end of Device Drivers
-
-CONFIG_EXPERT=y
-CONFIG_UNSUPPORTED=y
-
-#
-# Debugging Options
-#
-CONFIG_DEBUG=y
-CONFIG_FRAME_POINTER=y
-CONFIG_COVERAGE=y
-CONFIG_DEBUG_LOCK_PROFILE=y
-CONFIG_DEBUG_LOCKS=y
-CONFIG_PERF_COUNTERS=y
-CONFIG_PERF_ARRAYS=y
-CONFIG_VERBOSE_DEBUG=y
-CONFIG_DEVICE_TREE_DEBUG=y
-CONFIG_SCRUB_DEBUG=y
-CONFIG_DEBUG_TRACE=y
-CONFIG_XMEM_POOL_POISON=y
-CONFIG_DEBUG_INFO=y
-# end of Debugging Options
diff --git a/automation/eclair_analysis/xen_x86_config b/automation/eclair_analysis/xen_x86_config
deleted file mode 100644
index abc44d43e108..000000000000
--- a/automation/eclair_analysis/xen_x86_config
+++ /dev/null
@@ -1,143 +0,0 @@
-CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=90400
-CONFIG_CLANG_VERSION=0
-CONFIG_LD_IS_GNU=y
-CONFIG_CC_HAS_VISIBILITY_ATTRIBUTE=y
-CONFIG_X86_64=y
-CONFIG_X86=y
-CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig"
-CONFIG_CC_HAS_INDIRECT_THUNK=y
-CONFIG_HAS_AS_CET_SS=y
-CONFIG_HAS_CC_CET_IBT=y
-
-CONFIG_REQUIRE_NX=n
-
-#
-# Architecture Features
-#
-CONFIG_64BIT=y
-CONFIG_NR_CPUS=16
-CONFIG_NR_NUMA_NODES=2
-# CONFIG_PV is not set
-CONFIG_HVM=y
-# CONFIG_XEN_SHSTK is not set
-# CONFIG_XEN_IBT is not set
-# CONFIG_SHADOW_PAGING is not set
-# CONFIG_BIGMEM is not set
-# CONFIG_HVM_FEP is not set
-# CONFIG_TBOOT is not set
-CONFIG_XEN_ALIGN_DEFAULT=y
-# CONFIG_XEN_ALIGN_2M is not set
-CONFIG_X2APIC_PHYSICAL=y
-# CONFIG_XEN_GUEST is not set
-# CONFIG_HYPERV_GUEST is not set
-# CONFIG_MEM_PAGING is not set
-# CONFIG_MEM_SHARING is not set
-# end of Architecture Features
-
-#
-# Common Features
-#
-CONFIG_COMPAT=y
-CONFIG_CORE_PARKING=y
-CONFIG_GRANT_TABLE=y
-CONFIG_ALTERNATIVE_CALL=y
-CONFIG_ARCH_MAP_DOMAIN_PAGE=y
-CONFIG_GENERIC_BUG_FRAME=y
-CONFIG_HAS_ALTERNATIVE=y
-CONFIG_HAS_COMPAT=y
-CONFIG_HAS_EX_TABLE=y
-CONFIG_HAS_FAST_MULTIPLY=y
-CONFIG_HAS_IOPORTS=y
-CONFIG_HAS_KEXEC=y
-CONFIG_HAS_PDX=y
-CONFIG_HAS_SCHED_GRANULARITY=y
-CONFIG_HAS_UBSAN=y
-CONFIG_MEM_ACCESS_ALWAYS_ON=y
-CONFIG_MEM_ACCESS=y
-CONFIG_NEEDS_LIBELF=y
-CONFIG_NUMA=y
-
-#
-# Speculative hardening
-#
-CONFIG_INDIRECT_THUNK=y
-CONFIG_SPECULATIVE_HARDEN_ARRAY=y
-CONFIG_SPECULATIVE_HARDEN_BRANCH=y
-# end of Speculative hardening
-
-# CONFIG_HYPFS is not set
-CONFIG_IOREQ_SERVER=y
-# CONFIG_KEXEC is not set
-# CONFIG_EFI_SET_VIRTUAL_ADDRESS_MAP is not set
-# CONFIG_XENOPROF is not set
-# CONFIG_XSM is not set
-# CONFIG_ARGO is not set
-
-#
-# Schedulers
-#
-# CONFIG_SCHED_CREDIT is not set
-CONFIG_SCHED_CREDIT2=y
-# CONFIG_SCHED_RTDS is not set
-# CONFIG_SCHED_ARINC653 is not set
-CONFIG_SCHED_NULL=y
-CONFIG_SCHED_CREDIT2_DEFAULT=y
-# CONFIG_SCHED_NULL_DEFAULT is not set
-CONFIG_SCHED_DEFAULT="credit2"
-# end of Schedulers
-
-# CONFIG_LIVEPATCH is not set
-# CONFIG_ENFORCE_UNIQUE_SYMBOLS is not set
-# CONFIG_SUPPRESS_DUPLICATE_SYMBOL_WARNINGS is not set
-CONFIG_CMDLINE=""
-CONFIG_DOM0_MEM=""
-# CONFIG_TRACEBUFFER is not set
-# end of Common Features
-
-#
-# Device Drivers
-#
-CONFIG_ACPI=y
-CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y
-CONFIG_ACPI_NUMA=y
-CONFIG_HAS_NS16550=y
-CONFIG_HAS_EHCI=y
-CONFIG_SERIAL_TX_BUFSIZE=16384
-# CONFIG_XHCI is not set
-CONFIG_HAS_CPUFREQ=y
-CONFIG_HAS_PASSTHROUGH=y
-CONFIG_AMD_IOMMU=y
-# CONFIG_INTEL_IOMMU is not set
-# CONFIG_IOMMU_QUARANTINE_NONE is not set
-CONFIG_IOMMU_QUARANTINE_BASIC=y
-# CONFIG_IOMMU_QUARANTINE_SCRATCH_PAGE is not set
-CONFIG_HAS_PCI=y
-CONFIG_HAS_PCI_MSI=y
-CONFIG_VIDEO=y
-CONFIG_VGA=y
-CONFIG_HAS_VPCI=y
-# end of Device Drivers
-
-CONFIG_EXPERT=y
-CONFIG_UNSUPPORTED=y
-CONFIG_ARCH_SUPPORTS_INT128=y
-
-#
-# Debugging Options
-#
-CONFIG_DEBUG=y
-# CONFIG_CRASH_DEBUG is not set
-CONFIG_GDBSX=y
-CONFIG_FRAME_POINTER=y
-# CONFIG_COVERAGE is not set
-# CONFIG_DEBUG_LOCK_PROFILE is not set
-CONFIG_DEBUG_LOCKS=y
-# CONFIG_PERF_COUNTERS is not set
-CONFIG_VERBOSE_DEBUG=y
-CONFIG_SCRUB_DEBUG=y
-# CONFIG_UBSAN is not set
-# CONFIG_DEBUG_TRACE is not set
-CONFIG_XMEM_POOL_POISON=y
-CONFIG_DEBUG_INFO=y
-# end of Debugging Options
diff --git a/automation/gitlab-ci/analyze.yaml b/automation/gitlab-ci/analyze.yaml
index 02e0ea692c66..35ff3620cf8e 100644
--- a/automation/gitlab-ci/analyze.yaml
+++ b/automation/gitlab-ci/analyze.yaml
@@ -40,6 +40,36 @@ eclair-x86_64:
LOGFILE: "eclair-x86_64.log"
VARIANT: "X86_64"
RULESET: "monitored"
+ EXTRA_XEN_CONFIG: |
+ CONFIG_AMD=y
+ CONFIG_INTEL=n
+ CONFIG_AMD_SVM=y
+ CONFIG_INTEL_VMX=n
+ CONFIG_NR_CPUS=16
+ CONFIG_NR_NUMA_NODES=2
+ CONFIG_PV=n
+ CONFIG_XEN_IBT=n
+ CONFIG_XEN_SHSTK=n
+ CONFIG_SHADOW_PAGING=n
+ CONFIG_HVM_FEP=n
+ CONFIG_TBOOT=n
+ CONFIG_HYPFS=n
+ CONFIG_KEXEC=n
+ CONFIG_ARGO=y
+ CONFIG_SCHED_CREDIT=n
+ CONFIG_SCHED_RTDS=n
+ CONFIG_SCHED_ARINC653=n
+ CONFIG_LIVEPATCH=n
+ CONFIG_TRACEBUFFER=n
+ CONFIG_INTEL_IOMMU=n
+ CONFIG_EXPERT=y
+ CONFIG_DEBUG=y
+ CONFIG_GDBSX=n
+ CONFIG_FRAME_POINTER=n
+ CONFIG_SELF_TESTS=n
+ CONFIG_DEBUG_LOCKS=n
+ CONFIG_SCRUB_DEBUG=n
+ CONFIG_XMEM_POOL_POISON=n
eclair-ARM64:
extends: .eclair-analysis:triggered
@@ -47,6 +77,44 @@ eclair-ARM64:
LOGFILE: "eclair-ARM64.log"
VARIANT: "ARM64"
RULESET: "monitored"
+ EXTRA_XEN_CONFIG: |
+ CONFIG_NR_CPUS=16
+ CONFIG_GICV2=n
+ CONFIG_GICV3=y
+ CONFIG_VGICV2=n
+ CONFIG_HAS_ITS=y
+ CONFIG_HWDOM_VUART=n
+ CONFIG_STATIC_SHM=y
+ CONFIG_STATIC_EVTCHN=y
+ CONFIG_STATIC_MEMORY=y
+ CONFIG_SCMI_SMC=n
+ CONFIG_PARTIAL_EMULATION=n
+ CONFIG_HYPFS=n
+ CONFIG_IOREQ_SERVER=y
+ CONFIG_XSM=n
+ CONFIG_ARGO=y
+ CONFIG_SCHED_CREDIT=n
+ CONFIG_SCHED_RTDS=n
+ CONFIG_SCHED_ARINC653=n
+ CONFIG_BOOT_TIME_CPUPOOLS=y
+ CONFIG_TRACEBUFFER=n
+ CONFIG_HAS_CADENCE_UART=n
+ CONFIG_HAS_NS16550=n
+ CONFIG_HAS_IMX_LPUART=n
+ CONFIG_HAS_MVEBU=n
+ CONFIG_HAS_MESON=n
+ CONFIG_HAS_OMAP=n
+ CONFIG_HAS_SCIF=n
+ CONFIG_HAS_LINFLEX=n
+ CONFIG_ARM_SMMU=n
+ CONFIG_ARM_SMMU_V3=y
+ CONFIG_EXPERT=y
+ CONFIG_DEBUG=y
+ CONFIG_FRAME_POINTER=n
+ CONFIG_SELF_TESTS=n
+ CONFIG_DEBUG_LOCKS=n
+ CONFIG_SCRUB_DEBUG=n
+ CONFIG_XMEM_POOL_POISON=n
.eclair-analysis:on-schedule:
extends: .eclair-analysis
--
2.43.0
^ permalink raw reply related [flat|nested] 10+ messages in thread* Re: [XEN PATCH 3/3] automation: Update ECLAIR analysis configuration
2025-02-14 20:45 ` [XEN PATCH 3/3] automation: Update ECLAIR analysis configuration Nicola Vetrini
@ 2025-02-14 23:04 ` Stefano Stabellini
0 siblings, 0 replies; 10+ messages in thread
From: Stefano Stabellini @ 2025-02-14 23:04 UTC (permalink / raw)
To: Nicola Vetrini
Cc: xen-devel, sstabellini, michal.orzel, xenia.ragiadakou,
ayan.kumar.halder, consulting, Doug Goldstein
On Fri, 14 Feb 2025, Nicola Vetrini wrote:
> The Xen configurations for the ARM64 and X86_64 ECLAIR analyses
> is currently held in fixed files under
> 'automation/eclair_analysis/xen_{arm,x86}_config'. The values
> of the configuration options there are susceptible to going stale
> due to configuration option changes.
>
> To enhance maintainability, the configuration under analysis is
> derived from the respective architecture's defconfig, with suitable
> changes added via EXTRA_XEN_CONFIG.
>
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
> ---
> This patch should be applied on top of the other two in the series to
> ensure that the CI has no failures related to clean guidelines.
>
> Note that any out of date values taken by configuration options
> currently in xen_*_config were determined to be benign with respect to
> the analysis results, but this wasn't the right approach in the long
> term.
> ---
> automation/eclair_analysis/prepare.sh | 8 +-
> automation/eclair_analysis/xen_arm_config | 141 ---------------------
> automation/eclair_analysis/xen_x86_config | 143 ----------------------
> automation/gitlab-ci/analyze.yaml | 68 ++++++++++
> 4 files changed, 73 insertions(+), 287 deletions(-)
> delete mode 100644 automation/eclair_analysis/xen_arm_config
> delete mode 100644 automation/eclair_analysis/xen_x86_config
>
> diff --git a/automation/eclair_analysis/prepare.sh b/automation/eclair_analysis/prepare.sh
> index 3a646414a392..4285ff26de54 100755
> --- a/automation/eclair_analysis/prepare.sh
> +++ b/automation/eclair_analysis/prepare.sh
> @@ -25,18 +25,20 @@ fi
> export XEN_TARGET_ARCH
>
> if [ "$1" = "X86_64" ]; then
> - CONFIG_FILE="${script_dir}/xen_x86_config"
> XEN_TARGET_ARCH=x86_64
> elif [ "$1" = "ARM64" ]; then
> - CONFIG_FILE="${script_dir}/xen_arm_config"
> XEN_TARGET_ARCH=arm64
> else
> fatal "Unknown configuration: $1"
> fi
>
> (
> + make -C xen defconfig
> + if [[ -n "${EXTRA_XEN_CONFIG}" ]]; then
> + echo "${EXTRA_XEN_CONFIG}" >> xen/.config
> + fi
> +
> ./configure
> - cp "${CONFIG_FILE}" xen/.config
> make clean
> find . -type f -name "*.safparse" -print -delete
> "${script_dir}/build.sh" "$1"
> diff --git a/automation/eclair_analysis/xen_arm_config b/automation/eclair_analysis/xen_arm_config
> deleted file mode 100644
> index ef140ceb7383..000000000000
> --- a/automation/eclair_analysis/xen_arm_config
> +++ /dev/null
> @@ -1,141 +0,0 @@
> -CONFIG_CC_IS_GCC=y
> -CONFIG_GCC_VERSION=90400
> -CONFIG_CLANG_VERSION=0
> -CONFIG_LD_IS_GNU=y
> -CONFIG_CC_HAS_VISIBILITY_ATTRIBUTE=y
> -CONFIG_ARM_64=y
> -CONFIG_ARM=y
> -CONFIG_ARCH_DEFCONFIG="arch/arm/configs/arm64_defconfig"
> -
> -# UBSAN
> -CONFIG_UBSAN=n
> -
> -#
> -# Architecture Features
> -#
> -CONFIG_ARM64_SVE=n
> -CONFIG_64BIT=y
> -CONFIG_NR_CPUS=4
> -# CONFIG_ACPI is not set
> -CONFIG_ARM_EFI=y
> -CONFIG_GICV3=y
> -CONFIG_HAS_ITS=y
> -CONFIG_HVM=y
> -# CONFIG_NEW_VGIC is not set
> -CONFIG_SBSA_VUART_CONSOLE=y
> -CONFIG_ARM_SSBD=y
> -CONFIG_HARDEN_BRANCH_PREDICTOR=y
> -CONFIG_TEE=n
> -CONFIG_OPTEE=n
> -CONFIG_FFA=n
> -# CONFIG_STATIC_SHM is not set
> -# end of Architecture Features
> -
> -#
> -# ARM errata workaround via the alternative framework
> -#
> -CONFIG_ARM64_ERRATUM_827319=y
> -CONFIG_ARM64_ERRATUM_824069=y
> -CONFIG_ARM64_ERRATUM_819472=y
> -CONFIG_ARM64_ERRATUM_843419=y
> -CONFIG_ARM64_ERRATUM_832075=y
> -CONFIG_ARM64_ERRATUM_834220=y
> -CONFIG_ARM64_ERRATUM_1508412=y
> -CONFIG_ARM_ERRATUM_858921=y
> -CONFIG_ARM64_WORKAROUND_REPEAT_TLBI=y
> -CONFIG_ARM64_ERRATUM_1286807=y
> -# end of ARM errata workaround via the alternative framework
> -
> -CONFIG_ARM64_HARDEN_BRANCH_PREDICTOR=y
> -# CONFIG_ALL_PLAT is not set
> -# CONFIG_QEMU is not set
> -# CONFIG_RCAR3 is not set
> -CONFIG_MPSOC=y
> -# CONFIG_NO_PLAT is not set
> -CONFIG_MPSOC_PLATFORM=y
> -
> -#
> -# Common Features
> -#
> -CONFIG_GRANT_TABLE=y
> -CONFIG_HAS_ALTERNATIVE=y
> -CONFIG_HAS_DEVICE_TREE=y
> -CONFIG_HAS_FAST_MULTIPLY=y
> -CONFIG_HAS_PDX=y
> -CONFIG_HAS_PMAP=y
> -# CONFIG_MEM_ACCESS is not set
> -CONFIG_STATIC_MEMORY=y
> -
> -#
> -# Speculative hardening
> -#
> -CONFIG_SPECULATIVE_HARDEN_ARRAY=y
> -# end of Speculative hardening
> -
> -# CONFIG_HYPFS is not set
> -CONFIG_IOREQ_SERVER=y
> -# CONFIG_EFI_SET_VIRTUAL_ADDRESS_MAP is not set
> -# CONFIG_XSM is not set
> -# CONFIG_ARGO is not set
> -
> -#
> -# Schedulers
> -#
> -# CONFIG_SCHED_CREDIT is not set
> -CONFIG_SCHED_CREDIT2=y
> -# CONFIG_SCHED_RTDS is not set
> -# CONFIG_SCHED_ARINC653 is not set
> -CONFIG_SCHED_NULL=y
> -CONFIG_SCHED_CREDIT2_DEFAULT=y
> -# CONFIG_SCHED_NULL_DEFAULT is not set
> -CONFIG_SCHED_DEFAULT="credit2"
> -# end of Schedulers
> -
> -CONFIG_BOOT_TIME_CPUPOOLS=y
> -# CONFIG_LIVEPATCH is not set
> -# CONFIG_ENFORCE_UNIQUE_SYMBOLS is not set
> -CONFIG_SUPPRESS_DUPLICATE_SYMBOL_WARNINGS=y
> -CONFIG_CMDLINE=""
> -CONFIG_DOM0_MEM=""
> -CONFIG_DTB_FILE=""
> -# CONFIG_TRACEBUFFER is not set
> -# end of Common Features
> -
> -#
> -# Device Drivers
> -#
> -# CONFIG_HAS_NS16550 is not set
> -CONFIG_HAS_CADENCE_UART=y
> -# CONFIG_HAS_IMX_LPUART is not set
> -# CONFIG_HAS_MVEBU is not set
> -# CONFIG_HAS_MESON is not set
> -CONFIG_HAS_PL011=y
> -# CONFIG_HAS_SCIF is not set
> -CONFIG_SERIAL_TX_BUFSIZE=16384
> -CONFIG_HAS_PASSTHROUGH=y
> -CONFIG_ARM_SMMU=y
> -CONFIG_ARM_SMMU_V3=y
> -# CONFIG_IPMMU_VMSA is not set
> -CONFIG_IOMMU_FORCE_PT_SHARE=y
> -# end of Device Drivers
> -
> -CONFIG_EXPERT=y
> -CONFIG_UNSUPPORTED=y
> -
> -#
> -# Debugging Options
> -#
> -CONFIG_DEBUG=y
> -CONFIG_FRAME_POINTER=y
> -CONFIG_COVERAGE=y
> -CONFIG_DEBUG_LOCK_PROFILE=y
> -CONFIG_DEBUG_LOCKS=y
> -CONFIG_PERF_COUNTERS=y
> -CONFIG_PERF_ARRAYS=y
> -CONFIG_VERBOSE_DEBUG=y
> -CONFIG_DEVICE_TREE_DEBUG=y
> -CONFIG_SCRUB_DEBUG=y
> -CONFIG_DEBUG_TRACE=y
> -CONFIG_XMEM_POOL_POISON=y
> -CONFIG_DEBUG_INFO=y
> -# end of Debugging Options
> diff --git a/automation/eclair_analysis/xen_x86_config b/automation/eclair_analysis/xen_x86_config
> deleted file mode 100644
> index abc44d43e108..000000000000
> --- a/automation/eclair_analysis/xen_x86_config
> +++ /dev/null
> @@ -1,143 +0,0 @@
> -CONFIG_CC_IS_GCC=y
> -CONFIG_GCC_VERSION=90400
> -CONFIG_CLANG_VERSION=0
> -CONFIG_LD_IS_GNU=y
> -CONFIG_CC_HAS_VISIBILITY_ATTRIBUTE=y
> -CONFIG_X86_64=y
> -CONFIG_X86=y
> -CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig"
> -CONFIG_CC_HAS_INDIRECT_THUNK=y
> -CONFIG_HAS_AS_CET_SS=y
> -CONFIG_HAS_CC_CET_IBT=y
> -
> -CONFIG_REQUIRE_NX=n
> -
> -#
> -# Architecture Features
> -#
> -CONFIG_64BIT=y
> -CONFIG_NR_CPUS=16
> -CONFIG_NR_NUMA_NODES=2
> -# CONFIG_PV is not set
> -CONFIG_HVM=y
> -# CONFIG_XEN_SHSTK is not set
> -# CONFIG_XEN_IBT is not set
> -# CONFIG_SHADOW_PAGING is not set
> -# CONFIG_BIGMEM is not set
> -# CONFIG_HVM_FEP is not set
> -# CONFIG_TBOOT is not set
> -CONFIG_XEN_ALIGN_DEFAULT=y
> -# CONFIG_XEN_ALIGN_2M is not set
> -CONFIG_X2APIC_PHYSICAL=y
> -# CONFIG_XEN_GUEST is not set
> -# CONFIG_HYPERV_GUEST is not set
> -# CONFIG_MEM_PAGING is not set
> -# CONFIG_MEM_SHARING is not set
> -# end of Architecture Features
> -
> -#
> -# Common Features
> -#
> -CONFIG_COMPAT=y
> -CONFIG_CORE_PARKING=y
> -CONFIG_GRANT_TABLE=y
> -CONFIG_ALTERNATIVE_CALL=y
> -CONFIG_ARCH_MAP_DOMAIN_PAGE=y
> -CONFIG_GENERIC_BUG_FRAME=y
> -CONFIG_HAS_ALTERNATIVE=y
> -CONFIG_HAS_COMPAT=y
> -CONFIG_HAS_EX_TABLE=y
> -CONFIG_HAS_FAST_MULTIPLY=y
> -CONFIG_HAS_IOPORTS=y
> -CONFIG_HAS_KEXEC=y
> -CONFIG_HAS_PDX=y
> -CONFIG_HAS_SCHED_GRANULARITY=y
> -CONFIG_HAS_UBSAN=y
> -CONFIG_MEM_ACCESS_ALWAYS_ON=y
> -CONFIG_MEM_ACCESS=y
> -CONFIG_NEEDS_LIBELF=y
> -CONFIG_NUMA=y
> -
> -#
> -# Speculative hardening
> -#
> -CONFIG_INDIRECT_THUNK=y
> -CONFIG_SPECULATIVE_HARDEN_ARRAY=y
> -CONFIG_SPECULATIVE_HARDEN_BRANCH=y
> -# end of Speculative hardening
> -
> -# CONFIG_HYPFS is not set
> -CONFIG_IOREQ_SERVER=y
> -# CONFIG_KEXEC is not set
> -# CONFIG_EFI_SET_VIRTUAL_ADDRESS_MAP is not set
> -# CONFIG_XENOPROF is not set
> -# CONFIG_XSM is not set
> -# CONFIG_ARGO is not set
> -
> -#
> -# Schedulers
> -#
> -# CONFIG_SCHED_CREDIT is not set
> -CONFIG_SCHED_CREDIT2=y
> -# CONFIG_SCHED_RTDS is not set
> -# CONFIG_SCHED_ARINC653 is not set
> -CONFIG_SCHED_NULL=y
> -CONFIG_SCHED_CREDIT2_DEFAULT=y
> -# CONFIG_SCHED_NULL_DEFAULT is not set
> -CONFIG_SCHED_DEFAULT="credit2"
> -# end of Schedulers
> -
> -# CONFIG_LIVEPATCH is not set
> -# CONFIG_ENFORCE_UNIQUE_SYMBOLS is not set
> -# CONFIG_SUPPRESS_DUPLICATE_SYMBOL_WARNINGS is not set
> -CONFIG_CMDLINE=""
> -CONFIG_DOM0_MEM=""
> -# CONFIG_TRACEBUFFER is not set
> -# end of Common Features
> -
> -#
> -# Device Drivers
> -#
> -CONFIG_ACPI=y
> -CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y
> -CONFIG_ACPI_NUMA=y
> -CONFIG_HAS_NS16550=y
> -CONFIG_HAS_EHCI=y
> -CONFIG_SERIAL_TX_BUFSIZE=16384
> -# CONFIG_XHCI is not set
> -CONFIG_HAS_CPUFREQ=y
> -CONFIG_HAS_PASSTHROUGH=y
> -CONFIG_AMD_IOMMU=y
> -# CONFIG_INTEL_IOMMU is not set
> -# CONFIG_IOMMU_QUARANTINE_NONE is not set
> -CONFIG_IOMMU_QUARANTINE_BASIC=y
> -# CONFIG_IOMMU_QUARANTINE_SCRATCH_PAGE is not set
> -CONFIG_HAS_PCI=y
> -CONFIG_HAS_PCI_MSI=y
> -CONFIG_VIDEO=y
> -CONFIG_VGA=y
> -CONFIG_HAS_VPCI=y
> -# end of Device Drivers
> -
> -CONFIG_EXPERT=y
> -CONFIG_UNSUPPORTED=y
> -CONFIG_ARCH_SUPPORTS_INT128=y
> -
> -#
> -# Debugging Options
> -#
> -CONFIG_DEBUG=y
> -# CONFIG_CRASH_DEBUG is not set
> -CONFIG_GDBSX=y
> -CONFIG_FRAME_POINTER=y
> -# CONFIG_COVERAGE is not set
> -# CONFIG_DEBUG_LOCK_PROFILE is not set
> -CONFIG_DEBUG_LOCKS=y
> -# CONFIG_PERF_COUNTERS is not set
> -CONFIG_VERBOSE_DEBUG=y
> -CONFIG_SCRUB_DEBUG=y
> -# CONFIG_UBSAN is not set
> -# CONFIG_DEBUG_TRACE is not set
> -CONFIG_XMEM_POOL_POISON=y
> -CONFIG_DEBUG_INFO=y
> -# end of Debugging Options
> diff --git a/automation/gitlab-ci/analyze.yaml b/automation/gitlab-ci/analyze.yaml
> index 02e0ea692c66..35ff3620cf8e 100644
> --- a/automation/gitlab-ci/analyze.yaml
> +++ b/automation/gitlab-ci/analyze.yaml
> @@ -40,6 +40,36 @@ eclair-x86_64:
> LOGFILE: "eclair-x86_64.log"
> VARIANT: "X86_64"
> RULESET: "monitored"
> + EXTRA_XEN_CONFIG: |
> + CONFIG_AMD=y
> + CONFIG_INTEL=n
> + CONFIG_AMD_SVM=y
> + CONFIG_INTEL_VMX=n
> + CONFIG_NR_CPUS=16
> + CONFIG_NR_NUMA_NODES=2
> + CONFIG_PV=n
> + CONFIG_XEN_IBT=n
> + CONFIG_XEN_SHSTK=n
> + CONFIG_SHADOW_PAGING=n
> + CONFIG_HVM_FEP=n
> + CONFIG_TBOOT=n
> + CONFIG_HYPFS=n
> + CONFIG_KEXEC=n
> + CONFIG_ARGO=y
> + CONFIG_SCHED_CREDIT=n
> + CONFIG_SCHED_RTDS=n
> + CONFIG_SCHED_ARINC653=n
> + CONFIG_LIVEPATCH=n
> + CONFIG_TRACEBUFFER=n
> + CONFIG_INTEL_IOMMU=n
> + CONFIG_EXPERT=y
> + CONFIG_DEBUG=y
> + CONFIG_GDBSX=n
> + CONFIG_FRAME_POINTER=n
> + CONFIG_SELF_TESTS=n
> + CONFIG_DEBUG_LOCKS=n
> + CONFIG_SCRUB_DEBUG=n
> + CONFIG_XMEM_POOL_POISON=n
>
> eclair-ARM64:
> extends: .eclair-analysis:triggered
> @@ -47,6 +77,44 @@ eclair-ARM64:
> LOGFILE: "eclair-ARM64.log"
> VARIANT: "ARM64"
> RULESET: "monitored"
> + EXTRA_XEN_CONFIG: |
> + CONFIG_NR_CPUS=16
> + CONFIG_GICV2=n
> + CONFIG_GICV3=y
> + CONFIG_VGICV2=n
> + CONFIG_HAS_ITS=y
> + CONFIG_HWDOM_VUART=n
> + CONFIG_STATIC_SHM=y
> + CONFIG_STATIC_EVTCHN=y
> + CONFIG_STATIC_MEMORY=y
> + CONFIG_SCMI_SMC=n
> + CONFIG_PARTIAL_EMULATION=n
> + CONFIG_HYPFS=n
> + CONFIG_IOREQ_SERVER=y
> + CONFIG_XSM=n
> + CONFIG_ARGO=y
> + CONFIG_SCHED_CREDIT=n
> + CONFIG_SCHED_RTDS=n
> + CONFIG_SCHED_ARINC653=n
> + CONFIG_BOOT_TIME_CPUPOOLS=y
> + CONFIG_TRACEBUFFER=n
> + CONFIG_HAS_CADENCE_UART=n
> + CONFIG_HAS_NS16550=n
> + CONFIG_HAS_IMX_LPUART=n
> + CONFIG_HAS_MVEBU=n
> + CONFIG_HAS_MESON=n
> + CONFIG_HAS_OMAP=n
> + CONFIG_HAS_SCIF=n
> + CONFIG_HAS_LINFLEX=n
> + CONFIG_ARM_SMMU=n
> + CONFIG_ARM_SMMU_V3=y
> + CONFIG_EXPERT=y
> + CONFIG_DEBUG=y
> + CONFIG_FRAME_POINTER=n
> + CONFIG_SELF_TESTS=n
> + CONFIG_DEBUG_LOCKS=n
> + CONFIG_SCRUB_DEBUG=n
> + CONFIG_XMEM_POOL_POISON=n
>
> .eclair-analysis:on-schedule:
> extends: .eclair-analysis
> --
> 2.43.0
>
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2025-02-17 8:49 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-14 20:45 [XEN PATCH 0/3] Move Xen ECLAIR configuration to analyze.yaml Nicola Vetrini
2025-02-14 20:45 ` [XEN PATCH 1/3] xen/arm: platform: address violation of MISRA C Rule 7.2 Nicola Vetrini
2025-02-14 23:04 ` Stefano Stabellini
2025-02-14 20:45 ` [XEN PATCH 2/3] xen/sched: address violation of MISRA C Rule 8.2 Nicola Vetrini
2025-02-14 23:04 ` Stefano Stabellini
2025-02-17 7:54 ` Jan Beulich
2025-02-17 8:31 ` Nicola Vetrini
2025-02-17 8:48 ` Jürgen Groß
2025-02-14 20:45 ` [XEN PATCH 3/3] automation: Update ECLAIR analysis configuration Nicola Vetrini
2025-02-14 23:04 ` Stefano Stabellini
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.