From: Saul Wold <sgw@linux.intel.com>
To: Patches and discussions about the oe-core layer
<openembedded-core@lists.openembedded.org>
Cc: martin.jansa@gmail.com, Xin Ouyang <Xin.Ouyang@windriver.com>
Subject: Re: [PATCH] libatomics-ops: update to the latest version 7.2
Date: Fri, 17 Aug 2012 14:01:55 -0700 [thread overview]
Message-ID: <502EB143.7070709@linux.intel.com> (raw)
In-Reply-To: <1344908948-4082-1-git-send-email-Xin.Ouyang@windriver.com>
On 08/13/2012 06:49 PM, Xin Ouyang wrote:
> All old patches are droped because:
>
> Merged into 7.2 by upstream:
> * fedora/libatomic_ops-1.2-ppclwzfix.patch
> * gentoo/libatomic_ops-1.2-mips.patch
> * gentoo/sh4-atomic-ops.patch
> * libatomics-ops_fix_for_x32.patch
>
> Obsolete:
> * doublefix.patch
>
> Signed-off-by: Xin Ouyang <Xin.Ouyang@windriver.com>
> ---
> .../pulseaudio/libatomics-ops/doublefix.patch | 27 ----
> .../fedora/libatomic_ops-1.2-ppclwzfix.patch | 20 ---
> .../gentoo/libatomic_ops-1.2-mips.patch | 129 --------------------
> .../libatomics-ops/gentoo/sh4-atomic-ops.patch | 70 -----------
> .../libatomics-ops_fix_for_x32.patch | 41 -------
> ...libatomics-ops_1.2.bb => libatomics-ops_7.2.bb} | 11 +-
> 6 files changed, 3 insertions(+), 295 deletions(-)
> delete mode 100644 meta/recipes-multimedia/pulseaudio/libatomics-ops/doublefix.patch
> delete mode 100644 meta/recipes-multimedia/pulseaudio/libatomics-ops/fedora/libatomic_ops-1.2-ppclwzfix.patch
> delete mode 100644 meta/recipes-multimedia/pulseaudio/libatomics-ops/gentoo/libatomic_ops-1.2-mips.patch
> delete mode 100644 meta/recipes-multimedia/pulseaudio/libatomics-ops/gentoo/sh4-atomic-ops.patch
> delete mode 100644 meta/recipes-multimedia/pulseaudio/libatomics-ops/libatomics-ops_fix_for_x32.patch
> rename meta/recipes-multimedia/pulseaudio/{libatomics-ops_1.2.bb => libatomics-ops_7.2.bb} (65%)
>
Merged into OE-Core
Thanks
Sau!
> diff --git a/meta/recipes-multimedia/pulseaudio/libatomics-ops/doublefix.patch b/meta/recipes-multimedia/pulseaudio/libatomics-ops/doublefix.patch
> deleted file mode 100644
> index 0d3b718..0000000
> --- a/meta/recipes-multimedia/pulseaudio/libatomics-ops/doublefix.patch
> +++ /dev/null
> @@ -1,27 +0,0 @@
> -Upstream-Status: Inappropriate [configuration]
> -
> -Double path references breaks recent autoconf+automake
> -
> -RP 2/1/10
> -
> -Index: libatomic_ops-1.2/src/atomic_ops/sysdeps/Makefile.am
> -===================================================================
> ---- libatomic_ops-1.2.orig/src/atomic_ops/sysdeps/Makefile.am 2005-09-28 00:53:16.000000000 +0100
> -+++ libatomic_ops-1.2/src/atomic_ops/sysdeps/Makefile.am 2010-02-01 14:28:46.397820574 +0000
> -@@ -25,7 +25,6 @@
> - README \
> - \
> - gcc/alpha.h gcc/arm.h gcc/x86.h \
> -- gcc/hppa.h gcc/ia64.h \
> - gcc/powerpc.h gcc/sparc.h \
> - gcc/hppa.h gcc/m68k.h gcc/s390.h \
> - gcc/ia64.h gcc/x86_64.h gcc/cris.h \
> -Index: libatomic_ops-1.2/doc/Makefile.am
> -===================================================================
> ---- libatomic_ops-1.2.orig/doc/Makefile.am 2010-02-01 15:20:09.207788884 +0000
> -+++ libatomic_ops-1.2/doc/Makefile.am 2010-02-01 15:20:20.909049794 +0000
> -@@ -1,3 +1,3 @@
> - # installed documentation
> - #
> --dist_pkgdata_DATA=COPYING LICENSING.txt README.txt COPYING README_stack.txt README_malloc.txt README_win32.txt
> -+dist_pkgdata_DATA=LICENSING.txt README.txt COPYING README_stack.txt README_malloc.txt README_win32.txt
> diff --git a/meta/recipes-multimedia/pulseaudio/libatomics-ops/fedora/libatomic_ops-1.2-ppclwzfix.patch b/meta/recipes-multimedia/pulseaudio/libatomics-ops/fedora/libatomic_ops-1.2-ppclwzfix.patch
> deleted file mode 100644
> index 315ae91..0000000
> --- a/meta/recipes-multimedia/pulseaudio/libatomics-ops/fedora/libatomic_ops-1.2-ppclwzfix.patch
> +++ /dev/null
> @@ -1,20 +0,0 @@
> -Upstream-Status: Inappropriate [others]
> -
> -The patch is imported from fedora project, and is not appropriate for us
> -to upstream it.
> -
> -http://cvs.fedoraproject.org/viewcvs/devel/libatomic_ops/libatomic_ops-1.2-ppclwzfix.patch
> -
> -* add fix for bad variable handling on PPC
> -
> ---- libatomic_ops-1.2.orig/src/atomic_ops/sysdeps/gcc/powerpc.h 2007-05-29 19:29:52.000000000 +0200
> -+++ libatomic_ops-1.2/src/atomic_ops/sysdeps/gcc/powerpc.h 2007-05-29 19:30:48.000000000 +0200
> -@@ -72,7 +72,7 @@
> - /* registers. I always got "impossible constraint" when I */
> - /* tried the "y" constraint. */
> - __asm__ __volatile__ (
> -- "lwz %0,%1\n"
> -+ "lwz%U1%X1 %0,%1\n"
> - "cmpw cr7,%0,%0\n"
> - "bne- cr7,1f\n"
> - "1: isync\n"
> diff --git a/meta/recipes-multimedia/pulseaudio/libatomics-ops/gentoo/libatomic_ops-1.2-mips.patch b/meta/recipes-multimedia/pulseaudio/libatomics-ops/gentoo/libatomic_ops-1.2-mips.patch
> deleted file mode 100644
> index 971379d..0000000
> --- a/meta/recipes-multimedia/pulseaudio/libatomics-ops/gentoo/libatomic_ops-1.2-mips.patch
> +++ /dev/null
> @@ -1,129 +0,0 @@
> -Upstream-Status: Inappropriate [others]
> -
> -Patch from gentoo which is not appropriate for us to upstream.
> -
> -# Patch copied from the OpenEmbedded libatomics-ops recipe. Original
> -# source was from Gentoo.
> -#
> -# Signed-off-by: Scott Garman <scott.a.garman@intel.com>
> -diff --git a/src/atomic_ops.h b/src/atomic_ops.h
> -index c23f30b..791b360 100755
> ---- a/src/atomic_ops.h
> -+++ b/src/atomic_ops.h
> -@@ -220,6 +220,9 @@
> - # if defined(__cris__) || defined(CRIS)
> - # include "atomic_ops/sysdeps/gcc/cris.h"
> - # endif
> -+# if defined(__mips__)
> -+# include "atomic_ops/sysdeps/gcc/mips.h"
> -+# endif
> - #endif /* __GNUC__ && !AO_USE_PTHREAD_DEFS */
> -
> - #if defined(__INTEL_COMPILER) && !defined(AO_USE_PTHREAD_DEFS)
> -diff --git a/src/atomic_ops/sysdeps/Makefile.am b/src/atomic_ops/sysdeps/Makefile.am
> -index 74122b4..d6737c0 100644
> ---- a/src/atomic_ops/sysdeps/Makefile.am
> -+++ b/src/atomic_ops/sysdeps/Makefile.am
> -@@ -29,6 +29,7 @@ nobase_sysdep_HEADERS= generic_pthread.h \
> - gcc/powerpc.h gcc/sparc.h \
> - gcc/hppa.h gcc/m68k.h gcc/s390.h \
> - gcc/ia64.h gcc/x86_64.h gcc/cris.h \
> -+ gcc/mips.h \
> - \
> - icc/ia64.h \
> - \
> -diff --git a/src/atomic_ops/sysdeps/gcc/mips.h b/src/atomic_ops/sysdeps/gcc/mips.h
> -new file mode 100644
> -index 0000000..e7f3a5d
> ---- /dev/null
> -+++ b/src/atomic_ops/sysdeps/gcc/mips.h
> -@@ -0,0 +1,89 @@
> -+/*
> -+ * Copyright (c) 2005 Thiemo Seufer <ths@networkno.de>
> -+ * Copyright (c) 2007 Zhang Le <r0bertz@gentoo.org>
> -+ *
> -+ * THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
> -+ * OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
> -+ *
> -+ * Permission is hereby granted to use or copy this program
> -+ * for any purpose, provided the above notices are retained on all copies.
> -+ * Permission to modify the code and to distribute modified code is granted,
> -+ * provided the above notices are retained, and a notice that the code was
> -+ * modified is included with the above copyright notice.
> -+ */
> -+
> -+#include "../all_aligned_atomic_load_store.h"
> -+#include "../test_and_set_t_is_ao_t.h"
> -+
> -+/* Data dependence does not imply read ordering. */
> -+#define AO_NO_DD_ORDERING
> -+
> -+AO_INLINE void
> -+AO_nop_full()
> -+{
> -+ __asm__ __volatile__(
> -+ " .set push \n"
> -+ " .set mips3 \n"
> -+ " .set noreorder \n"
> -+ " .set nomacro \n"
> -+ " sync \n"
> -+ " .set pop "
> -+ : : : "memory");
> -+}
> -+
> -+#define AO_HAVE_nop_full
> -+
> -+AO_INLINE int
> -+AO_compare_and_swap(volatile AO_t *addr, AO_t old, AO_t new_val)
> -+{
> -+ register int was_equal = 0;
> -+ register int temp;
> -+
> -+ __asm__ __volatile__(
> -+ " .set push \n"
> -+ " .set mips3 \n"
> -+ " .set noreorder \n"
> -+ " .set nomacro \n"
> -+ "1: ll %0, %1 \n"
> -+ " bne %0, %4, 2f \n"
> -+ " move %0, %3 \n"
> -+ " sc %0, %1 \n"
> -+ " .set pop \n"
> -+ " beqz %0, 1b \n"
> -+ " li %2, 1 \n"
> -+ "2: "
> -+ : "=&r" (temp), "+R" (*addr), "+r" (was_equal)
> -+ : "r" (new_val), "r" (old)
> -+ : "memory");
> -+ return was_equal;
> -+}
> -+
> -+#define AO_HAVE_compare_and_swap
> -+
> -+AO_INLINE AO_t
> -+AO_fetch_and_add_full (volatile AO_t *p, AO_t incr)
> -+{
> -+ AO_t result, temp;
> -+ __asm__ __volatile__(
> -+ " .set push \n"
> -+ " .set mips3 \n"
> -+ " .set noreorder \n"
> -+ " .set nomacro \n"
> -+ "1: ll %1, %2 \n"
> -+ " addu %0, %1, %3 \n"
> -+ " sc %0, %2 \n"
> -+ " beqz %0, 1b \n"
> -+ " addu %0, %1, %3 \n"
> -+ " sync \n"
> -+ " .set pop \n"
> -+ : "=&r" (result), "=&r" (temp), "=m" (*p)
> -+ : "r" (incr), "m" (*p)
> -+ : "memory");
> -+ return result;
> -+}
> -+
> -+#define AO_HAVE_fetch_and_add_full
> -+
> -+/*
> -+ * FIXME: fetch_and_add_full implemented, any others?
> -+ */
> diff --git a/meta/recipes-multimedia/pulseaudio/libatomics-ops/gentoo/sh4-atomic-ops.patch b/meta/recipes-multimedia/pulseaudio/libatomics-ops/gentoo/sh4-atomic-ops.patch
> deleted file mode 100644
> index dfdd29c..0000000
> --- a/meta/recipes-multimedia/pulseaudio/libatomics-ops/gentoo/sh4-atomic-ops.patch
> +++ /dev/null
> @@ -1,70 +0,0 @@
> -This patch is taken from Gentoo
> -http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/libatomic_ops/files/libatomic_ops-1.2-sh4.patch?revision=1.1&view=markup
> -
> -Upstream-Status: Pending
> -Signed-off-by: Khem Raj <raj.khem@gmail.com>
> -
> -Index: libatomic_ops-1.2/src/atomic_ops.h
> -===================================================================
> ---- libatomic_ops-1.2.orig/src/atomic_ops.h 2012-04-30 13:56:17.000000000 -0700
> -+++ libatomic_ops-1.2/src/atomic_ops.h 2012-04-30 13:58:28.747602349 -0700
> -@@ -223,6 +223,10 @@
> - # if defined(__mips__)
> - # include "atomic_ops/sysdeps/gcc/mips.h"
> - # endif
> -+# if defined(__sh__) || defined(SH4)
> -+# include "atomic_ops/sysdeps/gcc/sh.h"
> -+# define AO_CAN_EMUL_CAS
> -+# endif /* __sh__ */
> - #endif /* __GNUC__ && !AO_USE_PTHREAD_DEFS */
> -
> - #if defined(__INTEL_COMPILER) && !defined(AO_USE_PTHREAD_DEFS)
> -Index: libatomic_ops-1.2/src/atomic_ops/sysdeps/Makefile.am
> -===================================================================
> ---- libatomic_ops-1.2.orig/src/atomic_ops/sysdeps/Makefile.am 2012-04-30 10:52:18.000000000 -0700
> -+++ libatomic_ops-1.2/src/atomic_ops/sysdeps/Makefile.am 2012-04-30 14:00:11.511609965 -0700
> -@@ -28,7 +28,7 @@
> - gcc/powerpc.h gcc/sparc.h \
> - gcc/hppa.h gcc/m68k.h gcc/s390.h \
> - gcc/ia64.h gcc/x86_64.h gcc/cris.h \
> -- gcc/mips.h \
> -+ gcc/mips.h gcc/sh.h \
> - \
> - icc/ia64.h \
> - \
> -Index: libatomic_ops-1.2/src/atomic_ops/sysdeps/gcc/sh.h
> -===================================================================
> ---- /dev/null 1970-01-01 00:00:00.000000000 +0000
> -+++ libatomic_ops-1.2/src/atomic_ops/sysdeps/gcc/sh.h 2012-04-30 13:58:28.755602350 -0700
> -@@ -0,0 +1,31 @@
> -+/*
> -+ * Copyright (c) 2009 by Takashi YOSHII. All rights reserved.
> -+ *
> -+ * THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
> -+ * OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
> -+ *
> -+ * Permission is hereby granted to use or copy this program
> -+ * for any purpose, provided the above notices are retained on all copies.
> -+ * Permission to modify the code and to distribute modified code is granted,
> -+ * provided the above notices are retained, and a notice that the code was
> -+ * modified is included with the above copyright notice.
> -+ */
> -+
> -+#include "../all_atomic_load_store.h"
> -+#include "../ordered.h"
> -+
> -+/* sh has tas.b(byte) only */
> -+#include "../test_and_set_t_is_char.h"
> -+
> -+AO_INLINE AO_TS_VAL_t
> -+AO_test_and_set_full(volatile AO_TS_t *addr)
> -+{
> -+ int oldval;
> -+ __asm__ __volatile__(
> -+ "tas.b @%1; movt %0"
> -+ : "=r" (oldval)
> -+ : "r" (addr)
> -+ : "t", "memory");
> -+ return oldval? AO_TS_CLEAR : AO_TS_SET;
> -+}
> -+#define AO_HAVE_test_and_set_full
> diff --git a/meta/recipes-multimedia/pulseaudio/libatomics-ops/libatomics-ops_fix_for_x32.patch b/meta/recipes-multimedia/pulseaudio/libatomics-ops/libatomics-ops_fix_for_x32.patch
> deleted file mode 100644
> index 1768606..0000000
> --- a/meta/recipes-multimedia/pulseaudio/libatomics-ops/libatomics-ops_fix_for_x32.patch
> +++ /dev/null
> @@ -1,41 +0,0 @@
> -Upstream-Status: Pending
> -
> -Remove the `q' suffix on x86-64 atomic instructions.
> -
> -We don't need the `q' suffix on x86_64 atomic instructions for AO_t,
> -which is defined as "unsigned long". "unsigned long" is 32bit for x32
> -and 64bit for x86-64. The register operand in x86-64 atomic instructions
> -is sufficient to properly determine the register size.
> -
> -Received this patch from H.J. Lu <hjl.tools@gmail.com>
> -Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com> 2011/12/02
> -
> ---- libatomic_ops-1.2/src/atomic_ops/sysdeps/gcc/x86_64.h.x32 2005-09-28 17:16:38.000000000 -0700
> -+++ libatomic_ops-1.2/src/atomic_ops/sysdeps/gcc/x86_64.h 2011-12-02 09:29:54.265251875 -0800
> -@@ -60,7 +60,7 @@ AO_fetch_and_add_full (volatile AO_t *p,
> - {
> - AO_t result;
> -
> -- __asm__ __volatile__ ("lock; xaddq %0, %1" :
> -+ __asm__ __volatile__ ("lock; xadd %0, %1" :
> - "=r" (result), "=m" (*p) : "0" (incr), "m" (*p)
> - : "memory");
> - return result;
> -@@ -111,7 +111,7 @@ AO_int_fetch_and_add_full (volatile unsi
> - AO_INLINE void
> - AO_or_full (volatile AO_t *p, AO_t incr)
> - {
> -- __asm__ __volatile__ ("lock; orq %1, %0" :
> -+ __asm__ __volatile__ ("lock; or %1, %0" :
> - "=m" (*p) : "r" (incr), "m" (*p) : "memory");
> - }
> -
> -@@ -136,7 +136,7 @@ AO_compare_and_swap_full(volatile AO_t *
> - AO_t old, AO_t new_val)
> - {
> - char result;
> -- __asm__ __volatile__("lock; cmpxchgq %3, %0; setz %1"
> -+ __asm__ __volatile__("lock; cmpxchg %3, %0; setz %1"
> - : "=m"(*addr), "=q"(result)
> - : "m"(*addr), "r" (new_val), "a"(old) : "memory");
> - return (int) result;
> diff --git a/meta/recipes-multimedia/pulseaudio/libatomics-ops_1.2.bb b/meta/recipes-multimedia/pulseaudio/libatomics-ops_7.2.bb
> similarity index 65%
> rename from meta/recipes-multimedia/pulseaudio/libatomics-ops_1.2.bb
> rename to meta/recipes-multimedia/pulseaudio/libatomics-ops_7.2.bb
> index eba43cd..3706656 100644
> --- a/meta/recipes-multimedia/pulseaudio/libatomics-ops_1.2.bb
> +++ b/meta/recipes-multimedia/pulseaudio/libatomics-ops_7.2.bb
> @@ -6,18 +6,13 @@ LICENSE = "GPLv2 & MIT"
> LIC_FILES_CHKSUM = "file://doc/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
> file://doc/LICENSING.txt;md5=607073e04548eac7d1f763e480477bab \
> "
> -PR = "r10"
> +PR = "r0"
>
> SRC_URI = "http://www.hpl.hp.com/research/linux/atomic_ops/download/libatomic_ops-${PV}.tar.gz \
> - file://fedora/libatomic_ops-1.2-ppclwzfix.patch \
> - file://gentoo/libatomic_ops-1.2-mips.patch \
> - file://doublefix.patch \
> - file://libatomics-ops_fix_for_x32.patch \
> - file://gentoo/sh4-atomic-ops.patch \
> "
>
> -SRC_URI[md5sum] = "1b65e48271c81e3fa2d7a9a69bab7504"
> -SRC_URI[sha256sum] = "a3d8768aa8fd2f6ae79be2d756b3a6b48816b3889ae906be3d5ffb2de5a5c781"
> +SRC_URI[md5sum] = "890acdc83a7cd10e2e9536062d3741c8"
> +SRC_URI[sha256sum] = "c4ee6e0c304c6f13bcc32968453cdb54b2ec233d8bf4cfcf266ee09dc33b4eb5"
>
> S = "${WORKDIR}/libatomic_ops-${PV}"
>
>
prev parent reply other threads:[~2012-08-17 21:13 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-11 8:05 [PATCH] libatomics-ops: update to the latest version 7.2 xin.ouyang
2012-08-11 8:11 ` Martin Jansa
2012-08-14 1:49 ` Xin Ouyang
2012-08-17 21:01 ` Saul Wold [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=502EB143.7070709@linux.intel.com \
--to=sgw@linux.intel.com \
--cc=Xin.Ouyang@windriver.com \
--cc=martin.jansa@gmail.com \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.