commit qemu for openSUSE:12.2:Update
Hello community, here is the log from the commit of package qemu for openSUSE:12.2:Update checked in at 2013-07-15 16:14:14 Comparing /work/SRC/openSUSE:12.2:Update/qemu (Old) and /work/SRC/openSUSE:12.2:Update/.qemu.new (New) Package is qemu Changes: New Changes file: NO CHANGES FILE!!! Other differences: -- ++ _link ++ --- /var/tmp/diff_new_pack.kty48R/_old 2013-07-15 16:14:16.0 +0200 +++ /var/tmp/diff_new_pack.kty48R/_new 2013-07-15 16:14:16.0 +0200 @@ -1 +1 @@ -link package='qemu.857' cicount='copy' / +link package='qemu.1848' cicount='copy' / -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org
commit qemu for openSUSE:12.2:Update
Hello community, here is the log from the commit of package qemu for openSUSE:12.2:Update checked in at 2012-09-14 13:31:38 Comparing /work/SRC/openSUSE:12.2:Update/qemu (Old) and /work/SRC/openSUSE:12.2:Update/.qemu.new (New) Package is qemu, Maintainer is afaer...@suse.com Changes: New Changes file: NO CHANGES FILE!!! Other differences: -- ++ _link ++ --- /var/tmp/diff_new_pack.kUWdJr/_old 2012-09-14 13:31:39.0 +0200 +++ /var/tmp/diff_new_pack.kUWdJr/_new 2012-09-14 13:31:39.0 +0200 @@ -1 +1 @@ -link package='qemu.679' cicount='copy' / +link package='qemu.857' cicount='copy' / -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org
commit qemu for openSUSE:12.2
Hello community, here is the log from the commit of package qemu for openSUSE:12.2 checked in at 2012-07-31 14:05:09 Comparing /work/SRC/openSUSE:12.2/qemu (Old) and /work/SRC/openSUSE:12.2/.qemu.new (New) Package is qemu, Maintainer is brog...@suse.com Changes: --- /work/SRC/openSUSE:12.2/qemu/qemu.changes 2012-06-29 11:34:44.0 +0200 +++ /work/SRC/openSUSE:12.2/.qemu.new/qemu.changes 2012-07-31 14:17:49.0 +0200 @@ -1,0 +2,25 @@ +Wed Jul 11 21:16:34 UTC 2012 - ag...@suse.com + +- fix segfault even better + +--- +Wed Jul 11 14:52:02 UTC 2012 - ag...@suse.com + +- linux-user: improve locking even across tb flushes + +--- +Tue Jul 10 18:43:31 UTC 2012 - ag...@suse.com + +- linux-user: pin multi-threaded applications to a single host cpu + +--- +Tue Jul 10 16:42:54 UTC 2012 - ag...@suse.com + +- linux-user: improve lock + +--- +Thu Jul 5 15:37:05 UTC 2012 - ag...@suse.com + +- linux-user: add tcg lock for multi-threaded guest programs + +--- New: 0025-linux-user-lock-tcg.patch.patch 0026-linux-user-Run-multi-threaded-code-.patch 0027-linux-user-lock-tb-flushing-too.pat.patch 0028-XXX-merge-with-segmentation-fault-p.patch Other differences: -- ++ qemu.spec ++ --- /var/tmp/diff_new_pack.868fQv/_old 2012-07-31 14:18:14.0 +0200 +++ /var/tmp/diff_new_pack.868fQv/_new 2012-07-31 14:18:14.0 +0200 @@ -48,6 +48,10 @@ Patch0022: 0022-use-libexecdir-instead-of-ignoring-.patch Patch0023: 0023-linux-user-Ignore-broken-loop-ioctl.patch Patch0024: 0024-linux-user-fix-segmentation-fault-p.patch +Patch0025: 0025-linux-user-lock-tcg.patch.patch +Patch0026: 0026-linux-user-Run-multi-threaded-code-.patch +Patch0027: 0027-linux-user-lock-tb-flushing-too.pat.patch +Patch0028: 0028-XXX-merge-with-segmentation-fault-p.patch # this is to make lint happy Source300: rpmlintrc Source302: bridge.conf @@ -179,6 +183,10 @@ %patch0022 -p1 %patch0023 -p1 %patch0024 -p1 +%patch0025 -p1 +%patch0026 -p1 +%patch0027 -p1 +%patch0028 -p1 %build # build QEMU ++ 0025-linux-user-lock-tcg.patch.patch ++ From 9a66bfa1a21b7429229be3d52b1d6ea08b141d36 Mon Sep 17 00:00:00 2001 From: Alexander Graf ag...@suse.de Date: Thu, 5 Jul 2012 17:31:39 +0200 Subject: [PATCH] linux-user: lock tcg The tcg code generator is not thread safe. Lock its generation between different threads. Signed-off-by: Alexander Graf ag...@suse.de --- linux-user/mmap.c |3 +++ tcg/tcg.c | 36 ++-- tcg/tcg.h |6 ++ 3 files changed, 43 insertions(+), 2 deletions(-) diff --git a/linux-user/mmap.c b/linux-user/mmap.c index 3f5e1d7..83e9eda 100644 --- a/linux-user/mmap.c +++ b/linux-user/mmap.c @@ -30,6 +30,7 @@ #include qemu.h #include qemu-common.h +#include tcg.h //#define DEBUG_MMAP @@ -41,6 +42,7 @@ void mmap_lock(void) { if (mmap_lock_count++ == 0) { pthread_mutex_lock(mmap_mutex); +tcg_lock(); } } @@ -48,6 +50,7 @@ void mmap_unlock(void) { if (--mmap_lock_count == 0) { pthread_mutex_unlock(mmap_mutex); +tcg_unlock(); } } diff --git a/tcg/tcg.c b/tcg/tcg.c index ab589c7..4c93acb 100644 --- a/tcg/tcg.c +++ b/tcg/tcg.c @@ -40,6 +40,8 @@ #include cache-utils.h #include host-utils.h #include qemu-timer.h +#include config-host.h +#include qemu-thread.h /* Note: the long term plan is to reduce the dependancies on the QEMU CPU definitions. Currently they are used for qemu_ld/st @@ -105,6 +107,29 @@ static TCGRegSet tcg_target_call_clobber_regs; uint16_t *gen_opc_ptr; TCGArg *gen_opparam_ptr; +#ifdef CONFIG_USER_ONLY +static __thread int tcg_lock_count; +#endif +void tcg_lock(void) +{ +#ifdef CONFIG_USER_ONLY +TCGContext *s = tcg_ctx; +if (tcg_lock_count++ == 0) { +qemu_mutex_lock(s-lock); +} +#endif +} + +void tcg_unlock(void) +{ +#ifdef CONFIG_USER_ONLY +TCGContext *s = tcg_ctx; +if (--tcg_lock_count == 0) { +qemu_mutex_unlock(s-lock); +} +#endif +} + static inline void tcg_out8(TCGContext *s, uint8_t v) { *s-code_ptr++ = v; @@ -245,7 +270,8 @@ void tcg_context_init(TCGContext *s) memset(s, 0, sizeof(*s)); s-temps = s-static_temps; s-nb_globals = 0; - +qemu_mutex_init(s-lock); + /* Count total number of arguments and allocate the corresponding space */
commit qemu for openSUSE:12.2
Hello community, here is the log from the commit of package qemu for openSUSE:12.2 checked in at 2012-06-29 11:34:43 Comparing /work/SRC/openSUSE:12.2/qemu (Old) and /work/SRC/openSUSE:12.2/.qemu.new (New) Package is qemu, Maintainer is brog...@suse.com Changes: --- /work/SRC/openSUSE:12.2/qemu/qemu.changes 2012-06-25 15:51:38.0 +0200 +++ /work/SRC/openSUSE:12.2/.qemu.new/qemu.changes 2012-06-29 11:34:44.0 +0200 @@ -1,0 +2,30 @@ +Wed Jun 25 19:29:05 UTC 2012 - afaer...@suse.de + +- include qemu-img and qemu-nbd in qemu-tools package + +--- +Wed Jun 25 18:30:54 UTC 2012 - afaer...@suse.de + +- add qemu-guest-agent package + +--- +Mon Jun 25 17:40:36 UTC 2012 - ag...@suse.com + +- add fix for segv in linux-user (fixes java) + +--- +Tue Jun 19 16:06:52 UTC 2012 - afaer...@suse.de + +- revert LIBRARY_PATH patch by Alex + +--- +Mon Jun 18 12:27:56 UTC 2012 - afaer...@suse.de + +- add patch by Alex to force gcc being emulated for LIBRARY_PATH + +--- +Mon Jun 18 09:06:41 UTC 2012 - dval...@suse.com + +- add libfdt1 to buildrequires on ppc + +--- New: 0024-linux-user-fix-segmentation-fault-p.patch Other differences: -- ++ qemu.spec ++ --- /var/tmp/diff_new_pack.pr9ODc/_old 2012-06-29 11:34:45.0 +0200 +++ /var/tmp/diff_new_pack.pr9ODc/_new 2012-06-29 11:34:45.0 +0200 @@ -47,6 +47,7 @@ Patch0021: 0021-linux-user-fix-multi-threaded-proc-.patch Patch0022: 0022-use-libexecdir-instead-of-ignoring-.patch Patch0023: 0023-linux-user-Ignore-broken-loop-ioctl.patch +Patch0024: 0024-linux-user-fix-segmentation-fault-p.patch # this is to make lint happy Source300: rpmlintrc Source302: bridge.conf @@ -86,6 +87,10 @@ BuildRequires: spice-protocol-devel %endif %endif +%ifarch ppc ppc64 +#we need that for -M pseries support in SLES +BuildRequires: libfdt1-devel +%endif BuildRequires: fdupes BuildRequires: glib2-devel BuildRequires: libvdeplug3-devel @@ -93,9 +98,8 @@ BuildRequires: python Requires: /usr/sbin/groupadd Requires: pwdutils -Requires: qemu-tools Requires: timezone -Requires: virt-utils +Recommends: qemu-tools %description QEMU is an extremely well-performing CPU emulator that allows you to @@ -119,6 +123,20 @@ This sub-package contains various tools, including a bridge helper. +%package guest-agent +Summary:Universal CPU emulator -- Guest agent +Group: System/Emulators/PC +Provides: qemu:%_bindir/qemu-ga + +%description guest-agent +QEMU is an extremely well-performing CPU emulator that allows you to +choose between simulating an entire system and running userspace +binaries for different architectures under your native operating +system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well +as PC and PowerMac systems. + +This sub-package contains the guest agent. + %package linux-user Summary:Universal CPU emulator -- Linux User binaries Group: System/Emulators/PC @@ -160,6 +178,7 @@ %patch0021 -p1 %patch0022 -p1 %patch0023 -p1 +%patch0024 -p1 %build # build QEMU @@ -181,7 +200,10 @@ --disable-spice %endif make %{?jobs:-j%jobs} V=1 -mv *-softmmu/qemu-system-* qemu-io qemu-bridge-helper dynamic || true +mv *-softmmu/qemu-system-* dynamic +mv qemu-io qemu-img qemu-nbd qemu-bridge-helper dynamic +mv qemu-img.1 qemu-nbd.8 dynamic +mv qemu-ga dynamic make clean # build userland emus ./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \ @@ -198,15 +220,20 @@ %install make install DESTDIR=$RPM_BUILD_ROOT -rm -f $RPM_BUILD_ROOT/%_mandir/man1/qemu-img.1 -rm -f $RPM_BUILD_ROOT/%_mandir/man8/qemu-nbd.8 rm -fr $RPM_BUILD_ROOT/%_datadir/doc install -m 755 dynamic/qemu-system-* $RPM_BUILD_ROOT/%_bindir install -m 755 dynamic/qemu-io $RPM_BUILD_ROOT/%_bindir +install -m 755 dynamic/qemu-img $RPM_BUILD_ROOT/%_bindir +install -m 755 dynamic/qemu-nbd $RPM_BUILD_ROOT/%_bindir +install -m 755 dynamic/qemu-ga $RPM_BUILD_ROOT/%_bindir install -d -m 755 $RPM_BUILD_ROOT/%_sbindir install -m 755 scripts/qemu-binfmt-conf.sh $RPM_BUILD_ROOT/%_sbindir install -d -m 755 $RPM_BUILD_ROOT/%_libexecdir install -m 755 dynamic/qemu-bridge-helper $RPM_BUILD_ROOT/%_libexecdir +install -d -m 755 $RPM_BUILD_ROOT/%_mandir/man1 +install -m 644 dynamic/qemu-img.1 $RPM_BUILD_ROOT/%_mandir/man1