[Bug 2009495] [NEW] [Ubuntu 22.04] smc_run does not work, libsmc-preload.so cannot be preloaded

Launchpad Bug Tracker 2009495 at bugs.launchpad.net
Wed Feb 21 15:31:35 UTC 2024


You have been subscribed to a public bug by Asa Mirzaieva (asaly12):

SRU Justification:
==================

[ Impact ]

 * The smc_run tools does not work since libsmc-preload.so is placed
   in the wrong folder (/usr/lib64/ instead of /usr/lib/).

 * smc_run ping <ip>
   ERROR: ld.so: object 'libsmc-preload.so' from LD_PRELOAD cannot be preloaded
   (cannot open shared object file): ignored.
   PING 172.18.39.17 (172.18.39.17) 56(84) bytes of data.

[ Test Plan ]

 * Setup an Ubuntu on s390x system with access to RoCE Express adapters.

 * Setup a network for RoCE (RDMA).

 * Use smc_run to ding a different adapter
   (can also be done from one port to a second port of the same adapter)
   smc_run ping <ip>

[ Where problems could occur ]

 * A change in the Makefile is sufficient.

 * This is based on an upstream commit
   and affects Ubuntu only.

 * Problems could occur in case people adapted the wrong path
   in their code/scripts manually.

[ Fix ]

 * Add lsb-release as Build-Depends to debian/control, since it's not
   installed by default in all build environments, but the lsb_release
   command is used in the Makefile.

 * Patch the Makefile with upstream commit
   '[PATCH] adjust default library path for Ubuntu'
   46f397208fa0001f3f14e63f01c842c79ab3c6d6

[ Other Info ]

 * Affects focal and jammy.
__________

---Problem Description---

[Ubuntu 22.04] smc_run does not work, libsmc-preload.so cannot be preloaded
===========================================================================

The reason for this is that the aforementioned shared object is
installed under: /usr/lib64/libsmc-preload.so

Which is AFAICT not what we want, because AFAIU it violates the Debian
Policy Manual (https://www.debian.org/doc/debian-policy/ch-
opersys.html#s-fhs), and ld.so in Ubuntu has a default search path that
understandably does not cover /usr/lib64.

Interestingly the upstream Make file does try to detect if we are run on
Ubuntu, and choose the install path accordingly.

Hereby it relies on "lsb_release -si" returning "Ubuntu", which may or
may not be a good idea -- I don't know.

In any case if the upstream Makefile does not suit Ubuntu/Debian, then
the packager is ought to patch it.

Thus in my opinion this is a packaging problem.

Contact Information = pasic at de.ibm.com

---uname output---
Linux t3545018.lnxne.boe 5.15.0-60-generic #66-Ubuntu SMP Fri Jan 20 14:30:43 UTC 2023 s390x s390x s390x GNU/Linux

Machine Type = LPAR

---Debugger---
A debugger is not configured

---Steps to Reproduce---
 $ smc_run ping 172.18.39.17
ERROR: ld.so: object 'libsmc-preload.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
PING 172.18.39.17 (172.18.39.17) 56(84) bytes of data.

BTW
$ LD_PRELOAD=libsmc-preload.so LD_DEBUG=libs LD_LIBRARY_PATH=/usr/lib64/ ping 172.18.39.17
does work as expected.

Userspace tool common name: smc_run

The userspace tool has the following bit modes: na

Userspace rpm: smc-tools_1.7.0-0ubuntu1_s390x.deb

Userspace tool obtained from project website:  na

*Additional Instructions for pasic at de.ibm.com:
-Attach ltrace and strace of userspace application.

** Affects: ubuntu-z-systems
     Importance: High
     Assignee: Skipper Bug Screeners (skipper-screen-team)
         Status: In Progress

** Affects: smc-tools (Ubuntu)
     Importance: High
     Assignee: Frank Heimes (fheimes)
         Status: Fix Released

** Affects: smc-tools (Ubuntu Focal)
     Importance: High
     Assignee: Frank Heimes (fheimes)
         Status: New

** Affects: smc-tools (Ubuntu Jammy)
     Importance: High
     Assignee: Asa Mirzaieva (asaly12)
         Status: In Progress

** Affects: smc-tools (Ubuntu Kinetic)
     Importance: High
     Assignee: Frank Heimes (fheimes)
         Status: Won't Fix

** Affects: smc-tools (Ubuntu Lunar)
     Importance: High
     Assignee: Frank Heimes (fheimes)
         Status: Fix Released


** Tags: architecture-s39064 bugnameltc-201924 severity-high targetmilestone-inin---
-- 
[Ubuntu 22.04] smc_run does not work, libsmc-preload.so cannot be preloaded
https://bugs.launchpad.net/bugs/2009495
You received this bug notification because you are a member of Ubuntu Sponsors, which is subscribed to the bug report.



More information about the Ubuntu-sponsors mailing list