[LU-11742] ERROR: RPATH is not allowed Created: 07/Dec/18  Updated: 17/Jun/20  Resolved: 01/Apr/19

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: None
Fix Version/s: Lustre 2.13.0, Lustre 2.12.3

Type: Bug Priority: Major
Reporter: Chris Horn Assignee: James A Simmons
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Related
is related to LU-10627 tests/utils: lhsmtool_posix now runs ... Resolved
is related to LU-12195 sanity/43 and sanityn/14 fail on loca... Resolved
is related to LU-13688 Handle in-tree executed HSM copytools... Resolved
is related to LU-9897 Tracking of lustre library improvements. Open
Severity: 3
Rank (Obsolete): 9223372036854775807

 Description   

I'm seeing errors out of /usr/lib/rpm/brp-suse.d/brp-35-rpath:

[  228s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/lib64/lustre/tests/sendfile_grouplock is not allowed
[  228s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/lib64/lustre/tests/llapi_hsm_test is not allowed
[  228s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/lib64/lustre/tests/statmany is not allowed
[  228s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/lib64/lustre/tests/rwv is not allowed
[  228s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/lib64/lustre/tests/llapi_layout_test is not allowed
[  228s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/lib64/lustre/tests/statone is not allowed
[  228s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/lib64/lustre/tests/group_lock_test is not allowed
[  228s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/lib64/lustre/tests/lockahead_test is not allowed
[  228s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/lib64/lustre/tests/ll_dirstripe_verify is not allowed
[  228s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/lib64/lustre/tests/multiop is not allowed
[  228s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/lib64/lustre/tests/llapi_fid_test is not allowed
[  229s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/lib64/lustre/tests/mirror_io is not allowed
[  229s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/lib64/lustre/tests/swap_lock_test is not allowed
[  229s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/lib64/lustre/tests/flocks_test is not allowed
[  229s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/lib64/lustre/tests/mmap_sanity is not allowed
[  229s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/bin/lfs is not allowed
[  229s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lnet/utils/lnetconfig/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/bin/lfs is not allowed
[  229s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/sbin/lhsmtool_posix is not allowed
[  229s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/sbin/lctl is not allowed
[  229s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/sbin/lustre_rsync is not allowed
[  229s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_1_g45f97f4/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-cray_ari_s_rhine-2.12.0_RC1_1_g45f97f4-1.0000.45f97f4789.0.0.x86_64/usr/sbin/llsom_sync is not allowed

This build regression appears to have been introduced by:

commit fd472f9427931092bab8d676798bc3f9744a552b
Author: James Simmons <uja.ornl@yahoo.com>
Date:   Fri Jul 27 19:55:49 2018 -0400

    LU-10627 tests: don't use libtool wrapper for applications

    Reviewed-on: https://review.whamcloud.com/32835

If I revert that change then the errors go away. It's possible that this is specific to Cray's OBS build chroot environment.



 Comments   
Comment by Peter Jones [ 07/Dec/18 ]

Chris

Which version of SLES is this for?

Peter

Comment by Chris Horn [ 07/Dec/18 ]

It's an older SLES 12 SP3 kernel - 4.4.103-6.38

Though I'm pretty confident the same issue would be hit on newer kernel. I will try to verify that.

Comment by Chris Horn [ 07/Dec/18 ]

I reproduced this issue on SLES 12 SP3 4.4.162-94.72:

[   41s] checking for Linux objects... /usr/src/linux-4.4.162-94.72-obj/x86_64/default
[   41s] checking for /usr/src/linux-4.4.162-94.72-obj/x86_64/default/.config... yes
[   41s] checking for /usr/src/linux-4.4.162-94.72-obj/x86_64/default/include/generated/autoconf.h... yes
[   41s] checking for /usr/src/linux-4.4.162-94.72-obj/x86_64/default/include/linux/version.h... no
[   41s] checking for /usr/src/linux-4.4.162-94.72-obj/x86_64/default/include/generated/uapi/linux/version.h... yes
<snip>
[  285s] calling /usr/lib/rpm/brp-suse.d/brp-35-rpath
[  285s] ERROR: RPATH "/home/abuild/rpmbuild/BUILD/cray-lustre-2.12.0_RC1_3_g48c430e/lustre/utils/.libs" on /home/abuild/rpmbuild/BUILDROOT/cray-lustre-default-2.12.0_RC1_3_g48c430e-1.0000.48c430eb53.0.0.x86_64/usr/lib64/lustre/tests/sendfile_grouplock is not allowed
Comment by James A Simmons [ 08/Dec/18 ]

Its a SLES specific issue. See https://lists.opensuse.org/opensuse-packaging/2012-03/msg00087.html for an example. The problem is we disabled applications being placed into .lib directories so people can do their testing in the local lustre source tree which was requested by the developers. From my understanding some platforms packaging systems consider applications setup this way as something not to package. Note if we revert that patch developers will no longer be able to properly test from within the source tree as they like to do. 

Comment by James A Simmons [ 08/Dec/18 ]

Also I like to notice that if attempting to mess with the rpath is a big no no on Ubuntu platforms. Their build system will stomp on any attempts to modify the rpath. I did look into using rpaths originally as a solution to the original problem. See the following for detail:

https://wiki.debian.org/RpathIssue

https://autotools.io/libtool/wrappers.html

https://en.opensuse.org/openSUSE:Packaging_checks

Comment by James A Simmons [ 09/Dec/18 ]

I think libtool --mode==execute might be the solution here.

Comment by Gerrit Updater [ 02/Jan/19 ]

James Simmons (uja.ornl@yahoo.com) uploaded a new patch: https://review.whamcloud.com/33947
Subject: LU-11742 test: have libtool execute the test binaries
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: 84749029acfd0aaefade1b781a9f8538aa6c689a

Comment by Chris Horn [ 12/Feb/19 ]

James' patch resolved the error I reported.

Comment by Gerrit Updater [ 01/Apr/19 ]

Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/33947/
Subject: LU-11742 test: have libtool execute the test binaries
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: f9e5224fbb60bb8b44753b7be10cb06108627f89

Comment by Peter Jones [ 01/Apr/19 ]

Landed for 2.13

Comment by Gerrit Updater [ 03/Apr/19 ]

James Simmons (uja.ornl@yahoo.com) uploaded a new patch: https://review.whamcloud.com/34583
Subject: LU-11742 test: have libtool execute the test binaries
Project: fs/lustre-release
Branch: b2_12
Current Patch Set: 1
Commit: 3c619e4c54ed592ba0b8edf8f7317462995045df

Comment by Gerrit Updater [ 28/Jun/19 ]

Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/34583/
Subject: LU-11742 test: have libtool execute the test binaries
Project: fs/lustre-release
Branch: b2_12
Current Patch Set:
Commit: da2ada921cb8ac9506a751f212dd61838f42e947

Generated at Sat Feb 10 02:46:32 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.