Re: [PATCH 00/13] UAPI header file split

From: Michael Kerrisk
Date: Thu Jul 26 2012 - 09:18:44 EST


David,

I've not checked whether any of the below are fixed in the adjustments
that you made in the last 20 hours (though it looks like at least some
of them are not), but a little scripting to check the content of the
split files showed that while most of them were okay, in the cases
below, some comment text was being discarded by the scripts.

./include/linux/irqnr.h ./include/uapi/linux/irqnr.h
./arch/frv/include/asm/types.h ./arch/frv/include/uapi/asm/types.h
./arch/cris/include/asm/types.h ./arch/cris/include/uapi/asm/types.h
./arch/arm/include/asm/types.h ./arch/arm/include/uapi/asm/types.h
./arch/sh/include/asm/types.h ./arch/sh/include/uapi/asm/types.h
./arch/ia64/include/asm/kvm_para.h ./arch/ia64/include/uapi/asm/kvm_para.h
./arch/mn10300/include/asm/types.h ./arch/mn10300/include/uapi/asm/types.h
./arch/m68k/include/asm/types.h ./arch/m68k/include/uapi/asm/types.h
./arch/avr32/include/asm/types.h ./arch/avr32/include/uapi/asm/types.h
./arch/m32r/include/asm/types.h ./arch/m32r/include/uapi/asm/types.h

I found these using the script below, which tries to check the
integrity of the transformations you are making with your scripts.
Other than the files above, the results looked good.

Thanks,

Michael

=====
#!/bin/sh

# Set these two variables as appropriate

ORIG=$HOME/linux-pre-uapi # Tree before UAPI split
UDIR=$HOME/uapi/linux-headers # Tree following UAPI split

cd $UDIR
for uapi in $(find . -name '*.h' | grep uapi); do
kapi=$(echo $uapi | sed 's%uapi/%%')
if test -e $kapi; then
r_kapi=$kapi
else
r_kapi=/dev/null
fi

# Create "canonicalized versions" of input and output headers, by
# stripping out all lines starting with #, and sort to remove
# duplicated lines

cat $uapi $r_kapi | grep -v '^#' | sort -u > /tmp/res.$$
cat $ORIG/$kapi | grep -v '^#' | sort -u > /tmp/orig.$$

# Are there lines in one version of the "canonical"
# files, but not the other?

comm -3 /tmp/res.$$ /tmp/orig.$$ > /tmp/cdiff.$$

if test $(cat /tmp/cdiff.$$ | wc -l) -ne 0; then
echo "========" $r_kapi $uapi
cat /tmp/cdiff.$$
fi
done



--
Michael Kerrisk Linux man-pages maintainer;
http://www.kernel.org/doc/man-pages/
Author of "The Linux Programming Interface", http://blog.man7.org/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/