Re: svn commit: r329737 - head/stand/i386/boot2

2018-02-22 Thread Bruce Evans

On Wed, 21 Feb 2018, Benno Rice wrote:


On Feb 21, 2018, at 10:46 AM, Colin Percival  wrote:

On 02/21/18 10:10, Benno Rice wrote:

 Curiously, changing whitespace seems to cause the md5 of the .o files to differ
 these days hence the following testing strategy:

 Tested by: objdump -d | md5 (both in-tree clang and lang/gcc6)


objdump -d only dissassembles the text section (and does a bad job of that,
with calls to extern functions printed as

e8 fc ff ff ff   call   

on i386 (here 0xe8 is the opcode for the call instruction, and fc ff ff ff is
-4 which is a placeholder for the eventual offset, and  is
the result of adding -4 to the current program counter.  The symbol table
gives the name of linked address, but the garbage offset is used to form
the garbage address instead of printing this name.

So objdump -d would miss the large change of calling a different extern
function.


Is this simply because line numbers are changing?  That isn't new; I remember
a case where a security advisory touched a .h file and suddenly a huge number
of binaries changed because they included header file line numbers.


No, it happened when I changed the indent of the while statement on line ~132 
in memcpy. I do suspect debug info though.


Isn't there a binary compiled without any debug info?

Bruce
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


Re: svn commit: r329737 - head/stand/i386/boot2

2018-02-21 Thread Colin Percival
On 02/21/18 10:10, Benno Rice wrote:
>   Curiously, changing whitespace seems to cause the md5 of the .o files to 
> differ
>   these days hence the following testing strategy:
>   
>   Tested by:  objdump -d | md5 (both in-tree clang and lang/gcc6)

Is this simply because line numbers are changing?  That isn't new; I remember
a case where a security advisory touched a .h file and suddenly a huge number
of binaries changed because they included header file line numbers.

>  static inline int
>  strcmp(const char *s1, const char *s2)
>  {
> -for (; *s1 == *s2 && *s1; s1++, s2++);
> -return (unsigned char)*s1 - (unsigned char)*s2;
> +
> + for (; *s1 == *s2 && *s1; s1++, s2++);
> + return (unsigned char)*s1 - (unsigned char)*s2;
>  }

-- 
Colin Percival
Security Officer Emeritus, FreeBSD | The power to serve
Founder, Tarsnap | www.tarsnap.com | Online backups for the truly paranoid
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


Re: svn commit: r329737 - head/stand/i386/boot2

2018-02-21 Thread Benno Rice


> On Feb 21, 2018, at 10:51 AM, Ed Maste  wrote:
> 
> On 21 February 2018 at 13:10, Benno Rice  wrote:
>> Author: benno
>> Date: Wed Feb 21 18:10:50 2018
>> New Revision: 329737
>> URL: https://svnweb.freebsd.org/changeset/base/329737
>> 
>> Log:
>>  Purely whitespace changes bringing this file closer to style(9).
>> 
>>  Curiously, changing whitespace seems to cause the md5 of the .o files to 
>> differ
>>  these days hence the following testing strategy:
> 
> sysutils/py-diffoscope can aid in finding the source of the
> differences. If you still have old and new .o files around you can try
> it online at https://try.diffoscope.org/ .

Suspicion confirmed. Lots of changes through the debug info, primarily relating 
to columns.


___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


Re: svn commit: r329737 - head/stand/i386/boot2

2018-02-21 Thread Benno Rice


> On Feb 21, 2018, at 10:46 AM, Colin Percival  wrote:
> 
> On 02/21/18 10:10, Benno Rice wrote:
>>  Curiously, changing whitespace seems to cause the md5 of the .o files to 
>> differ
>>  these days hence the following testing strategy:
>> 
>>  Tested by:  objdump -d | md5 (both in-tree clang and lang/gcc6)
> 
> Is this simply because line numbers are changing?  That isn't new; I remember
> a case where a security advisory touched a .h file and suddenly a huge number
> of binaries changed because they included header file line numbers.

No, it happened when I changed the indent of the while statement on line ~132 
in memcpy. I do suspect debug info though.
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


Re: svn commit: r329737 - head/stand/i386/boot2

2018-02-21 Thread Ed Maste
On 21 February 2018 at 13:10, Benno Rice  wrote:
> Author: benno
> Date: Wed Feb 21 18:10:50 2018
> New Revision: 329737
> URL: https://svnweb.freebsd.org/changeset/base/329737
>
> Log:
>   Purely whitespace changes bringing this file closer to style(9).
>
>   Curiously, changing whitespace seems to cause the md5 of the .o files to 
> differ
>   these days hence the following testing strategy:

sysutils/py-diffoscope can aid in finding the source of the
differences. If you still have old and new .o files around you can try
it online at https://try.diffoscope.org/ .
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"