[PATCH 1/6] staging: lustre: lustre: resolve "use spaces between elements" checkpatch errors

Joe Perches joe at perches.com
Thu Jun 15 16:19:44 UTC 2017


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



More information about the devel mailing list