Messages in this thread | | | Subject | Re: [PATCH 1/6] staging: lustre: lustre: resolve "use spaces between elements" checkpatch errors | From | Joe Perches <> | Date | Thu, 15 Jun 2017 09:19:44 -0700 |
| |
On Thu, 2017-06-15 at 17:03 +0100, James Simmons wrote: > > On Wed, 2017-06-14 at 11:01 -0400, James Simmons wrote: > > > Due to the way the DFID was embedded in our debug strings checkpatch > > > would report the following error: > > > > unrelated trivia > > > > > diff --git a/drivers/staging/lustre/lustre/include/lustre/lustre_user.h b/drivers/staging/lustre/lustre/include/lustre/lustre_user.h > > > > [] > > > @@ -532,7 +532,7 @@ static inline void obd_uuid2fsname(char *buf, char *uuid, int buflen) > > > #define FID_NOBRACE_LEN 40 > > > #define FID_LEN (FID_NOBRACE_LEN + 2) > > > #define DFID_NOBRACE "%#llx:0x%x:0x%x" > > > > It's odd to use a mixture of %#x and 0x%x. > > > > Using > > #define DFID_NOBRACE "%#llx:%#x:%#x" > > would also save a couple bytes per use. > > Changing that format would break things very badly. This is used in user > land utilities and the kernel code.
Really? Why would anything break?
$ cat fmt.c #include <stdio.h> #include <stdlib.h>
int main(int argc, char **argv) { printf("%#llx:0x%x:0x%x\n", (unsigned long long)1, 2, 3); printf("%#llx:%#x:%#x\n", (unsigned long long)1, 2, 3); return 0; }
$ gcc fmt.c $ ./a.out 0x1:0x2:0x3 0x1:0x2:0x3
| |