On Tue, Nov 07, 2017 at 10:46:21AM +0100, Ingo Molnar wrote: > Hm, this doesn't actually warn - it outputs the diff: > > triton:~/tip/tools/objtool> ./sync-check.sh > triton:~/tip/tools/objtool> 99a100,109 > > /* Identifiers for segment registers */ > > #define INAT_SEG_REG_IGNORE 0 > > #define INAT_SEG_REG_DEFAULT 1 > > #define INAT_SEG_REG_CS 2 > > #define INAT_SEG_REG_SS 3 > > #define INAT_SEG_REG_DS 4 > > #define INAT_SEG_REG_ES 5 > > #define INAT_SEG_REG_FS 6 > > #define INAT_SEG_REG_GS 7 > > > > I fixed it to do: > > diff $file ../../$file > /dev/null || > > (note the removal of '&') > > Then it outputs the right thing: > > triton:~/tip/tools/objtool> ./sync-check.sh > Warning: synced file at 'tools/objtool/arch/x86/include/asm/inat.h' differs > from latest kernel version at 'arch/x86/include/asm/inat.h'
Ah. I guess '&>' is a bash-ism, shorthand for redirecting both stdout and stderr. It worked for me with bash 4.4.12. I guess you used a different default shell? -- Josh