Accepting request 287462 from Base:System
1 OBS-URL: https://build.opensuse.org/request/show/287462 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/numactl?expand=0&rev=51
This commit is contained in:
commit
25a6548e67
28
numactl-clearcache-pie.patch
Normal file
28
numactl-clearcache-pie.patch
Normal file
@ -0,0 +1,28 @@
|
||||
--- numactl-2.0.10.orig/clearcache.c
|
||||
+++ numactl-2.0.10/clearcache.c
|
||||
@@ -54,24 +54,5 @@ void fallback_clearcache(void)
|
||||
|
||||
void clearcache(unsigned char *mem, unsigned size)
|
||||
{
|
||||
-#if defined(__i386__) || defined(__x86_64__)
|
||||
- unsigned i, cl, eax, feat;
|
||||
- /* get clflush unit and feature */
|
||||
- asm("cpuid" : "=a" (eax), "=b" (cl), "=d" (feat) : "0" (1) : "cx");
|
||||
- if (!(feat & (1 << 19)))
|
||||
- fallback_clearcache();
|
||||
- cl = ((cl >> 8) & 0xff) * 8;
|
||||
- for (i = 0; i < size; i += cl)
|
||||
- asm("clflush %0" :: "m" (mem[i]));
|
||||
-#elif defined(__ia64__)
|
||||
- unsigned long cl, endcl;
|
||||
- // flush probable 128 byte cache lines (but possibly 64 bytes)
|
||||
- cl = (unsigned long)mem;
|
||||
- endcl = (unsigned long)(mem + (size-1));
|
||||
- for (; cl <= endcl; cl += 64)
|
||||
- asm ("fc %0" :: "r"(cl) : "memory" );
|
||||
-#else
|
||||
-#warning "Consider adding a clearcache implementation for your architecture"
|
||||
- fallback_clearcache();
|
||||
-#endif
|
||||
+ __builtin___clear_cache(mem, (mem + (size-1)));
|
||||
}
|
@ -1,3 +1,11 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 23 16:28:34 UTC 2015 - crrodriguez@opensuse.org
|
||||
|
||||
- package fails to build with PIE globally enabled, due to
|
||||
error: inconsistent operand constraints in an 'asm'.
|
||||
Turns out there is a GCC builtin for doing the operation
|
||||
cleanly. (numactl-clearcache-pie.patch)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jan 27 11:07:47 UTC 2015 - trenn@suse.de
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package numactl
|
||||
#
|
||||
# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@ -30,6 +30,7 @@ Source2: baselibs.conf
|
||||
Patch0: revert_date_in_numastat.patch
|
||||
# PATCH-MISSING-TAG -- See http://wiki.opensuse.org/openSUSE:Packaging_Patches_guidelines
|
||||
Patch1: 0001-Fixed-segfault-when-no-node-could-be-found-in-sysfs-.patch
|
||||
Patch2: numactl-clearcache-pie.patch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
%if 0%{?suse_version} > 1110
|
||||
BuildRequires: autoconf >= 2.64
|
||||
@ -64,7 +65,7 @@ individual NUMA policy in applications.
|
||||
%setup -q
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
|
||||
%patch2 -p1
|
||||
%build
|
||||
%if 0%{?suse_version} > 1110
|
||||
autoconf
|
||||
|
Loading…
Reference in New Issue
Block a user