[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 1/2] xen/arm: asm/atomic.h: Fix MISRA C 2012 Rule 20.7 violation
- To: Xenia Ragiadakou <burzalodowa@xxxxxxxxx>
- From: Jan Beulich <jbeulich@xxxxxxxx>
- Date: Wed, 27 Jul 2022 17:36:40 +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=cN5o6lWAgUERhcBQ3a1gWXNIEjwgU/cBpWcwDYvqMrk=; b=g/oaMEZwqMOM+3lmMK9FAgp4BMeIKtO8FXRh693umwFB+3FR3+au4rfc7FWlgrZgWY0etSITkZIbN0QEux1mf3KQV/GDFWkA37zFMamC5LVuJ6HvSB2TSHZK0AKTHq9ae5wzYIenixmHSiRJinmz2PWK5CrqxfVUDYDyxFgvN/2KQlyeBw+NmrFYMtYnPIluqcYw7PdBa6Q0SOfu/cLEarjDGIOpgkJ9oDLd5selHe0B6Ha6f09DGZQxAuXjVw5DbWaw5fko1MWwdKIbyZ0VWBLa2XW9XSJ+an9WlPdQ248hZLGyEDcN0JDmASYv0nzfXa1lDBPa0lpPUKfBFJEW5w==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=X5ZEl7bB451Txc70q/CLbse2XGEEf4te2SBD3SjbzJtZs7/wcK8Yt9/vpYxLAjrMHKzvDUw5sMSks4+W6mGj+qAEoqwFPTz9Cua+R/T3RdZWt3j1KHz9J/FpNwYW857+jJM8VV0fBAyUxql3QwgB/9K5FaNiB725Rjvz8hkRtz2W/8WvYnOf5RLVMOzsNnFmSrQB+QZwOP0JFwnwCgxYaSZ+QxVVPqk1jyXqzdMFD9EDf+yw3ewSdhjAUAUTu6gW0HTA4oqXRbQbCcjHJ6FgV3ZFnzdbRn3/PiW9entc1e4NeNHBDfjAiLbTC9ShWaJMUA831lcsxI4VXgRT+RX3sQ==
- Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com;
- Cc: Stefano Stabellini <sstabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Bertrand Marquis <bertrand.marquis@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx
- Delivery-date: Wed, 27 Jul 2022 15:36:49 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
On 27.07.2022 17:32, Xenia Ragiadakou wrote:
> The macro parameter 'p' is used as an expression and needs to be enclosed in
> parentheses.
Yes, but ...
> --- a/xen/arch/arm/include/asm/atomic.h
> +++ b/xen/arch/arm/include/asm/atomic.h
> @@ -123,15 +123,15 @@ static always_inline void write_atomic_size(volatile
> void *p,
> }
>
> #define read_atomic(p) ({ \
> - union { typeof(*p) val; char c[0]; } x_; \
> - read_atomic_size(p, x_.c, sizeof(*p)); \
> + union { typeof(*(p)) val; char c[0]; } x_; \
> + read_atomic_size((p), x_.c, sizeof(*(p))); \
... not in the first argument's case - that's not an expression.
Too few parentheses are a risk, but too many are as well, as they
negatively affect readability.
Jan
|