* Josh Poimboeuf <jpoim...@redhat.com> wrote:

> 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?

No, I use bash too, but note that the script uses SH:

  #!/bin/sh

Thanks,

        Ingo

Reply via email to