[Pkg-openmpi-maintainers] [Fwd: Bug#657625: FTBFS openmpi 1.5 (experimental) on armel]

Jeff Squyres jsquyres at cisco.com
Sat Jan 28 12:09:59 UTC 2012


I defer to ARM on this issue -- Leif?


On Jan 27, 2012, at 9:54 AM, Sylvestre Ledru wrote:

> Hello Jeff,
> 
> Do you have any opinions on the options listed by Robie ?
> 
> Thanks,
> Sylvestre
> 
> 
> -------- Message transféré --------
> De: Robie Basak <robie.basak at canonical.com>
> Reply-to: Robie Basak <robie.basak at canonical.com>,
> 657625 at bugs.debian.org
> À: submit at bugs.debian.org
> Sujet: Bug#657625: FTBFS openmpi 1.5 (experimental) on armel
> Date: Fri, 27 Jan 2012 14:10:22 +0000
> 
> Package: openmpi
> Version: 1.5.4-2~exp1
> 
> openmpi 1.5 fails to build on Debian armel:
> 
> /bin/bash ../../libtool --silent   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../opal/include -I../../orte/include -I../../ompi/include -I../../opal/mca/paffinity/hwloc/hwloc/include/private/autogen -I../../opal/mca/paffinity/hwloc/hwloc/include/hwloc/autogen   -I../..   -I/usr/include/infiniband -I/usr/include/infiniband   -DNDEBUG -g -O2 -finline-functions -fno-strict-aliasing -c -o atomic-asm.lo atomic-asm.S
> atomic-asm.S: Assembler messages:
> atomic-asm.S:7: Error: selected processor does not support ARM mode `dmb'
> atomic-asm.S:15: Error: selected processor does not support ARM mode `dmb'
> atomic-asm.S:23: Error: selected processor does not support ARM mode `dmb'
> atomic-asm.S:32: Error: selected processor does not support ARM mode `ldrex r3,[r0]'
> atomic-asm.S:35: Error: selected processor does not support ARM mode `strex r12,r2,[r0]'
> 
> [etc]
> 
> The rest of this report is my understanding of the issue, in the hope
> that this will help. I may be wrong, especially in my understanding of
> Debian's side.
> 
> I've reproduced the FTBFS in a sid chroot, but I get a successful build
> on Ubuntu precise, both armel and armhf.
> 
> So it seems that this is a toolchain issue - something to do with where
> the Debian and Ubuntu toolchains differ.
> 
> I regret that I don't have as much low level knowledge as I'd like to
> have, but I've been doing some research.
> 
> From what I can find, the dmb/ldrex/strex etc. instructions only exist
> in armv7[1]. And Debian appears to target armv4t. I think an
> -march=armv7-a would fix it, and there also might be an assembly
> directive to do this at source level rather than changing the build. But
> on Debian that would break compability of this package for older
> architectures, so I'm not sure if this would be acceptable for you.
> 
> I've also found that Debian targets armhf at armv7-a[2] so if I'm right
> so far, perhaps an acceptable solution might be to drop armel support
> for openmpi in Debian? As upstream are using armv7 instructions, I think
> this would be reasonable.
> 
> I've been told that upstream have switched from gcc builtins to
> dedicated armv7 code. So another option would be to conditionally use
> gcc builtins again if < armv7.
> 
> So I think Debian's options are:
>  1)  Extend upstream's armv7 support down to armv4t, perhaps by using
>      gcc builtins.
>  1b) Speak to upstream about (1). Perhaps this was unintentional and
>      they would be happy to use gcc builtins across the board?
>  2)  Build this package for armv7-only somehow. I'm not sure if there's
>      a place for this sort of thing to go, or what Debian policy has to
>      say about this, since someone running armel on armv4t won't be able
>      to use openmpi then.
>  3)  Drop armel support. I don't think this is such a bad option, since
>      AIUI openmpi users would generally be running servers on armhf (with
>      armv7 or higher) anyway.
> 
> [1]: http://infocenter.arm.com/help/topic/com.arm.doc.dui0489c/CIHGHHIE.html
> [2]: http://wiki.debian.org/ArmHardFloatPort
> 
> 
> 
> 
> 


-- 
Jeff Squyres
jsquyres at cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/




More information about the Pkg-openmpi-maintainers mailing list