lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 18 Apr 2016 15:25:56 +0100
From:	"Maciej W. Rozycki" <macro@...tec.com>
To:	Ralf Baechle <ralf@...ux-mips.org>
CC:	"Maciej W. Rozycki" <macro@...ux-mips.org>,
	kbuild test robot <fengguang.wu@...el.com>,
	Paul Burton <paul.burton@...tec.com>, <kbuild-all@...org>,
	<linux-kernel@...r.kernel.org>
Subject: Re: {standard input}:136: Error: number (0x9000000080000000) larger
 than 32 bits

On Mon, 18 Apr 2016, Ralf Baechle wrote:

> The old case btw, affects ip22 with a random_config:
> 
>   CC      arch/mips/mm/sc-ip22.o
> {standard input}: Assembler messages:
> {standard input}:137: Error: number (0x9000000080000000) larger than 32 bits
> {standard input}:162: Error: number (0x9000000080000000) larger than 32 bits
> scripts/Makefile.build:258: recipe for target 'arch/mips/mm/sc-ip22.o' failed
> make[2]: *** [arch/mips/mm/sc-ip22.o] Error 1
> scripts/Makefile.build:403: recipe for target 'arch/mips/mm' failed
> make[1]: *** [arch/mips/mm] Error 2
> Makefile:947: recipe for target 'arch/mips' failed
> make: *** [arch/mips] Error 2
> 
> and I was able to reproduce it with binutils 2.26 and commit
> c517d838eb7d07bbe9507871fab3931deccff539 ("Linux 4.0-rc1").  The code
> in question looks like:
> 
> static inline void indy_sc_wipe(unsigned long first, unsigned long last)
> {
>         unsigned long tmp;
> 
>         __asm__ __volatile__(
>         ".set\tpush\t\t\t# indy_sc_wipe\n\t"
>         ".set\tnoreorder\n\t"
>         ".set\tmips3\n\t"
>         ".set\tnoat\n\t"
>         "mfc0\t%2, $12\n\t"
>         "li\t$1, 0x80\t\t\t# Go 64 bit\n\t"
>         "mtc0\t$1, $12\n\t"
> 
>         "dli\t$1, 0x9000000080000000\n\t"

 That does not help me, I'm afraid, I can't trigger the issue with this 
piece of code alone.  It may be caused by a particular combination of GAS
command line options and `.set' directives.

 Since you can reproduce it, can you please send me the offending .s file 
(`make arch/mips/mm/sc-ip22.s') and the GAS invocation line used?  GCC 
will print the latter along all kinds of diagnostic stuff if -v is passed 
to an invocation involving assembly (e.g. `make V=1 CFLAGS_sc-ip22.o=-v 
arch/mips/mm/sc-ip22.o').  You can send me the whole diagnostics, I'll 
filter what I need.

 I think it'll be the most efficient way to move forward; otherwise I may 
keep missing the issue.

 Thanks,

  Maciej

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ