Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752680AbbFDLrs (ORCPT ); Thu, 4 Jun 2015 07:47:48 -0400 Received: from out4-smtp.messagingengine.com ([66.111.4.28]:39456 "EHLO out4-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752268AbbFDLrp (ORCPT ); Thu, 4 Jun 2015 07:47:45 -0400 X-Sasl-enc: tO03iNv5QaXWIPAdgh0PwD5qAo87ceFin9z1jZscUocl 1433418464 Date: Thu, 4 Jun 2015 14:47:43 +0300 From: Sergei Zviagintsev To: David Herrmann Cc: Greg Kroah-Hartman , Daniel Mack , David Herrmann , Djalal Harouni , linux-kernel Subject: Re: [PATCH] kdbus: use parentheses in KDBUS_ITEM_FOREACH macro uniformly Message-ID: <20150604114743.GE4549@localhost.localdomain> References: <1433414370-17557-2-git-send-email-sergei@s15v.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3222 Lines: 73 Hi David, On Thu, Jun 04, 2015 at 01:29:22PM +0200, David Herrmann wrote: > Hi > > On Thu, Jun 4, 2015 at 12:39 PM, Sergei Zviagintsev wrote: > > _i is used as loop cursor and must be a proper lvalue, whereas two other > > arguments can be complex expressions. Stay uniform across the macro and > > enclose _is and _s with parentheses in all cases, but keep _i without > > them (any valid lvalue will not break cast to (u8 *) due to precedence > > rules). Update documentation example. > > > > List macroses (e.g. list_for_each) were taken as an example for this > > change. > > I'm not a big fan of this patch. Treating arguments differently just > makes the macros harder to read, imo. Why not keep the parantheses > around all arguments? It doesn't hurt and keeps the style consistent. I agree, the point is just to keep things consistent. I'll send v2. > Besides, lvalues might consist of more complex expressions, so I'm not > sure this is even the right way to go. > > Thanks > David > > > Signed-off-by: Sergei Zviagintsev > > --- > > Documentation/kdbus/kdbus.item.xml | 4 ++-- > > ipc/kdbus/item.h | 6 +++--- > > 2 files changed, 5 insertions(+), 5 deletions(-) > > > > diff --git a/Documentation/kdbus/kdbus.item.xml b/Documentation/kdbus/kdbus.item.xml > > index b0eeeef995af..fb8b6c151a0d 100644 > > --- a/Documentation/kdbus/kdbus.item.xml > > +++ b/Documentation/kdbus/kdbus.item.xml > > @@ -73,8 +73,8 @@ > > > > #define KDBUS_ITEM_FOREACH(item, head, first) \ > > for (item = (head)->first; \ > > - ((uint8_t *)(item) < (uint8_t *)(head) + (head)->size) && \ > > - ((uint8_t *)(item) >= (uint8_t *)(head)); \ > > + ((uint8_t *)item < (uint8_t *)(head) + (head)->size) && \ > > + ((uint8_t *)item >= (uint8_t *)(head)); \ > > item = KDBUS_ITEM_NEXT(item)) > > ]]> > > > > diff --git a/ipc/kdbus/item.h b/ipc/kdbus/item.h > > index 03612368b3bb..592b68a7c2db 100644 > > --- a/ipc/kdbus/item.h > > +++ b/ipc/kdbus/item.h > > @@ -28,9 +28,9 @@ > > #define KDBUS_ITEM_PAYLOAD_SIZE(_i) ((_i)->size - KDBUS_ITEM_HEADER_SIZE) > > > > #define KDBUS_ITEMS_FOREACH(_i, _is, _s) \ > > - for (_i = _is; \ > > - ((u8 *)(_i) < (u8 *)(_is) + (_s)) && \ > > - ((u8 *)(_i) >= (u8 *)(_is)); \ > > + for (_i = (_is); \ > > + ((u8 *)_i < (u8 *)(_is) + (_s)) && \ > > + ((u8 *)_i >= (u8 *)(_is)); \ > > _i = KDBUS_ITEM_NEXT(_i)) > > > > #define KDBUS_ITEM_VALID(_i, _is, _s) \ > > -- > > 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/