Public bug reported:

Binary package hint: binutils


I think I found a bad bug in hardy. I do not know what it is, but I can pin
it down. It involves Open MPI when used with R via the Rmpi add-on package
for R. And I think it points to the toolchain, hence filed against binutils. 
This may
of course need re-assignment.

What you need installed comes via
  $ sudo apt-get install r-cran-rmpi

At a minimal level, you can try this (here running on my Debian testing box)
where we load the Rmpi add-on into R (thus dyn.loading libopenmpi1) and then
just showing a simple hello world:

  [EMAIL PROTECTED]:~$ echo 'library(Rmpi); cat("Still alive\n")' | R --slave
  Still alive
  [EMAIL PROTECTED]:~$

On hardy with default packages:

  [EMAIL PROTECTED]:~$ echo 'library(Rmpi); cat("Still alive\n")' | R --slave
  [joe:29084] *** Process received signal ***
  [joe:29084] Signal: Segmentation fault (11)
  [joe:29084] Signal code: Address not mapped (1)
  [joe:29084] Failing at address: 0x8c92004
  [joe:29084] [ 0] [0xffffe440]
  [joe:29084] [ 1] /usr/lib/libopen-pal.so.0(free+0xc4) [0xb744cae4]
  [joe:29084] [ 2] /usr/lib/libopen-pal.so.0 [0xb7432d3e]
  [joe:29084] [ 3] /usr/lib/libopen-pal.so.0 [0xb74328ea]
  [joe:29084] [ 4] /usr/lib/libopen-pal.so.0(lt_dlforeachfile+0x3d) [0xb74329dd]
  [joe:29084] [ 5] /usr/lib/libopen-pal.so.0(mca_base_component_find+0x327) 
[0xb743b1d7]
  [joe:29084] [ 6] /usr/lib/libopen-pal.so.0(mca_base_components_open+0x18a) 
[0xb743bbca]
  [joe:29084] [ 7] /usr/lib/libopen-pal.so.0(opal_timer_base_open+0x7b) 
[0xb7451d6b]
  [joe:29084] [ 8] /usr/lib/libopen-pal.so.0(opal_init+0xcb) [0xb743066b]
  [joe:29084] [ 9] /usr/lib/libmpi.so.0(ompi_mpi_init+0x19) [0xb751b2b9]
  [joe:29084] [10] /usr/lib/libmpi.so.0(MPI_Init+0x18f) [0xb753e62f]
  [joe:29084] [11] 
/usr/lib/R/site-library/Rmpi/libs/Rmpi.so(mpi_initialize+0x54) [0xb7574154]
  [joe:29084] [12] /usr/lib/R/lib/libR.so [0xb7ce1c1d]
  [joe:29084] [13] /usr/lib/R/lib/libR.so(Rf_eval+0x714) [0xb7d08d64]
  [joe:29084] [14] /usr/lib/R/lib/libR.so [0xb7d098af]
  [joe:29084] [15] /usr/lib/R/lib/libR.so(Rf_eval+0x542) [0xb7d08b92]
  [joe:29084] [16] /usr/lib/R/lib/libR.so [0xb7d0aacf]
  [joe:29084] [17] /usr/lib/R/lib/libR.so(Rf_eval+0x451) [0xb7d08aa1]
  [joe:29084] [18] /usr/lib/R/lib/libR.so [0xb7d0a0b0]
  [joe:29084] [19] /usr/lib/R/lib/libR.so(Rf_eval+0x451) [0xb7d08aa1]
  [joe:29084] [20] /usr/lib/R/lib/libR.so(Rf_applyClosure+0x2ac) [0xb7d0c0fc]
  [joe:29084] [21] /usr/lib/R/lib/libR.so(Rf_eval+0x349) [0xb7d08999]
  [joe:29084] [22] /usr/lib/R/lib/libR.so [0xb7d0ab52]
  [joe:29084] [23] /usr/lib/R/lib/libR.so(Rf_eval+0x451) [0xb7d08aa1]
  [joe:29084] [24] /usr/lib/R/lib/libR.so [0xb7d0a0b0]
  [joe:29084] [25] /usr/lib/R/lib/libR.so(Rf_eval+0x451) [0xb7d08aa1]
  [joe:29084] [26] /usr/lib/R/lib/libR.so [0xb7d0ab52]
  [joe:29084] [27] /usr/lib/R/lib/libR.so(Rf_eval+0x451) [0xb7d08aa1]
  [joe:29084] [28] /usr/lib/R/lib/libR.so [0xb7d0a0b0]
  [joe:29084] [29] /usr/lib/R/lib/libR.so(Rf_eval+0x451) [0xb7d08aa1]
  [joe:29084] *** End of error message ***
  Segmentation fault
  [EMAIL PROTECTED]:~$ dpkg -l r-base-core libopenmpi1 r-cran-rmpi
  Desired=Unknown/Install/Remove/Purge/Hold
  | Status=Not/Installed/Config-f/Unpacked/Failed-cfg/Half-inst/t-aWait/T-pend
  |/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: 
uppercase=bad)
  ||/ Name                                   Version                            
    Description
  
+++-======================================-======================================-============================================================================================
  ii  libopenmpi1                            1.2.5-1ubuntu1                     
    high performance message passing library -- shared library
  ii  r-base-core                            2.6.2-2                            
    GNU R core of statistical computing language and environment
  ii  r-cran-rmpi                            0.5-5-1                            
    GNU R package interfacing MPI libraries for distributed computing
  [EMAIL PROTECTED]:~$

Now, at work (using Ubuntu) I tend to just fetch from Debian sources via
apt-get source and rebuild locally.  This failed when I recently rebuilt
libopenmpi1 -- but it worked with a package I rebuilt in early April. I had
chased the bug for a day or two, emailed Rmpi upstream -- no luck.

Now I just took the _exact same sources for openmpi_ and rebuilt on a Gutsy
7.10 machine that a colleague hadn't upgraded yet -- and it works.  

The only difference was that I removed the Build-Depends on libibverbs-dev as
we don't have Infiniband yet.  And just to be sure, I also rebuilt with
libibverbs-dev and it also works.  All three packages are pristine -- I am
Debian maintainer for all three.  The __only change vector is Ubuntu 7.10
versus 8.04__.

I suspect that the default Ubuntu builds now strip something they didn't used
to.  Do you have any insight?   For that matter libopenmpi1 has three
different libraries that are interrelated and has to do a 
  #ifdef OPENMPI
          dlopen("libmpi.so.0", RTLD_GLOBAL);
  #endif
However, that used to work like a charm and works on Debian stable, testing, ...

I'd be glad to help debug this by I am of course a compiler newb so be
gentle.

Cheers, Dirk

** Affects: binutils (Ubuntu)
     Importance: Undecided
         Status: New

-- 
Binutils corrupts Open MPI 
https://bugs.launchpad.net/bugs/234837
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to