[PATCH roland/off64_t] clean up wordsize-64 off_t functions

Roland McGrath roland@hack.frob.com
Thu Aug 2 21:47:00 GMT 2012


I've updated the roland/off64_t branch and I now think it should cover all
wordsize-64 configurations, but only x86_64 has actually been tested.
So folks please test on:
	alpha, ia64, mips64, tilegx64, powerpc64, s390x, sparc64

We don't have much in the way of test coverage for this stuff.
So I would recommend checking that it doesn't change the code at all
rather than just running the test suite.

What I've been doing on x86_64-linux-gnu is:

* Do a complete build from master for the baseline.
* In your build directory do:
$ tar cf save.tar `find . -name '*.so'`
$ mkdir =save; (cd =save; tar xf save.tar)
* Update your build from the branch:
$ push $srcdir; git checkout roland/off64_t; popd
$ rm io/lockf* libio/{fseeko,ftello,iof?etpos}*
$ make -j<n>
(or clean build if you prefer).
* Compare objdump -rd output on the saved files:
$ so=`find =save -type f | sed s,=save/,,`
$ for x in $so; do diff -u <(objdump -rd =save/$x) <(objdump -rd $x) > =save/$x.diff; done
$ find =save -name \*.diff -ls

Every .diff file for no change will have a size around 260 bytes just for
the diff showing the =save/foo vs foo file names.  If a .diff file is
bigger, then look at it to see if there is something significant.  There
can sometimes be pervasive insignificant changes, where the actual code is
the same but only differs in some immediate values that are the line
numbers in __assert_fail calls and things like that.  This is pretty easy
to tell from eyeballing the diff.

When I get good testing reports from two or three of the seven
architectures above, I'll put the changes in and if any of the
others turn out to be broken you can flame me later.


Thanks,
Roland



More information about the Libc-alpha mailing list