From: Joe Perches <joe@perches.com>
To: Vasiliy Korchagin <vasiliy.korchagin@gmail.com>
Cc: oleg.drokin@intel.com, andreas.dilger@intel.com,
devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] staging: lustre: obdclass: fix macro coding style issue in uuid.c
Date: Fri, 26 Jun 2015 23:04:49 -0700 [thread overview]
Message-ID: <1435385089.9377.72.camel@perches.com> (raw)
In-Reply-To: <1435383365-25679-1-git-send-email-vasiliy.korchagin@gmail.com>
On Sat, 2015-06-27 at 06:36 +0100, Vasiliy Korchagin wrote:
> This patch fixes the checkpatch.pl error:
>
> ERROR: Macros with complex values should be enclosed in parentheses
> +#define CONSUME(val, ptr) (val) = consume(sizeof(val), (ptr))
>
> by expanding it as this macro is used only once.
[]
> Notes:
> Here is another version with macro expansion. Inline function expansion doesn't
> seem like a good idea to me as it would make things overcomplicated.
It looks like it'd be simpler to use vsprintf extension %pU
---
drivers/staging/lustre/lustre/obdclass/uuid.c | 34 +--------------------------
1 file changed, 1 insertion(+), 33 deletions(-)
diff --git a/drivers/staging/lustre/lustre/obdclass/uuid.c b/drivers/staging/lustre/lustre/obdclass/uuid.c
index ff0a01b..b0b0157 100644
--- a/drivers/staging/lustre/lustre/obdclass/uuid.c
+++ b/drivers/staging/lustre/lustre/obdclass/uuid.c
@@ -43,40 +43,8 @@
#include "../include/obd_support.h"
#include "../include/obd_class.h"
-
-static inline __u32 consume(int nob, __u8 **ptr)
-{
- __u32 value;
-
- LASSERT(nob <= sizeof(value));
-
- for (value = 0; nob > 0; --nob)
- value = (value << 8) | *((*ptr)++);
- return value;
-}
-
-#define CONSUME(val, ptr) (val) = consume(sizeof(val), (ptr))
-
-static void uuid_unpack(class_uuid_t in, __u16 *uu, int nr)
-{
- __u8 *ptr = in;
-
- LASSERT(nr * sizeof(*uu) == sizeof(class_uuid_t));
-
- while (nr-- > 0)
- CONSUME(uu[nr], &ptr);
-}
-
void class_uuid_unparse(class_uuid_t uu, struct obd_uuid *out)
{
- /* uu as an array of __u16's */
- __u16 uuid[sizeof(class_uuid_t) / sizeof(__u16)];
-
- CLASSERT(ARRAY_SIZE(uuid) == 8);
-
- uuid_unpack(uu, uuid, ARRAY_SIZE(uuid));
- sprintf(out->uuid, "%04x%04x-%04x-%04x-%04x-%04x%04x%04x",
- uuid[0], uuid[1], uuid[2], uuid[3],
- uuid[4], uuid[5], uuid[6], uuid[7]);
+ sprintf(out->uuid, "%pU", uu);
}
EXPORT_SYMBOL(class_uuid_unparse);
next prev parent reply other threads:[~2015-06-27 6:05 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-27 4:44 [PATCH] staging: lustre: obdclass: fix macro coding style issue in uuid.c Vasiliy Korchagin
2015-06-27 4:53 ` Joe Perches
2015-06-27 5:36 ` Vasiliy Korchagin
2015-06-27 6:04 ` Joe Perches [this message]
2015-07-07 2:36 ` Greg KH
2015-07-07 5:01 ` Joe Perches
2015-07-15 0:40 ` [PATCH] staging: lustre: obdclass: simplify class_uuid_unparse Vasiliy Korchagin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1435385089.9377.72.camel@perches.com \
--to=joe@perches.com \
--cc=andreas.dilger@intel.com \
--cc=devel@driverdev.osuosl.org \
--cc=linux-kernel@vger.kernel.org \
--cc=oleg.drokin@intel.com \
--cc=vasiliy.korchagin@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox