Re: [hwloc-devel] Lhwloc1 duplicate symbol issue

2015-03-27 Thread Jeff Squyres (jsquyres)
On Mar 25, 2015, at 4:14 PM, Brice Goglin  wrote:
> 
> Looks like I missed something in the OMPI discussion:
> When you say symbol, do you mean asm label?
> include/private/cpuid-x86.h: Assembler messages:
> include/private/cpuid-x86.h:40: Error: symbol `Lhwloc1' is already defined
> Like in the mail included at the end of
> http://www.open-mpi.org/community/lists/hwloc-users/2014/11/1119.php

(sorry it took me a few days to get back to this)

Yes, exactly like this.

> This is fixed by
> https://github.com/open-mpi/hwloc/commit/790aa2e1e62be6b4f37622959de9ce3766ebc57e
> (applied to all stable branches 4 month ago)

Got it.  Looks like we didn't grab it in OMPI because there was never an hwloc 
1.9.2.

> This is actually one of the reason why OMPI upgraded to hwloc v1.9. But
> I thought they were going to upgrade to hwloc v1.9 git HEAD, while they
> only went to v1.9.1, which does not contain this fix.

Makes sense.

> There's a stable release/branch issue here. hwloc updates stable
> *branches* up to what OMPI uses (hwloc v1.8), but usually we only
> publish stable *releases* on the last stable branch (v1.10). We need to
> clarify if OMPI wants official hwloc releases only, or if applying
> (possibly many) hwloc patches is OK.

Here's what I just did -- I grabbed all (relevant) hwloc 1.9 commits (including 
the dup symbol fix):

https://github.com/open-mpi/ompi/pull/498

We usually only grab actual releases, but the OMPI v1.8 series is coming to a 
close, so I think that this is ok.

This PR is actually for OMPI master; once it shakes out ok on master, we'll PR 
it over to OMPI v1.8.  Once that has all completed, we'll likely want to 
upgrade OMPI master to hwloc v1.10.1 (which includes this Lhwloc1 fix).

Howzat?

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



Re: [hwloc-devel] Lhwloc1 duplicate symbol issue

2015-03-25 Thread Brice Goglin
Le 25/03/2015 21:00, Jeff Squyres (jsquyres) a écrit :
> This has come up in multiple scenarios recently: when compiling OMPI (which 
> contains hwloc 1.9.1), you get a linker error complaining about a duplicate 
> symbol "Lhwloc1".
>
> Peter (CC'ed) was looking into this, but it came up again today with Nathan 
> (also CC'ed).  He did some experiments with hwloc itself (outside of OMPI) 
> before Peter was able to, and determined the following:
>
> - gcc 5.0 on OS X Yosemitie, compiling with -m32
> - hwloc-1.9.1 tag in git: compile fails with Lhwloc1 dup symbol
> - hwloc-1.10 tag in git: works fine
> - master tag in git: works fine
>
> My question is: have you see this Lhwloc1 dup symbol issue before?
>
> I ask because on OMPI master, we can just upgrade to hwloc 1.10.  But in OMPI 
> v1.8.x, it's less attractive to upgrade -- it would be cool if there was a 
> simple fix that we could backport/patch the hwloc 1.9.1 in OMPI 1.8.x with 
> the fix.
>

Looks like I missed something in the OMPI discussion:
When you say symbol, do you mean asm label?
include/private/cpuid-x86.h: Assembler messages:
include/private/cpuid-x86.h:40: Error: symbol `Lhwloc1' is already defined
Like in the mail included at the end of
http://www.open-mpi.org/community/lists/hwloc-users/2014/11/1119.php

This is fixed by
https://github.com/open-mpi/hwloc/commit/790aa2e1e62be6b4f37622959de9ce3766ebc57e
(applied to all stable branches 4 month ago)

This is actually one of the reason why OMPI upgraded to hwloc v1.9. But
I thought they were going to upgrade to hwloc v1.9 git HEAD, while they
only went to v1.9.1, which does not contain this fix.

There's a stable release/branch issue here. hwloc updates stable
*branches* up to what OMPI uses (hwloc v1.8), but usually we only
publish stable *releases* on the last stable branch (v1.10). We need to
clarify if OMPI wants official hwloc releases only, or if applying
(possibly many) hwloc patches is OK.

Brice