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

Re: [XEN PATCH 02/11] x86: move declarations to address MISRA C:2012 Rule 2.1


  • To: Nicola Vetrini <nicola.vetrini@xxxxxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>
  • From: Jan Beulich <jbeulich@xxxxxxxx>
  • Date: Fri, 4 Aug 2023 09:06:36 +0200
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=JfNCjNqvwJcHjKXYrq8LaYLXSHZkrzWwQQDZYgtVdUE=; b=FhQSab2Ag4Nu8JwWPbrg2jyxvTQb1FGjfM0FN6u+rXIy/XrOR//WFV/ZaVntuDmowPA3I+oakUc46//HbhgonLq3WTILWOtdeyA3uP482+7bxMi3E3A86Q0k4EwNoLWUuaGp6rpC5JAX3WepVQzCWXIiqRA00YXk4uwrNlO400I3eMyEoCaq8WnZ/miNiGWrzdBXGm6JHm23xiUBAEl/HLIuNvbtl8w2pVQ6zq5KkZ+bWD7oBiHU60hkhYDszs6ctGA9LqjwDqxVvrqMcmBB+P3PvKkI8rj3aMjx6/CgPx1OXlVUdljbOT7bmcYbcCar3oRCv7TaLZBX6zJbPKxmpw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=V7jkVNfy+4US+nK4LWnvkjiyUsYsIJHdh9caaygz2IGhuWrGUR6vN5yKQN+LcWOeXaGlBox9ce9NnTZak7NpvOr1mI61pCShUUmzNlT1Z+fN83+ftUdZiH/LGd03R4ngWx7v8ssh1clXT4061Lbade7cOaQG/SFItBMHmwM1vUesdEYauGtm00/jHLApFrZ19hugCS3spWnapUNxuOjyh/2Fg2P0vIJA9nfkNunLDOqI0FAXa63qqBp2o324fSxjl27WtdkaFpdyCJH1l/WCMfCLzoizULuHLwqVxrA93e+TD9WIBAMPrOUTJLmMaMC9+Iz1k3zlXplrZzFOXKwNrw==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com;
  • Cc: xen-devel@xxxxxxxxxxxxxxxxxxxx, michal.orzel@xxxxxxx, xenia.ragiadakou@xxxxxxx, ayan.kumar.halder@xxxxxxx, consulting@xxxxxxxxxxx, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>
  • Delivery-date: Fri, 04 Aug 2023 07:07:10 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 03.08.2023 16:22, Nicola Vetrini wrote:
> On 03/08/2023 11:01, Jan Beulich wrote:
>> On 03.08.2023 04:13, Stefano Stabellini wrote:
>>> On Wed, 2 Aug 2023, Nicola Vetrini wrote:
>>>> @@ -1169,8 +1170,6 @@ static void cf_check 
>>>> irq_guest_eoi_timer_fn(void *data)
>>>>
>>>>      switch ( action->ack_type )
>>>>      {
>>>> -        cpumask_t *cpu_eoi_map;
>>>
>>> It is only used by case ACKTYPE_EOI so it can be moved there (with a 
>>> new
>>> block):
>>>
>>>
>>>     case ACKTYPE_EOI:
>>>     {
>>>         cpumask_t *cpu_eoi_map = this_cpu(scratch_cpumask);
>>>         cpumask_copy(cpu_eoi_map, action->cpu_eoi_map);
>>>         spin_unlock_irq(&desc->lock);
>>>         on_selected_cpus(cpu_eoi_map, set_eoi_ready, desc, 0);
>>>         return;
>>>     }
>>>     }
>>
>> This pattern (two closing braces at the same level) is why switch scope
>> variable declarations were introduced (at least as far as introductions
>> by me go). If switch scope variables aren't okay (which I continue to
>> consider questionable), then this stylistic aspect needs sorting first
>> (if everyone else thinks the above style is okay - with the missing
>> blank line inserted -, then so be it).
> 
> Actually, they can be deviated because they don't result in wrong code 
> being generated.

Only later I recalled Andrew's intention to possibly make use of
-ftrivial-auto-var-init. While, unlike I think he said, such declared
variables aren't getting in the way of this (neither gcc nor clang
warn about them), they also don't benefit from it (i.e. they'll be
left uninitialized despite the command line option saying otherwise).
IOW I think further consideration is going to be needed here.

Jan



 


Rackspace

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