Bug 1159558 - libhugetlbfs has unreproducible dummy.ldscript
Summary: libhugetlbfs has unreproducible dummy.ldscript
Status: RESOLVED FIXED
Alias: None
Product: openSUSE Tumbleweed
Classification: openSUSE
Component: Development (show other bugs)
Version: Current
Hardware: Other All
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: Thomas Renninger
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-12-19 14:22 UTC by Bernhard Wiedemann
Modified: 2023-03-05 17:53 UTC (History)
4 users (show)

See Also:
Found By: Development
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Bernhard Wiedemann 2019-12-19 14:22:12 UTC
While working on reproducible builds for openSUSE, I found that
our libhugetlbfs varies across builds in the dummy.ldscript file.
Is that even needed in there? Is there a bug?

/usr/lib64/libhugetlbfs/tests/obj64/dummy.ldscript differs (assembler source, AS
CII text)
--- old//usr/lib64/libhugetlbfs/tests/obj64/dummy.ldscript      2018-10-01 12:00
:00.000000000 +0000
+++ new//usr/lib64/libhugetlbfs/tests/obj64/dummy.ldscript      2018-10-01 12:00
:00.000000000 +0000
@@ -409,8 +409,8 @@
 /usr/lib64/gcc/x86_64-suse-linux/9/crtendS.o
 attempt to open /usr/lib64/gcc/x86_64-suse-linux/9/../../../../lib64/crtn.o suc
ceeded
 /usr/lib64/gcc/x86_64-suse-linux/9/../../../../lib64/crtn.o
-attempt to open /tmp/null.icoxHb.ltrans0.ltrans.o succeeded
-/tmp/null.icoxHb.ltrans0.ltrans.o
+attempt to open /tmp/null.IdZ3Xp.ltrans0.ltrans.o succeeded
+/tmp/null.IdZ3Xp.ltrans0.ltrans.o
 /usr/lib64/gcc/x86_64-suse-linux/9/libgcc.a
 /lib/../lib64/libgcc_s.so.1
 /usr/lib64/gcc/x86_64-suse-linux/9/libgcc.a
Comment 1 Bernhard Wiedemann 2020-07-12 10:36:35 UTC
still a problem today.
Comment 2 Thomas Renninger 2020-10-26 12:40:01 UTC
While I am maintainer of libhugetlbfs..., I am not familiar with ldscripts.
Hopefully Michael, Richard or Andreas can help or or point to someone who can.
Comment 3 Richard Biener 2020-10-26 12:59:10 UTC
I suggest to simply not install this script?  The contents are broken anyways,
it seems to be the output of a debug session?  Why is tests/ installed at all?

The script seems to be there to check for a particular supported test, quoting the python harness:

def check_linkhuge_tests():
    """
    Check if the linkhuge tests are safe to run on this system.

    Newer versions of binutils (>= 2.18) are known to be incompatible with the
    linkhuge tests and running them may cause unreliable behavior.  Determine
    which word sizes can be tested with linkhuge.  The others will be skipped.
    NOTE: The linhuge_rw tests are always safe to run and will not be skipped.
    """
    okbits = set()

    for bits in wordsizes:
        script = open('obj%d/dummy.ldscript' % bits, 'r').read()
        if script.count('SPECIAL') == 0:
            okbits.add(bits)
    return okbits

instead installing dumy.ldscripts with just 'SPECIAL' lines kept would suffice
to run tests in the installed system.
Comment 4 Thomas Renninger 2023-03-05 17:53:38 UTC
Thanks Bernhard for resolving this yourself:
https://build.opensuse.org/request/show/1068331