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

Re: [PATCH] misra: comment default case in single-clause switch


  • To: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Dmytro Prokopchuk1 <dmytro_prokopchuk1@xxxxxxxx>
  • Date: Mon, 11 Aug 2025 17:40:50 +0000
  • Accept-language: en-US, uk-UA, ru-RU
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com; dkim=pass header.d=epam.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=YMT11yhLGrg7/X3gQ6X9PvpFzu0i8EZHmhhHbOF/Yds=; b=ul6knWDdPvDCJjbOnf/GYT9SRq+5UZZSW+Ln14ohUvKOHK+5+jykO3k1nzGUiM+tFNWetVacM6GY4y+NVbObukHY8yu5Inq+5Koc+y4TO1rfQ0Smae13qWY1XMe6/O/HAsA2Mygo+DQiKh4ZWz7/5RRANrC4xHhl3RouuRcGhKNjlArkaJOFLugJ4LVVmnFCmWX/B6RUHpAzP1KaERSR4tpNLcwwQueAXPKgQdi0sDwLMCNVU2rJ/yk7URzA9yqIDsVmeG0EKWjZQU+Mszqlbbdp+amn5tWlIVxbPO+xpHBFt+Vg46MoS/P+Eci00Xi71t+uF+2I/ZztBh/8cuCPpQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ZO3r65F8jTyiRwCa4mUW4QUS2IiYlgaG58xj4ZidrxVUi7t/RtZ3xmROTp+DPULeXqUmezachJj71t1fPU0XkUT3EV2iY2XoV1Tz3HrCMsNCiWfZq6TJn5l8JD3ZqEGHhBe6WZmOjhYpj8UGcrnUP9efC8uLnJ/4K/1kR80/e9Ubi14Sc87T92h+x1mim48acTcxuVPO8CzGKu/HBvg8y8GfukMxW76a5U74n5X3/EVsMb8U/ropwAcs6+aWEQw7Eui222KBeq3dJG/Y3QhAuH/0KC0zsY2CUS+u0xLL3BYaUsbJI1sA3E/YmZxJEyYKgch0f+4du8q0YsPOWciFTQ==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=epam.com;
  • Cc: Stefano Stabellini <sstabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Bertrand Marquis <bertrand.marquis@xxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>
  • Delivery-date: Mon, 11 Aug 2025 17:41:01 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Thread-index: AQHcCuaGmRofUvvSEEWe+78HEkEpW7RduFmA
  • Thread-topic: [PATCH] misra: comment default case in single-clause switch


On 8/11/25 20:36, Dmytro Prokopchuk1 wrote:
> MISRA Rule 16.4: Every switch statement shall have a default label. The
> default clause must contain either a statement or a comment prior to its
> terminating break statement.
> 
> This change adds comments in default cases in single-clause switches to
> avoid violations of the rule where the `default` clause lacks a suitable
> comment or statement.
> 
> Signed-off-by: Dmytro Prokopchuk <dmytro_prokopchuk1@xxxxxxxx>
> ---
>   xen/arch/arm/cpuerrata.c | 5 +++++
>   xen/arch/arm/gic.c       | 6 ++++++
>   xen/arch/arm/mmu/p2m.c   | 6 ++++++
>   xen/arch/arm/time.c      | 6 ++++++
>   xen/common/kexec.c       | 6 ++++++
>   5 files changed, 29 insertions(+)
> 
> diff --git a/xen/arch/arm/cpuerrata.c b/xen/arch/arm/cpuerrata.c
> index 17cf134f1b..e31c72694b 100644
> --- a/xen/arch/arm/cpuerrata.c
> +++ b/xen/arch/arm/cpuerrata.c
> @@ -735,6 +735,11 @@ static int cpu_errata_callback(struct notifier_block 
> *nfb,
>           rc = enable_nonboot_cpu_caps(arm_errata);
>           break;
>       default:
> +        /*
> +         * Default case left empty as other notifier actions do not require 
> handling here.
> +         * The single CPU_STARTING action in the switch is sufficient 
> because this function
> +         * specifically handles enabling errata workarounds during CPU 
> startup.
> +         */
>           break;
>       }
>   
> diff --git a/xen/arch/arm/gic.c b/xen/arch/arm/gic.c
> index e80fe0ca24..dfbb0dfe08 100644
> --- a/xen/arch/arm/gic.c
> +++ b/xen/arch/arm/gic.c
> @@ -436,6 +436,12 @@ static int cpu_gic_callback(struct notifier_block *nfb,
>           release_irq(gic_hw_ops->info->maintenance_irq, NULL);
>           break;
>       default:
> +        /*
> +         * Default case left empty as other notifier actions do not require 
> handling here.
> +         * The CPU_DYING action specifically handles releasing resources 
> acquired by
> +         * init_maintenance_interrupt(), when the CPU is being taken 
> offline. Other CPU
> +         * actions do not require GIC-specific handling.
> +         */
>           break;
>       }
>   
> diff --git a/xen/arch/arm/mmu/p2m.c b/xen/arch/arm/mmu/p2m.c
> index 51abf3504f..d1f0ae0226 100644
> --- a/xen/arch/arm/mmu/p2m.c
> +++ b/xen/arch/arm/mmu/p2m.c
> @@ -1828,6 +1828,12 @@ static int cpu_virt_paging_callback(struct 
> notifier_block *nfb,
>           setup_virt_paging_one(NULL);
>           break;
>       default:
> +        /*
> +         * Default case left empty as other notifier actions do not require 
> handling here.
> +         * The CPU_STARTING action is specifically handled because this 
> function sets up
> +         * virtual paging for CPUs, particularly for non-boot CPUs during 
> hotplug. Other
> +         * actions do not involve virtual paging setup.
> +         */
>           break;
>       }
>   
> diff --git a/xen/arch/arm/time.c b/xen/arch/arm/time.c
> index e74d30d258..4776110d97 100644
> --- a/xen/arch/arm/time.c
> +++ b/xen/arch/arm/time.c
> @@ -382,6 +382,12 @@ static int cpu_time_callback(struct notifier_block *nfb,
>           deinit_timer_interrupt();
>           break;
>       default:
> +        /*
> +         * Default case left empty as other notifier actions do not require 
> handling here.
> +         * The CPU_DYING action is specifically handled to revert actions 
> done in
> +         * init_timer_interrupt() and properly disable timer interrupts on 
> the CPU being
> +         * taken offline. Other actions do not involve timer 
> deinitialization.
> +         */
>           break;
>       }
>   
> diff --git a/xen/common/kexec.c b/xen/common/kexec.c
> index 84fe8c3597..0f78087a4a 100644
> --- a/xen/common/kexec.c
> +++ b/xen/common/kexec.c
> @@ -549,6 +549,12 @@ static int cf_check cpu_callback(
>           kexec_init_cpu_notes(cpu);
>           break;
>       default:
> +        /*
> +         * Default case left empty as other notifier actions do not require 
> handling here.
> +         * The CPU_UP_PREPARE action is specifically handled to allocate 
> crash note buffers
> +         * for a newly onlined CPU. Other actions do not pertain to crash 
> note allocation
> +         * or memory preservation for kexec.
> +         */
>           break;
>       }
>       return NOTIFY_DONE;

My apologies, forgot to include previous discussion link:
https://patchew.org/Xen/725ec86ac1aa883c35fb30b8f226c95cbe0934e9.1754322299.git.dmytro._5Fprokopchuk1@xxxxxxxx/

Dmytro

 


Rackspace

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