Sync from SUSE:SLFO:Main libhugetlbfs revision e9085cb794119fab7a9527b9c58ce541
This commit is contained in:
commit
33daf0b3c4
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
16
_service
Normal file
16
_service
Normal file
@ -0,0 +1,16 @@
|
||||
<services>
|
||||
<service name="obs_scm" mode="localonly">
|
||||
<param name="url">https://github.com/libhugetlbfs/libhugetlbfs.git</param>
|
||||
<param name="scm">git</param>
|
||||
<param name="revision">HEAD</param>
|
||||
<param name="versionformat">@PARENT_TAG@.@TAG_OFFSET@.g%h</param>
|
||||
<param name="changesgenerate">enable</param>
|
||||
</service>
|
||||
<service name="set_version" mode="localonly"/>
|
||||
<service name="tar" mode="buildtime"/>
|
||||
<service name="recompress" mode="buildtime">
|
||||
<param name="file">*.tar</param>
|
||||
<param name="compression">gz</param>
|
||||
</service>
|
||||
</services>
|
||||
|
2
baselibs.conf
Normal file
2
baselibs.conf
Normal file
@ -0,0 +1,2 @@
|
||||
libhugetlbfs
|
||||
+/usr/lib(64)?/libhugetlbfs
|
22
disable-rw-on-non-ldscripts.diff
Normal file
22
disable-rw-on-non-ldscripts.diff
Normal file
@ -0,0 +1,22 @@
|
||||
Index: tests/Makefile
|
||||
===================================================================
|
||||
--- a/tests/Makefile.orig
|
||||
+++ b/tests/Makefile
|
||||
@@ -48,7 +48,7 @@ ifeq ($(CUSTOM_LDSCRIPTS),yes)
|
||||
TESTS += $(LDSCRIPT_TESTS) $(HUGELINK_TESTS) $(HUGELINK_TESTS:%=xB.%) \
|
||||
$(HUGELINK_TESTS:%=xBDT.%) $(HUGELINK_RW_TESTS)
|
||||
else
|
||||
-TESTS += $(LDSCRIPT_TESTS) $(HUGELINK_TESTS) $(HUGELINK_RW_TESTS)
|
||||
+TESTS += $(LDSCRIPT_TESTS) $(HUGELINK_TESTS)
|
||||
endif
|
||||
|
||||
else
|
||||
@@ -57,7 +57,7 @@ ifeq ($(CUSTOM_LDSCRIPTS),yes)
|
||||
TESTS += $(LDSCRIPT_TESTS) $(HUGELINK_TESTS) $(HUGELINK_TESTS:%=xB.%) \
|
||||
$(HUGELINK_TESTS:%=xBDT.%) $(HUGELINK_RW_TESTS)
|
||||
else
|
||||
-TESTS += $(LDSCRIPT_TESTS) $(HUGELINK_TESTS) $(HUGELINK_RW_TESTS)
|
||||
+TESTS += $(LDSCRIPT_TESTS) $(HUGELINK_TESTS)
|
||||
endif
|
||||
|
||||
endif
|
258
glibc-2.34-fix.patch
Normal file
258
glibc-2.34-fix.patch
Normal file
@ -0,0 +1,258 @@
|
||||
From 959d74fd0fbbff310943096e15024a84e8f5cba4 Mon Sep 17 00:00:00 2001
|
||||
From: Matheus Castanho <msc@linux.ibm.com>
|
||||
Date: Thu, 12 Aug 2021 16:38:46 -0300
|
||||
Subject: [PATCH] Disable hugepage-backed malloc if __morecore is not available
|
||||
|
||||
Starting with glibc 2.32, __morecore hook has been marked as deprecated, and was
|
||||
completely removed on glibc 2.34, which causes an undefined symbol error during
|
||||
the build of libhugetlbfs.
|
||||
|
||||
Greater changes are needed in order to keep providing the same functionality
|
||||
with future versions of glibc (see issue #52). Meanwhile, we can disable
|
||||
hugepage-backed malloc setup if __morecore is not available so users can at
|
||||
least keep using the other features provided by the library. Related tests are
|
||||
also conditionally disabled, and will show as SKIPPED if __morecore is not
|
||||
available.
|
||||
|
||||
Tested on powerpc64le and x86_64 with glibc 2.34 and olders.
|
||||
|
||||
Signed-off-by: Matheus Castanho <msc@linux.ibm.com>
|
||||
---
|
||||
Makefile | 6 +++++
|
||||
morecore.c | 8 ++++++
|
||||
tests/run_tests.py | 67 +++++++++++++++++++++++++++++++++++++++-------
|
||||
3 files changed, 71 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 8b73523..35e53e7 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -192,6 +192,12 @@ endif
|
||||
endif
|
||||
endif
|
||||
|
||||
+# glibc 2.34 removed __morecore, so it may not be available with recent versions
|
||||
+HAS_MORECORE := $(shell /bin/echo -e '\#include <malloc.h>\nvoid * morecore_exists() { return &__morecore; }' | $(CC) -c -xc -o /dev/null - &> /dev/null && /bin/echo yes || /bin/echo no)
|
||||
+ifeq ($(HAS_MORECORE),yes)
|
||||
+CFLAGS += -DHAS_MORECORE
|
||||
+endif
|
||||
+
|
||||
HEADERDIR = $(PREFIX)/include
|
||||
LIBDIR32 = $(PREFIX)/$(LIB32)
|
||||
LIBDIR64 = $(PREFIX)/$(LIB64)
|
||||
diff --git a/morecore.c b/morecore.c
|
||||
index 6563bbd..405c566 100644
|
||||
--- a/morecore.c
|
||||
+++ b/morecore.c
|
||||
@@ -33,6 +33,13 @@
|
||||
|
||||
#include "libhugetlbfs_internal.h"
|
||||
|
||||
+#ifndef HAS_MORECORE
|
||||
+void hugetlbfs_setup_morecore(void)
|
||||
+{
|
||||
+ INFO("Not setting up morecore because it's not available (see issue #52).\n");
|
||||
+}
|
||||
+#else
|
||||
+
|
||||
static int heap_fd;
|
||||
|
||||
static void *heapbase;
|
||||
@@ -381,3 +388,4 @@ void hugetlbfs_setup_morecore(void)
|
||||
* to mmap() if we run out of hugepages. */
|
||||
mallopt(M_MMAP_MAX, 0);
|
||||
}
|
||||
+#endif /* HAS_MORECORE */
|
||||
diff --git a/tests/run_tests.py b/tests/run_tests.py
|
||||
index 018264d..871d04d 100755
|
||||
--- a/tests/run_tests.py
|
||||
+++ b/tests/run_tests.py
|
||||
@@ -60,7 +60,7 @@ def snapshot_pool_state():
|
||||
l.append((d, tuple(substate)))
|
||||
return tuple(l)
|
||||
|
||||
-def run_test_prog(bits, pagesize, cmd, **env):
|
||||
+def run_test_prog(bits, pagesize, cmd, output='stdout', **env):
|
||||
if paranoid_pool_check:
|
||||
beforepool = snapshot_pool_state()
|
||||
print("Pool state: %s" % str(beforepool))
|
||||
@@ -73,15 +73,17 @@ def run_test_prog(bits, pagesize, cmd, **env):
|
||||
% (bits, bits, local_env.get("LD_LIBRARY_PATH", ""))
|
||||
local_env["HUGETLB_DEFAULT_PAGE_SIZE"] = repr(pagesize)
|
||||
|
||||
+ popen_args = {'env' : local_env, output : subprocess.PIPE}
|
||||
+
|
||||
try:
|
||||
- p = subprocess.Popen(cmd, env=local_env, stdout=subprocess.PIPE)
|
||||
+ p = subprocess.Popen(cmd, **popen_args)
|
||||
rc = p.wait()
|
||||
except KeyboardInterrupt:
|
||||
# Abort and mark this a strange test result
|
||||
return (None, "")
|
||||
except OSError as e:
|
||||
return (-e.errno, "")
|
||||
- out = p.stdout.read().decode().strip()
|
||||
+ out = getattr(p, output).read().decode().strip()
|
||||
|
||||
if paranoid_pool_check:
|
||||
afterpool = snapshot_pool_state()
|
||||
@@ -309,6 +311,33 @@ def check_linkhuge_tests():
|
||||
okbits.add(bits)
|
||||
return okbits
|
||||
|
||||
+def check_morecore_disabled():
|
||||
+ """
|
||||
+ Check if support for morecore is available.
|
||||
+
|
||||
+ Newer glibc versions (>= 2.34) removed the __morecore malloc hook, so tests
|
||||
+ relying on that functionality will not work as expected, and should be
|
||||
+ disabled.
|
||||
+ """
|
||||
+ global morecore_disabled, wordsizes, pagesizes
|
||||
+
|
||||
+ # Quick and dirty way to get a word and page size. Which one doesn't really
|
||||
+ # matter in this case.
|
||||
+ for wsz in wordsizes:
|
||||
+ b = wsz
|
||||
+ break
|
||||
+ for psz in pagesizes:
|
||||
+ p = psz
|
||||
+ break
|
||||
+
|
||||
+ # Run an arbitrary program and check stderr for the "morecore disabled"
|
||||
+ # message
|
||||
+ (rc, out) = run_test_prog(b, p, "gethugepagesize", output='stderr',
|
||||
+ HUGETLB_MORECORE="yes",
|
||||
+ HUGETLB_VERBOSE="3")
|
||||
+
|
||||
+ morecore_disabled = "Not setting up morecore" in out
|
||||
+
|
||||
def print_cmd(pagesize, bits, cmd, env):
|
||||
if env:
|
||||
print(' '.join(['%s=%s' % (k, v) for k, v in env.items()]), end=" ")
|
||||
@@ -357,14 +386,17 @@ def skip_test(pagesize, bits, cmd, **env):
|
||||
print_cmd(pagesize, bits, cmd, env)
|
||||
print("SKIPPED")
|
||||
|
||||
-def do_test(cmd, bits=None, **env):
|
||||
+def do_test(cmd, bits=None, skip=False, **env):
|
||||
"""
|
||||
Run a test case, testing each page size and each indicated word size.
|
||||
"""
|
||||
if bits == None: bits = wordsizes
|
||||
for p in pagesizes:
|
||||
for b in (set(bits) & wordsizes_by_pagesize[p]):
|
||||
- run_test(p, b, cmd, **env)
|
||||
+ if skip:
|
||||
+ skip_test(p, b, cmd, **env)
|
||||
+ else:
|
||||
+ run_test(p, b, cmd, **env)
|
||||
|
||||
def do_test_with_rlimit(rtype, limit, cmd, bits=None, **env):
|
||||
"""
|
||||
@@ -375,7 +407,7 @@ def do_test_with_rlimit(rtype, limit, cmd, bits=None, **env):
|
||||
do_test(cmd, bits, **env)
|
||||
resource.setrlimit(rtype, oldlimit)
|
||||
|
||||
-def do_test_with_pagesize(pagesize, cmd, bits=None, **env):
|
||||
+def do_test_with_pagesize(pagesize, cmd, bits=None, skip=False, **env):
|
||||
"""
|
||||
Run a test case, testing with a specified huge page size and
|
||||
each indicated word size.
|
||||
@@ -383,7 +415,10 @@ def do_test_with_pagesize(pagesize, cmd, bits=None, **env):
|
||||
if bits == None:
|
||||
bits = wordsizes
|
||||
for b in (set(bits) & wordsizes_by_pagesize[pagesize]):
|
||||
- run_test(pagesize, b, cmd, **env)
|
||||
+ if skip:
|
||||
+ skip_test(pagesize, b, cmd, **env)
|
||||
+ else:
|
||||
+ run_test(pagesize, b, cmd, **env)
|
||||
|
||||
def do_elflink_test(cmd, **env):
|
||||
"""
|
||||
@@ -533,7 +568,7 @@ def functional_tests():
|
||||
"""
|
||||
Run the set of functional tests.
|
||||
"""
|
||||
- global linkhuge_wordsizes
|
||||
+ global linkhuge_wordsizes, morecore_disabled
|
||||
|
||||
# Kernel background tests not requiring hugepage support
|
||||
do_test("zero_filesize_segment")
|
||||
@@ -598,19 +633,24 @@ def functional_tests():
|
||||
do_test("fork-cow")
|
||||
do_test("direct")
|
||||
do_test_with_pagesize(system_default_hpage_size, "malloc")
|
||||
+
|
||||
do_test_with_pagesize(system_default_hpage_size, "malloc",
|
||||
+ skip=morecore_disabled,
|
||||
LD_PRELOAD="libhugetlbfs.so",
|
||||
HUGETLB_MORECORE="yes")
|
||||
do_test_with_pagesize(system_default_hpage_size, "malloc",
|
||||
+ skip=morecore_disabled,
|
||||
LD_PRELOAD="libhugetlbfs.so",
|
||||
HUGETLB_MORECORE="yes",
|
||||
HUGETLB_RESTRICT_EXE="unknown:none")
|
||||
do_test_with_pagesize(system_default_hpage_size, "malloc",
|
||||
+ skip=morecore_disabled,
|
||||
LD_PRELOAD="libhugetlbfs.so",
|
||||
HUGETLB_MORECORE="yes",
|
||||
HUGETLB_RESTRICT_EXE="unknown:malloc")
|
||||
do_test_with_pagesize(system_default_hpage_size, "malloc_manysmall")
|
||||
do_test_with_pagesize(system_default_hpage_size, "malloc_manysmall",
|
||||
+ skip=morecore_disabled,
|
||||
LD_PRELOAD="libhugetlbfs.so",
|
||||
HUGETLB_MORECORE="yes")
|
||||
|
||||
@@ -630,26 +670,32 @@ def functional_tests():
|
||||
do_test_with_pagesize(system_default_hpage_size, "heapshrink",
|
||||
GLIBC_TUNABLES="glibc.malloc.tcache_count=0",
|
||||
LD_PRELOAD="libheapshrink.so")
|
||||
+
|
||||
do_test_with_pagesize(system_default_hpage_size, "heapshrink",
|
||||
+ skip=morecore_disabled,
|
||||
GLIBC_TUNABLES="glibc.malloc.tcache_count=0",
|
||||
LD_PRELOAD="libhugetlbfs.so",
|
||||
HUGETLB_MORECORE="yes")
|
||||
do_test_with_pagesize(system_default_hpage_size, "heapshrink",
|
||||
+ skip=morecore_disabled,
|
||||
GLIBC_TUNABLES="glibc.malloc.tcache_count=0",
|
||||
LD_PRELOAD="libhugetlbfs.so libheapshrink.so",
|
||||
HUGETLB_MORECORE="yes")
|
||||
do_test_with_pagesize(system_default_hpage_size, "heapshrink",
|
||||
+ skip=morecore_disabled,
|
||||
GLIBC_TUNABLES="glibc.malloc.tcache_count=0",
|
||||
LD_PRELOAD="libheapshrink.so",
|
||||
HUGETLB_MORECORE="yes",
|
||||
HUGETLB_MORECORE_SHRINK="yes")
|
||||
do_test_with_pagesize(system_default_hpage_size, "heapshrink",
|
||||
+ skip=morecore_disabled,
|
||||
GLIBC_TUNABLES="glibc.malloc.tcache_count=0",
|
||||
LD_PRELOAD="libhugetlbfs.so libheapshrink.so",
|
||||
HUGETLB_MORECORE="yes",
|
||||
HUGETLB_MORECORE_SHRINK="yes")
|
||||
|
||||
- do_test("heap-overflow", HUGETLB_VERBOSE="1", HUGETLB_MORECORE="yes")
|
||||
+ do_test("heap-overflow", skip=morecore_disabled, HUGETLB_VERBOSE="1",
|
||||
+ HUGETLB_MORECORE="yes")
|
||||
|
||||
# Run the remapping tests' up-front checks
|
||||
linkhuge_wordsizes = check_linkhuge_tests()
|
||||
@@ -747,7 +793,7 @@ def print_help():
|
||||
|
||||
def main():
|
||||
global wordsizes, pagesizes, dangerous, paranoid_pool_check, system_default_hpage_size
|
||||
- global custom_ldscripts
|
||||
+ global custom_ldscripts, morecore_disabled
|
||||
testsets = set()
|
||||
env_override = {"QUIET_TEST": "1", "HUGETLBFS_MOUNTS": "",
|
||||
"HUGETLB_ELFMAP": None, "HUGETLB_MORECORE": None}
|
||||
@@ -802,6 +848,7 @@ def main():
|
||||
return 1
|
||||
|
||||
check_hugetlbfs_path()
|
||||
+ check_morecore_disabled()
|
||||
|
||||
if "func" in testsets: functional_tests()
|
||||
if "stress" in testsets: stress_tests()
|
BIN
libhugetlbfs-2.23.0.g6b126a4.obscpio
(Stored with Git LFS)
Normal file
BIN
libhugetlbfs-2.23.0.g6b126a4.obscpio
(Stored with Git LFS)
Normal file
Binary file not shown.
490
libhugetlbfs.changes
Normal file
490
libhugetlbfs.changes
Normal file
@ -0,0 +1,490 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Mar 1 03:18:42 UTC 2023 - Bernhard Wiedemann <bwiedemann@suse.com>
|
||||
|
||||
- Drop tests from rpm (boo#1159558)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Sep 9 07:42:34 UTC 2021 - Martin Liška <mliska@suse.cz>
|
||||
|
||||
- Add glibc-2.34-fix.patch as a fix for upstream issue gh#52:
|
||||
https://github.com/libhugetlbfs/libhugetlbfs/pull/63/commits
|
||||
(boo#1189094).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Sep 09 07:38:10 UTC 2021 - mliska@suse.cz
|
||||
|
||||
- Update to version 2.23.0.g6b126a4:
|
||||
* Update NEWS for 2.23 release
|
||||
* Wait child with os.wait()
|
||||
* Makefile: add MANDIR variable
|
||||
* Makefile: skip LIB resolve check if NATIVEONLY
|
||||
* Introduce basic riscv64 support
|
||||
* ld.hugetlbfs: fix -Ttext-segment argument on AArch64
|
||||
* tests: add explicit permissions to open() call
|
||||
* Update NEWS for 2.22 release
|
||||
* Convert setup script to python3
|
||||
* Clean up error checking in dump_proc_pid_maps()
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jul 16 21:21:31 UTC 2021 - trenn@suse.de
|
||||
|
||||
- Update to version 2.23.0.g6b126a4:
|
||||
* Update NEWS for 2.23 release
|
||||
* Wait child with os.wait()
|
||||
* Makefile: add MANDIR variable
|
||||
* Makefile: skip LIB resolve check if NATIVEONLY
|
||||
* Introduce basic riscv64 support
|
||||
* ld.hugetlbfs: fix -Ttext-segment argument on AArch64
|
||||
* tests: add explicit permissions to open() call
|
||||
* Update NEWS for 2.22 release
|
||||
* Convert setup script to python3
|
||||
* Clean up error checking in dump_proc_pid_maps()
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jul 09 13:18:00 UTC 2021 - trenn@suse.de
|
||||
|
||||
- Enhance _service magic
|
||||
- Update to version 2.23.0.g6b126a4:
|
||||
* Wait child with os.wait()
|
||||
* Makefile: add MANDIR variable
|
||||
* Makefile: skip LIB resolve check if NATIVEONLY
|
||||
* Introduce basic riscv64 support
|
||||
* ld.hugetlbfs: fix -Ttext-segment argument on AArch64
|
||||
- Remove unsupported arch patch (does not patch clean anymore):
|
||||
D libhugetlbfs.s390.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 21 12:36:14 UTC 2021 - Wolfgang Frisch <wolfgang.frisch@suse.com>
|
||||
|
||||
- Hardening: Link as PIE (bsc#1184123).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 17 13:48:04 UTC 2020 - Dirk Mueller <dmueller@suse.com>
|
||||
|
||||
- update to 2.22:
|
||||
* Library now verifies if slices are supported on PPC
|
||||
* ld.hugetlbfs now supports multiple page sizes on PPC64
|
||||
* Various GCC warning cleanups
|
||||
* setup script converted to Python 3
|
||||
* Tests are only run on online CPUs and only if a sufficient number are
|
||||
available
|
||||
* task-size-overrun now searches empty address space more efficiently
|
||||
* Tests that do not link the library are run for default page sizes only
|
||||
* Test runner now uses Python 3
|
||||
- remove libhugetlbfs_fix_tests.patch (upstream)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 1 13:52:36 UTC 2018 - egotthold@suse.com
|
||||
|
||||
- Removed make target "install-perlmod" and filecheck from packaging process.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Sep 28 11:30:08 UTC 2018 - egotthold@suse.com
|
||||
|
||||
- Update to 2.21
|
||||
- Bug Fixes
|
||||
* The noexec stack markers are set directly
|
||||
* We no longer lie to glibc about shrinking the heap by less than HPAGE_SIZE
|
||||
- Test Suite
|
||||
* No existent tests are no longer marked Killed By Signal
|
||||
* Disable malloc per-thread cache for heap shrinking tests
|
||||
- Remove patch "ignore-perl-modules.diff"
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Sep 11 07:47:31 UTC 2017 - jengelh@inai.de
|
||||
|
||||
- Run `make install-perlmod` to install/satisfy Perl modules
|
||||
required by /usr/bin/cpupcstat, itself installed by just
|
||||
`make install` [boo#1057963]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 20 10:40:04 UTC 2017 - jengelh@inai.de
|
||||
|
||||
- Update summary and descriptions a bit
|
||||
- Move development manpages (*.3) to development subpackage
|
||||
- Avoid ||/&& in %install because it can leave $? at non-zero
|
||||
(unlike if..fi), and %install is run with sh -x.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 9 09:10:07 UTC 2017 - fschnizlein@suse.com
|
||||
|
||||
- Update to 2.20
|
||||
- Bug Fixes:
|
||||
* Fix keyword collisions and warnings from GCC 5
|
||||
* hugeadm output is parsed for default size in huge_page_setup_helper
|
||||
* Testsuite: fallocate tests
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 6 13:10:03 UTC 2015 - fvogt@suse.com
|
||||
|
||||
- Add zero_filesize_segment.patch to fix testcase on s390x
|
||||
- Fixes bnc#919680
|
||||
- Patches already included mainline and now deleted:
|
||||
D libhugetlbfs-2.18-restrict-is-a-reserved-word.patch
|
||||
D fix_plt_extrasz_always_returning_0_on_ppc64le.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 6 12:01:55 UTC 2015 - fvogt@suse.com
|
||||
|
||||
- Latest version from git next branch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 23 22:35:32 UTC 2015 - antoine.belvire@laposte.net
|
||||
|
||||
- Add libhugelbfs-2.18-restrict-is-a-reserved-word.patch which
|
||||
fixes compilation with GCC 5 (and C99/C11 in general).
|
||||
* Add libhugetlbfs-2.18-restrict-is-a-reserved-word.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 20 12:11:44 UTC 2015 - normand@linux.vnet.ibm.com
|
||||
|
||||
- update to 2.18
|
||||
to solve build failures for ppc/ppc64.
|
||||
remove following patches now included in 2.18:
|
||||
libhugetlbfs-ppc64le.patch
|
||||
libhugetlbfs.ppc64le.step2.patch
|
||||
libhugetlbfs.ppc64le.step3.patch
|
||||
libhugetlbfs.ppc64le.step4.patch
|
||||
- Add fix_plt_extrasz_always_returning_0_on_ppc64le.patch
|
||||
already upstream.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Mar 26 12:37:06 UTC 2014 - dmueller@suse.com
|
||||
|
||||
- update to 2.17:
|
||||
* PPC segement alignment restrictions can be disabled
|
||||
* Added Aarch64 support
|
||||
* Allow compiler overrides for 64 and 32 bit builds
|
||||
* hugeadm now handles /etc/mtab being a simlink properly
|
||||
|
||||
* ppc64 fixes
|
||||
- remove libhugetlbfs.ia64-libdir.patch:
|
||||
ia64 is no longer supported by openSUSE
|
||||
- add ignore-perl-modules.diff: do not install perl modules, unused
|
||||
and are installed in the wrong place to be found anyway
|
||||
- add ARM support
|
||||
- add disable-rw-on-non-ldscripts.diff: Skip rw tests
|
||||
- Do not install tests anymore
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 11 08:09:11 UTC 2014 - trenn@suse.de
|
||||
|
||||
- Tests compile fine for s390(x), also include them in the package, the same
|
||||
way it is done for other archs as well.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 10 15:56:31 UTC 2014 - trenn@suse.de
|
||||
|
||||
- There are no tests installed in s390(x) case, therefore there are no
|
||||
files in %{_libdir}/libhugetlbfs
|
||||
Remove the directory from the file list to fix package build for s390(x)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Jan 11 05:56:47 UTC 2014 - normand@linux.vnet.ibm.com
|
||||
|
||||
- Add support of ppc64le with 4 patches
|
||||
libhugetlbfs-ppc64le.patch
|
||||
libhugetlbfs.ppc64le.step2.patch
|
||||
libhugetlbfs.ppc64le.step3.patch
|
||||
libhugetlbfs.ppc64le.step4.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Mar 11 09:02:48 UTC 2013 - trenn@suse.de
|
||||
|
||||
- Update to version 2.16:
|
||||
Features:
|
||||
* ARM Support
|
||||
* s390x Dynamic TASK_SIZE support
|
||||
|
||||
Bug Fixes:
|
||||
* find_mounts() now properly NULL terminates mount point names
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 23 10:34:58 UTC 2013 - trenn@suse.de
|
||||
|
||||
- Update to version 2.15
|
||||
Features:
|
||||
* Some System z functionality went into 2.15
|
||||
* Updated man pages
|
||||
* Added basic events for core_i7 to oprofile_map_events
|
||||
|
||||
Fixes:
|
||||
* Disable Unable to verify address range warning when offset < page_size
|
||||
* Remove sscanf in library setup to avoid heap allocation before _morecore
|
||||
override
|
||||
* Revert heap exhaustion patch
|
||||
* hugectl no longer clips LD_LIBRARY_PATH variable
|
||||
* Fix clean on failure code to avoid closing stdout
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jul 11 06:24:07 UTC 2012 - adrian@suse.de
|
||||
|
||||
- Add excludearch for arm due to lacking support
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Apr 10 19:51:51 UTC 2012 - tabraham@novell.com
|
||||
|
||||
- Update to version 2.13
|
||||
* hugeadm can now be used to control Transparent Huge Page tunables
|
||||
* New morecore mode to better support THP
|
||||
* Check permissions on hugetlbfs mount point before marking it as
|
||||
available
|
||||
* Fix shm tests to use random address instead of fixed, old address
|
||||
failed on ARM
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 12 20:04:52 UTC 2011 - tabraham@novell.com
|
||||
|
||||
- Update to version 2.12
|
||||
* libhugetlbfs usages can now be restricted to certain binary names
|
||||
* libhugetlbfs now supports static linking
|
||||
* hugeadm uses more human readable directory names for mount points
|
||||
* Fix segfault if specified user was not in passwd, failuer in
|
||||
getpwuid() is now checked
|
||||
* Added tests for static linking to testcase
|
||||
* Added missing tests to driver script
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun May 29 21:42:52 UTC 2011 - meissner@novell.com
|
||||
|
||||
- Do not include the 268MB testcase /usr/lib/libhugetlbfs/tests/obj32/linkhuge_rw.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Dec 17 11:45:36 UTC 2010 - trenn@novell.com
|
||||
|
||||
- Update to version 2.11
|
||||
Bugfixes and new features are listed in the NEWS file in
|
||||
/usr/share/doc/packages/libhugetlbfs/NEWS
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 6 16:52:30 UTC 2010 - aj@suse.de
|
||||
|
||||
- Update to version 2.9:
|
||||
* Add --no-reseve to hugectl to request mmap'd pages are not reserved
|
||||
for kernels newer than 2.6.34
|
||||
* Add --obey-numa-mempol to hugeadm to request static pool pages are
|
||||
allocated following the process NUMA memory policy
|
||||
* Add switch to let administrator limit new mount points by size or inodes
|
||||
* cpupcstat now caches the value returned by tlmiss_cost.sh to avoid
|
||||
rerunning the script
|
||||
* When specifying huge page pool sizes with hugeadm, memory sizes can
|
||||
be used as well as the number of huge pages
|
||||
* DEFAULT is now a valid huge page pool for resizing, it will adjust
|
||||
the pool for the default huge page size
|
||||
* tlbmiss_cost.sh in the contrib/ sub directory will estimate the cost
|
||||
in CPU cycles of a TLB miss on the arch where it is run
|
||||
* Add python script which automates huge page pool setup with minimal
|
||||
input required from user
|
||||
* cpupcstat now supports data collection using the perf tool as well as
|
||||
oprofile
|
||||
* --explain reports if min_free_kbytes is too small
|
||||
* add --set-min_free_kbytes to hugeadm
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 18 14:41:41 UTC 2010 - coolo@novell.com
|
||||
|
||||
- strip test binaries to fix build
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 9 09:29:27 UTC 2010 - trenn@novell.com
|
||||
|
||||
- Removed unused files
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 8 22:48:44 UTC 2010 - jengelh@medozas.de
|
||||
|
||||
- add workarounds for broken Makefile logic to detect arch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 1 11:35:48 UTC 2010 - jengelh@medozas.de
|
||||
|
||||
- Package baselibs.conf
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 12 19:12:48 UTC 2009 - aj@suse.de
|
||||
|
||||
- Fix typo in requires.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jul 29 15:46:42 CEST 2009 - trenn@suse.de
|
||||
|
||||
- Update from version 2.0 to 2.5
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 2 10:51:07 CET 2009 - olh@suse.de
|
||||
|
||||
- document workaround for NX configurations on x86 (bnc#470234 - LTC50261)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 7 15:11:22 CET 2009 - olh@suse.de
|
||||
|
||||
- Update SECTIONS from linker scripts for binutils 2.19 compatibility
|
||||
(bnc#445372 - LTC50129)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 7 12:34:56 CET 2009 - olh@suse.de
|
||||
|
||||
- obsolete old -XXbit packages (bnc#437293)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 6 14:59:22 CET 2008 - olh@suse.de
|
||||
|
||||
- fix libhugetlbfs 32bit test case xB.linkhuge failure (bnc#442209 - LTC49702)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 21 14:24:22 CEST 2008 - olh@suse.de
|
||||
|
||||
- handle older binutils versions in elf32ppclinux.xBDT (bnc#436451 - LTC49076)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 27 18:33:12 CEST 2008 - olh@suse.de
|
||||
|
||||
- update to version 2.0 (fate#304340)
|
||||
New Features
|
||||
* New scriptless relinking for binutils >= 2.17
|
||||
* Added direct allocator API for huge pages
|
||||
|
||||
Bug Fixes
|
||||
* /proc/mounts is parsed line at a time to handle file larger than 4kb
|
||||
* Read-only mappings use MAP_NORESERVE
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 25 11:31:01 CEST 2008 - olh@suse.de
|
||||
|
||||
- update to version 1.3
|
||||
New features
|
||||
* Add HUGETLB_NO_PREFAULT to control prefaulting of huge pages via mlock
|
||||
* Add "[hostname:pid]" to output messages
|
||||
* Setup for handling larger huge page sizes e.g. 16G huge pages
|
||||
* Update for new upstream sysctl
|
||||
* Add support for hugetlbfs_morecore to shrink the heap
|
||||
|
||||
Bug fixes
|
||||
* Disable heap shrinking by default to avoid bug in glibc malloc
|
||||
* Skip elflink calls in setup_libhugetlbfs for IA64 and sparc64
|
||||
* Replace gethugepagesize with check_hugepagesize for error checking
|
||||
* Make morecore argument a long to handle larger page sizes
|
||||
|
||||
Tets suite fixes
|
||||
* Check uid/gid in tests where it matters
|
||||
* tests: verify there are enough huge pages
|
||||
* Change tests to read /proc/meminfo
|
||||
* tests: verify that huge page size isn't too big for the test
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 10 12:54:45 CEST 2008 - ro@suse.de
|
||||
|
||||
- added baselibs.conf file to build xxbit packages
|
||||
for multilib support
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jan 14 17:19:02 CET 2008 - olh@suse.de
|
||||
|
||||
- update to version 1.2
|
||||
New features
|
||||
* Partial segment remapping. This allows non-relinked binaries to try
|
||||
to take advantage of libhugetlbfs' segment remapping code. Large
|
||||
segments are required, especially on Power. This feature is useful
|
||||
for estimating huge page performance, however full relinking will
|
||||
still perform better.
|
||||
* Add extra debugging for binaries that may run out of address space.
|
||||
* Log library version when HUGETLB_VERBOSE is enabled.
|
||||
* New test to check handling of misaligned mmap() parameters.
|
||||
Bug fixes
|
||||
* Fix EH_FRAME segment. Fixes some C++ applications.
|
||||
* Rework PLT detection to work better on Power.
|
||||
* Add per-target-arch syscall stubs to the library. These provide
|
||||
reliable error messages from elflink.c if they occur while the
|
||||
program segments are unmapped.
|
||||
* Add proper SONAME to shared libs.
|
||||
* Makefile respects CFLAGS/LDFLAGS/CPPFLAGS environment variables.
|
||||
* Make mlock() failure non-fatal.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 8 09:34:13 CEST 2007 - olh@suse.de
|
||||
|
||||
- disable zero_filesize_segment test
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Apr 15 18:31:53 CEST 2007 - olh@suse.de
|
||||
|
||||
- update to version 1.1 (262564 - LTC33711)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 5 11:49:14 CET 2007 - olh@suse.de
|
||||
|
||||
- update to 20070129 devel snapshot
|
||||
drop hugetlbd
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 5 11:21:45 CET 2007 - olh@suse.de
|
||||
|
||||
- build -m64/-m32 if required
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Dec 9 09:08:53 CET 2006 - olh@suse.de
|
||||
|
||||
- build with -g
|
||||
make install should not depend on all
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Dec 8 16:20:25 CET 2006 - olh@suse.de
|
||||
|
||||
- package testsuite, fix make check
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Dec 5 14:48:13 CET 2006 - olh@suse.de
|
||||
|
||||
- add the hugetlbd (214426)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Oct 29 10:02:15 CET 2006 - olh@suse.de
|
||||
|
||||
- update to bugfix release 1.0.1 (214426)
|
||||
* Always install linker scripts for all targets
|
||||
* Error message updates
|
||||
* Add documentation on HUGETLB_DEBUG
|
||||
* Testcase updates
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Oct 5 13:40:17 CEST 2006 - olh@suse.de
|
||||
|
||||
- update to final 1.0
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Sep 19 12:57:06 CEST 2006 - olh@suse.de
|
||||
|
||||
- update to 20060913 git state
|
||||
docu updates
|
||||
use library versioning
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jul 19 18:01:55 CEST 2006 - olh@suse.de
|
||||
|
||||
- update to 1.0-pre3
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Apr 18 13:45:56 CEST 2006 - olh@suse.de
|
||||
|
||||
- drop unneeded -packages from Buildrequires
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Apr 8 11:44:06 CEST 2006 - olh@suse.de
|
||||
|
||||
- update to 1.0-pre2 (#142046 - LTC20562)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 21 21:09:06 CET 2006 - olh@suse.de
|
||||
|
||||
- remove backup files
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 21 18:34:41 CET 2006 - olh@suse.de
|
||||
|
||||
- add linker scripts on ppc, ppc64, i386 and x86_64
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Feb 9 13:33:32 CET 2006 - olh@suse.de
|
||||
|
||||
- create package, version 1.0-pre1 (#142046 - LTC20562)
|
||||
|
4
libhugetlbfs.obsinfo
Normal file
4
libhugetlbfs.obsinfo
Normal file
@ -0,0 +1,4 @@
|
||||
name: libhugetlbfs
|
||||
version: 2.23.0.g6b126a4
|
||||
mtime: 1599498497
|
||||
commit: 6b126a4d7da9490fa40fe7e1b962edcb939feddc
|
99
libhugetlbfs.spec
Normal file
99
libhugetlbfs.spec
Normal file
@ -0,0 +1,99 @@
|
||||
#
|
||||
# spec file for package libhugetlbfs
|
||||
#
|
||||
# Copyright (c) 2021 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define my_make_flags V=1 CFLAGS="%{optflags} -fPIC" LDFLAGS="-pie" BUILDTYPE=NATIVEONLY PREFIX=%{_prefix} LIBDIR32=%{_libdir} DESTDIR=%{buildroot}
|
||||
Name: libhugetlbfs
|
||||
Version: 2.23.0.g6b126a4
|
||||
Release: 0
|
||||
Summary: Helper library for the Huge Translation Lookaside Buffer Filesystem
|
||||
License: LGPL-2.1-or-later
|
||||
Group: System/Libraries
|
||||
URL: https://github.com/libhugetlbfs/libhugetlbfs
|
||||
Source0: libhugetlbfs-%{version}.tar.gz
|
||||
Source1: baselibs.conf
|
||||
Patch0: libhugetlbfs.tests-malloc.patch
|
||||
Patch1: libhugetlbfs_ia64_fix_missing_test.patch
|
||||
Patch2: disable-rw-on-non-ldscripts.diff
|
||||
Patch3: zero_filesize_segment.patch
|
||||
Patch4: glibc-2.34-fix.patch
|
||||
BuildRequires: doxygen
|
||||
BuildRequires: glibc-devel-static
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
# bug437293
|
||||
%ifarch ppc64
|
||||
Obsoletes: libhugetlbfs-64bit
|
||||
%endif
|
||||
|
||||
%description
|
||||
The libhugetlbfs package interacts with the Linux hugetlbfs to
|
||||
make large pages available to applications in a transparent manner.
|
||||
|
||||
%package devel
|
||||
Summary: Development files for libhugetlbfs
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: libhugetlbfs
|
||||
|
||||
%description devel
|
||||
Devel package, header and static library, of libhugetlbfs.
|
||||
|
||||
%package tests
|
||||
Summary: Tests for package libhugetlbfs
|
||||
Group: Development/Tools/Other
|
||||
|
||||
%description tests
|
||||
The testsuite for libhugetlbfs. Binaries can be found in
|
||||
%{_libdir}/libhugetlbfs/tests.
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
echo %{version} > version
|
||||
make %{my_make_flags}
|
||||
|
||||
%install
|
||||
make %{my_make_flags} PMDIR="%{perl_vendorlib}/TLBC" \
|
||||
install install-tests
|
||||
mkdir -p %{buildroot}%{_prefix}/include
|
||||
cp -avL hugetlbfs.h %{buildroot}%{_prefix}/include
|
||||
chmod 644 %{buildroot}%{_libdir}/*.a
|
||||
if [ -f %{buildroot}%{_libdir}/libhugetlbfs/tests/obj64/dummy.ldscript ]; then
|
||||
chmod -f a-x %{buildroot}%{_libdir}/libhugetlbfs/tests/obj64/dummy.ldscript
|
||||
fi
|
||||
rm -r %{buildroot}%{_libdir}/libhugetlbfs/tests
|
||||
|
||||
%files
|
||||
%defattr(-, root, root)
|
||||
%doc LGPL-2.1 HOWTO README NEWS
|
||||
%{_datadir}/libhugetlbfs
|
||||
%{_bindir}/*
|
||||
%{_mandir}/man[178]/*%{?ext_man}
|
||||
%{_libdir}/libhugetlbfs_privutils.so
|
||||
%{_libdir}/libhugetlbfs.so
|
||||
|
||||
%files devel
|
||||
%defattr(-, root, root)
|
||||
%{_includedir}/hugetlbfs.h
|
||||
%{_libdir}/libhugetlbfs.a
|
||||
%{_mandir}/man3/*%{?ext_man}
|
||||
|
||||
%files tests
|
||||
%defattr(-,root,root)
|
||||
%{_libdir}/libhugetlbfs/
|
||||
|
||||
%changelog
|
17
libhugetlbfs.tests-malloc.patch
Normal file
17
libhugetlbfs.tests-malloc.patch
Normal file
@ -0,0 +1,17 @@
|
||||
Test malloc, set unused to NULL if it fails
|
||||
|
||||
---
|
||||
tests/heapshrink-helper.c | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
--- a/tests/heapshrink-helper.c
|
||||
+++ b/tests/heapshrink-helper.c
|
||||
@@ -21,5 +21,7 @@
|
||||
|
||||
static void __attribute__((constructor)) setup_heapshrink_helper(void)
|
||||
{
|
||||
- (void) malloc(1);
|
||||
+ void *unused = malloc(1);
|
||||
+ if (unused)
|
||||
+ unused = NULL;
|
||||
}
|
25
libhugetlbfs_ia64_fix_missing_test.patch
Normal file
25
libhugetlbfs_ia64_fix_missing_test.patch
Normal file
@ -0,0 +1,25 @@
|
||||
libhugetlbfs: TESTS_64 is not defined for ia64, check when trying to install it
|
||||
|
||||
That was for libhugetlbfs version 2.12 (TEST_64 is not defined for ia64),
|
||||
same seem to be the case for x86_64 in version 2.15.
|
||||
-> Revert the installation of this test totally.
|
||||
|
||||
Signed-off-by: Thomas Renninger <trenn@suse.de>
|
||||
|
||||
---
|
||||
tests/Makefile | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
Index: libhugetlbfs-2.21/tests/Makefile
|
||||
===================================================================
|
||||
--- libhugetlbfs-2.21.orig/tests/Makefile
|
||||
+++ libhugetlbfs-2.21/tests/Makefile
|
||||
@@ -295,7 +295,7 @@ obj64/install:
|
||||
$(INSTALL) -m 755 wrapper-utils.sh $(DESTDIR)$(INST_TESTSDIR64)/obj64
|
||||
$(INSTALL) -m 755 $(HELPERS:%=obj64/%) $(DESTDIR)$(INST_TESTSDIR64)/obj64
|
||||
$(INSTALL) -m 755 $(HELPER_LIBS:%=obj64/%) $(DESTDIR)$(INST_TESTSDIR64)/obj64
|
||||
- $(INSTALL) -m 755 $(TESTS_64:%=obj64/%) $(DESTDIR)$(INST_TESTSDIR64)/obj64
|
||||
+
|
||||
$(INSTALL) -m 755 run_tests.py $(DESTDIR)$(INST_TESTSDIR64)
|
||||
|
||||
install: $(OBJDIRS:%=%/install)
|
38
zero_filesize_segment.patch
Normal file
38
zero_filesize_segment.patch
Normal file
@ -0,0 +1,38 @@
|
||||
diff --git a/tests/Makefile b/tests/Makefile
|
||||
index e2e1156..4daa5d1 100644
|
||||
--- a/tests/Makefile
|
||||
+++ b/tests/Makefile
|
||||
@@ -39,6 +39,11 @@ LDLIBS = $(STATIC_LDLIBS) -ldl -lhugetlbfs_privutils
|
||||
LDFLAGS32 = -L../obj32
|
||||
LDFLAGS64 = -L../obj64
|
||||
INSTALL = install
|
||||
+ifeq ($(ARCH),s390x)
|
||||
+ARCH_SUFFIX = .s390x
|
||||
+else
|
||||
+ARCH_SUFFIX =
|
||||
+endif
|
||||
|
||||
TESTS = $(LIB_TESTS) $(NOLIB_TESTS) $(STRESS_TESTS) dummy.ldscript
|
||||
ifdef ELF32
|
||||
@@ -181,7 +186,7 @@ $(LDSCRIPT_TESTS:%=obj32/%): obj32/%: %.ld obj32/%.o obj32/testutils.o
|
||||
@$(VECHO) LD32 "(preload test)" $@
|
||||
$(CC32) $(LDFLAGS) $(LDFLAGS32) -o $@ -Lobj32 $^ $(LDLIBS) || cp $(BADTOOLCHAIN) $@
|
||||
|
||||
-$(LDSCRIPT_TESTS:%=obj64/%): obj64/%: %.ld obj64/%.o obj64/testutils.o
|
||||
+$(LDSCRIPT_TESTS:%=obj64/%): obj64/%: %$(ARCH_SUFFIX).ld obj64/%.o obj64/testutils.o
|
||||
@$(VECHO) LD64 "(preload test)" $@
|
||||
$(CC64) $(LDFLAGS) $(LDFLAGS64) -o $@ -Lobj64 $^ $(LDLIBS) || cp $(BADTOOLCHAIN) $@
|
||||
|
||||
diff --git a/tests/zero_filesize_segment.s390x.ld b/tests/zero_filesize_segment.s390x.ld
|
||||
new file mode 100644
|
||||
index 0000000..813a92f
|
||||
--- /dev/null
|
||||
+++ b/tests/zero_filesize_segment.s390x.ld
|
||||
@@ -0,0 +1,7 @@
|
||||
+SECTIONS
|
||||
+{
|
||||
+ .empty (0x90000000) : {
|
||||
+ __empty_segment = .;
|
||||
+ . = . + 4;
|
||||
+ }
|
||||
+}
|
Loading…
Reference in New Issue
Block a user