Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932820AbbFJODZ (ORCPT ); Wed, 10 Jun 2015 10:03:25 -0400 Received: from mail-la0-f42.google.com ([209.85.215.42]:35586 "EHLO mail-la0-f42.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754266AbbFJODS (ORCPT ); Wed, 10 Jun 2015 10:03:18 -0400 MIME-Version: 1.0 In-Reply-To: References: Date: Wed, 10 Jun 2015 16:03:16 +0200 Message-ID: Subject: Re: [PATCH v2 03/10] Documentation/kdbus: fix operator precedence issue in KDBUS_ITEM_NEXT macro From: David Herrmann To: Sergei Zviagintsev Cc: Greg Kroah-Hartman , Daniel Mack , David Herrmann , Djalal Harouni , linux-kernel Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1491 Lines: 42 Hi On Tue, Jun 9, 2015 at 11:00 PM, Sergei Zviagintsev wrote: > `item' argument in KDBUS_ITEM_NEXT macro example is not enclosed into > parentheses when the cast operator is applied, which leads to improper > type conversion if `item' is supplied as a complex expression, e.g. > > KDBUS_ITEM_NEXT(condition ? a : b) > > Use parentheses properly to guarantee right precedence. > > Signed-off-by: Sergei Zviagintsev > --- > Documentation/kdbus/kdbus.item.xml | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Reviewed-by: David Herrmann Thanks David > diff --git a/Documentation/kdbus/kdbus.item.xml b/Documentation/kdbus/kdbus.item.xml > index 09f8b903116f..b0eeeef995af 100644 > --- a/Documentation/kdbus/kdbus.item.xml > +++ b/Documentation/kdbus/kdbus.item.xml > @@ -69,7 +69,7 @@ > #define KDBUS_ALIGN8(val) (((val) + 7) & ~7) > > #define KDBUS_ITEM_NEXT(item) \ > - (typeof(item))(((uint8_t *)item) + KDBUS_ALIGN8((item)->size)) > + (typeof(item))((uint8_t *)(item) + KDBUS_ALIGN8((item)->size)) > > #define KDBUS_ITEM_FOREACH(item, head, first) \ > for (item = (head)->first; \ > -- > 1.8.3.1 > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/