From d2000b5c28873333277218dd2e7e3e110909af34 Mon Sep 17 00:00:00 2001 From: wzx Date: Wed, 10 Aug 2022 09:54:22 +0800 Subject: [PATCH] e2fsprogs add sw Signed-off-by: wzx --- userspace-rcu-0.13.0-sw.patch | 166 ++++++++++++++++++++++++++++++++++ userspace-rcu.spec | 6 +- 2 files changed, 171 insertions(+), 1 deletion(-) create mode 100755 userspace-rcu-0.13.0-sw.patch diff --git a/userspace-rcu-0.13.0-sw.patch b/userspace-rcu-0.13.0-sw.patch new file mode 100755 index 0000000..939253e --- /dev/null +++ b/userspace-rcu-0.13.0-sw.patch @@ -0,0 +1,166 @@ +diff -Naur userspace-rcu-0.13.0.org/LICENSE userspace-rcu-0.13.0.sw/LICENSE +--- userspace-rcu-0.13.0.org/LICENSE 2022-02-26 01:43:47.240000000 +0000 ++++ userspace-rcu-0.13.0.sw/LICENSE 2022-02-26 01:46:41.140000000 +0000 +@@ -44,6 +44,7 @@ + compiler.h + arch/s390.h + uatomic/alpha.h ++uatomic/sw_64.h + uatomic/mips.h + uatomic/nios2.h + uatomic/s390.h +diff -Naur userspace-rcu-0.13.0.org/include/Makefile.am userspace-rcu-0.13.0.sw/include/Makefile.am +--- userspace-rcu-0.13.0.org/include/Makefile.am 2022-02-26 01:43:47.240000000 +0000 ++++ userspace-rcu-0.13.0.sw/include/Makefile.am 2022-02-26 01:44:36.980000000 +0000 +@@ -1,6 +1,7 @@ + nobase_include_HEADERS = \ + urcu/arch/aarch64.h \ + urcu/arch/alpha.h \ ++ urcu/arch/sw_64.h \ + urcu/arch/arm.h \ + urcu/arch/gcc.h \ + urcu/arch/generic.h \ +@@ -60,6 +61,7 @@ + urcu/tls-compat.h \ + urcu/uatomic/aarch64.h \ + urcu/uatomic/alpha.h \ ++ urcu/uatomic/sw_64.h \ + urcu/uatomic_arch.h \ + urcu/uatomic/arm.h \ + urcu/uatomic/gcc.h \ +diff -Naur userspace-rcu-0.13.0.org/include/Makefile.in userspace-rcu-0.13.0.sw/include/Makefile.in +--- userspace-rcu-0.13.0.org/include/Makefile.in 2022-02-26 01:43:47.250000000 +0000 ++++ userspace-rcu-0.13.0.sw/include/Makefile.in 2022-02-26 01:44:17.140000000 +0000 +@@ -318,6 +318,7 @@ + nobase_include_HEADERS = \ + urcu/arch/aarch64.h \ + urcu/arch/alpha.h \ ++ urcu/arch/sw_64.h \ + urcu/arch/arm.h \ + urcu/arch/gcc.h \ + urcu/arch/generic.h \ +@@ -377,6 +378,7 @@ + urcu/tls-compat.h \ + urcu/uatomic/aarch64.h \ + urcu/uatomic/alpha.h \ ++ urcu/uatomic/sw_64.h \ + urcu/uatomic_arch.h \ + urcu/uatomic/arm.h \ + urcu/uatomic/gcc.h \ +diff -Naur userspace-rcu-0.13.0.org/include/urcu/arch/sw_64.h userspace-rcu-0.13.0.sw/include/urcu/arch/sw_64.h +--- userspace-rcu-0.13.0.org/include/urcu/arch/sw_64.h 1970-01-01 00:00:00.000000000 +0000 ++++ userspace-rcu-0.13.0.sw/include/urcu/arch/sw_64.h 2022-02-26 01:49:14.100000000 +0000 +@@ -0,0 +1,42 @@ ++#ifndef _URCU_ARCH_SW_64_H ++#define _URCU_ARCH_SW_64_H ++ ++/* ++ * arch_sw_64.h: trivial definitions for the Sw_64 architecture. ++ * ++ * Copyright (c) 2010 Paolo Bonzini ++ * ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Lesser General Public ++ * License as published by the Free Software Foundation; either ++ * version 2.1 of the License, or (at your option) any later version. ++ * ++ * This library is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General Public ++ * License along with this library; if not, write to the Free Software ++ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA ++ */ ++ ++#include ++#include ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ ++#define cmm_mb() __asm__ __volatile__ ("memb":::"memory") ++#define cmm_wmb() __asm__ __volatile__ ("memb":::"memory") ++#define cmm_read_barrier_depends() __asm__ __volatile__ ("memb":::"memory") ++ ++#ifdef __cplusplus ++} ++#endif ++ ++#include ++ ++#endif /* _URCU_ARCH_SW_64_H */ +diff -Naur userspace-rcu-0.13.0.org/include/urcu/arch.h userspace-rcu-0.13.0.sw/include/urcu/arch.h +--- userspace-rcu-0.13.0.org/include/urcu/arch.h 2022-02-26 01:43:47.250000000 +0000 ++++ userspace-rcu-0.13.0.sw/include/urcu/arch.h 2022-02-26 01:46:28.100000000 +0000 +@@ -39,6 +39,7 @@ + * URCU_ARCH_SPARC64 : All Sun SPARC variants + * + * URCU_ARCH_ALPHA : All DEC Alpha variants ++ * URCU_ARCH_SW_64 : All DEC Sw_64 variants + * URCU_ARCH_IA64 : All Intel Itanium variants + * URCU_ARCH_ARM : All ARM 32 bits variants + * URCU_ARCH_ARMV7 : All ARMv7 ISA variants +@@ -101,6 +102,11 @@ + #define URCU_ARCH_ALPHA 1 + #include + ++#elif (defined(__sw_64__) || defined(__sw_64)) ++ ++#define URCU_ARCH_SW_64 1 ++#include ++ + #elif (defined(__ia64__) || defined(__ia64)) + + #define URCU_ARCH_IA64 1 +diff -Naur userspace-rcu-0.13.0.org/include/urcu/uatomic/sw_64.h userspace-rcu-0.13.0.sw/include/urcu/uatomic/sw_64.h +--- userspace-rcu-0.13.0.org/include/urcu/uatomic/sw_64.h 1970-01-01 00:00:00.000000000 +0000 ++++ userspace-rcu-0.13.0.sw/include/urcu/uatomic/sw_64.h 2022-02-26 01:47:48.170000000 +0000 +@@ -0,0 +1,32 @@ ++#ifndef _URCU_UATOMIC_ARCH_SW_64_H ++#define _URCU_UATOMIC_ARCH_SW_64_H ++ ++/* ++ * Atomic exchange operations for the Sw_64 architecture. Let GCC do it. ++ * ++ * Copyright (c) 2010 Paolo Bonzini ++ * ++ * Permission is hereby granted, free of charge, to any person obtaining a copy ++ * of this software and associated documentation files (the "Software"), to ++ * deal in the Software without restriction, including without limitation the ++ * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the Software is ++ * furnished to do so, subject to the following conditions: ++ * ++ * The above copyright notice and this permission notice shall be included in ++ * all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE ++ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ++ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS ++ * IN THE SOFTWARE. ++ */ ++ ++#include ++#include ++#include ++ ++#endif /* _URCU_UATOMIC_ARCH_SW_64_H */ +diff -Naur userspace-rcu-0.13.0.org/include/urcu/uatomic.h userspace-rcu-0.13.0.sw/include/urcu/uatomic.h +--- userspace-rcu-0.13.0.org/include/urcu/uatomic.h 2022-02-26 01:43:47.250000000 +0000 ++++ userspace-rcu-0.13.0.sw/include/urcu/uatomic.h 2022-02-26 01:52:01.610000000 +0000 +@@ -31,6 +31,8 @@ + #include + #elif defined(URCU_ARCH_SPARC64) + #include ++#elif defined(URCU_ARCH_SW_64) ++#include + #elif defined(URCU_ARCH_ALPHA) + #include + #elif defined(URCU_ARCH_IA64) diff --git a/userspace-rcu.spec b/userspace-rcu.spec index cfb4f8d..94c6ab5 100644 --- a/userspace-rcu.spec +++ b/userspace-rcu.spec @@ -1,10 +1,11 @@ Name: userspace-rcu Version: 0.13.0 -Release: 3 +Release: 4 Summary: Userspace read-copy-update library License: LGPLv2+ URL: http://liburcu.org Source0: http://lttng.org/files/urcu/%{name}-%{version}.tar.bz2 +Patch1: userspace-rcu-0.13.0-sw.patch BuildRequires: pkgconfig perl-Test-Harness autoconf automake libtool @@ -65,6 +66,9 @@ make check %changelog +* Thu Apr 11 2022 wuzx - 0.13.0-4 +- add sw64 patch + * Fri Apr 01 2022 zhouwenpei - 0.13.0-3 - delete old so file -- Gitee