SHA256
1
0
forked from pool/qemu

- cut off patch file names after 40 bytes, support older git versions

for update_git.sh

OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=62
This commit is contained in:
Alexander Graf 2012-03-07 15:17:02 +00:00 committed by Git OBS Bridge
parent e12bfcae70
commit 3d5fb0946f
50 changed files with 66 additions and 87 deletions

View File

@ -1,8 +1,7 @@
From 4c1134246f3bd0af9b9b512a2094010ed12e7895 Mon Sep 17 00:00:00 2001 From 4c1134246f3bd0af9b9b512a2094010ed12e7895 Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de> From: Alexander Graf <agraf@suse.de>
Date: Mon, 5 Dec 2011 23:37:52 +0100 Date: Mon, 5 Dec 2011 23:37:52 +0100
Subject: [PATCH] XXX move qemu binary lower in address space so we have space Subject: [PATCH] XXX move qemu binary lower in address space so we have space for guest stuff
for guest stuff
--- ---
x86_64.ld | 2 +- x86_64.ld | 2 +-

View File

@ -1,8 +1,7 @@
From 9a72708a58d7bcbc1ba036a44cea920a238b0312 Mon Sep 17 00:00:00 2001 From 9a72708a58d7bcbc1ba036a44cea920a238b0312 Mon Sep 17 00:00:00 2001
From: Fabio Erculiani <lxnay@sabayon.org> From: Fabio Erculiani <lxnay@sabayon.org>
Date: Tue, 3 Jan 2012 09:38:34 +0000 Date: Tue, 3 Jan 2012 09:38:34 +0000
Subject: [PATCH] linux-user: improve fake /proc/self/stat making `ps` not Subject: [PATCH] linux-user: improve fake /proc/self/stat making `ps` not segfault.
segfault.
With the current fake /proc/self/stat implementation `ps` is With the current fake /proc/self/stat implementation `ps` is
segfaulting because it expects to read PID and argv[0] as first and segfaulting because it expects to read PID and argv[0] as first and

View File

@ -1,8 +1,7 @@
From e8171f6d129e129fe632721ab603f800385b0609 Mon Sep 17 00:00:00 2001 From e8171f6d129e129fe632721ab603f800385b0609 Mon Sep 17 00:00:00 2001
From: Fabio Erculiani <lxnay@sabayon.org> From: Fabio Erculiani <lxnay@sabayon.org>
Date: Tue, 3 Jan 2012 09:38:35 +0000 Date: Tue, 3 Jan 2012 09:38:35 +0000
Subject: [PATCH] linux-user: target_argv is placed on ts->bprm->argv and Subject: [PATCH] linux-user: target_argv is placed on ts->bprm->argv and can't be freed()
can't be freed()
TaskState contains linux_bprm struct which encapsulates argv among TaskState contains linux_bprm struct which encapsulates argv among
other things. other things.

View File

@ -1,30 +0,0 @@
From f0fd80de8f15efc091751f2e9bf4c2276ba058b3 Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Tue, 10 Jan 2012 16:25:27 +0100
Subject: [PATCH] PPC: KVM: Ignore SET_ONE_REG failures
The SET_ONE_REG interface didn't make it upstream in the form that is used
in qemu-1.0, so the code won't work. Make the error a warning, so we can
at least use the HV target.
Signed-off-by: Alexander Graf <agraf@suse.de>
---
target-ppc/kvm.c | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/target-ppc/kvm.c b/target-ppc/kvm.c
index 0410901..6c6278a 100644
--- a/target-ppc/kvm.c
+++ b/target-ppc/kvm.c
@@ -759,7 +759,10 @@ void kvmppc_set_papr(CPUState *env)
reg.u.reg64 = env->spr[SPR_HIOR];
ret = kvm_vcpu_ioctl(env, KVM_SET_ONE_REG, &reg);
if (ret) {
- goto fail;
+ fprintf(stderr, "Couldn't set HIOR. Maybe you're running an old \n"
+ "kernel with support for HV KVM but no PAPR PR \n"
+ "KVM in which case things will work. If they don't \n"
+ "please update your host kernel!\n");
}
/* Set SDR1 so kernel space finds the HTAB */

View File

@ -1,8 +1,7 @@
From 351142c287c874f959828c6360cda977306dfa47 Mon Sep 17 00:00:00 2001 From 351142c287c874f959828c6360cda977306dfa47 Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de> From: Alexander Graf <agraf@suse.de>
Date: Tue, 10 Jan 2012 17:03:02 +0100 Date: Tue, 10 Jan 2012 17:03:02 +0100
Subject: [PATCH] PPC: KVM: Ignore ENABLE_PAPR to support very old HV KVM Subject: [PATCH] PPC: KVM: Ignore ENABLE_PAPR to support very old HV KVM kernels
kernels
Very old kernels (3.1) didn't expose the PAPR capability yet, but still Very old kernels (3.1) didn't expose the PAPR capability yet, but still
did work with HV KVM. Make the error a warning so we can work on them. did work with HV KVM. Make the error a warning so we can work on them.

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Wed Mar 7 15:16:16 UTC 2012 - agraf@suse.com
- cut off patch file names after 40 bytes, support older git versions
for update_git.sh
------------------------------------------------------------------- -------------------------------------------------------------------
Mon Mar 5 01:31:42 UTC 2012 - agraf@suse.com Mon Mar 5 01:31:42 UTC 2012 - agraf@suse.com

View File

@ -25,53 +25,52 @@ Group: System/Emulators/PC
Version: 1.0.1 Version: 1.0.1
Release: 0 Release: 0
Source: %name-%version.tar.bz2 Source: %name-%version.tar.bz2
Patch0001: 0001-Handle-CPU-interrupts-by-inline-checking-of-a-flag.patch Patch0001: 0001-Handle-CPU-interrupts-by-inline-che.patch
Patch0002: 0002-linux-user-fix-QEMU_STRACE-1-segfault.patch Patch0002: 0002-linux-user-fix-QEMU_STRACE-1-segfau.patch
Patch0003: 0003-linux-user-save-auxv-length.patch Patch0003: 0003-linux-user-save-auxv-length.patch.patch
Patch0004: 0004-linux-user-add-open-hijack-infrastructure.patch Patch0004: 0004-linux-user-add-open-hijack-infrastr.patch
Patch0005: 0005-linux-user-fake-proc-self-maps.patch Patch0005: 0005-linux-user-fake-proc-self-maps.patc.patch
Patch0006: 0006-linux-user-fake-proc-self-stat.patch Patch0006: 0006-linux-user-fake-proc-self-stat.patc.patch
Patch0007: 0007-linux-user-fake-proc-self-auxv.patch Patch0007: 0007-linux-user-fake-proc-self-auxv.patc.patch
Patch0008: 0008-XXX-dont-dump-core-on-sigabort.patch Patch0008: 0008-XXX-dont-dump-core-on-sigabort.patc.patch
Patch0009: 0009-linux-user-fix-wait-syscall-status-returns.patch Patch0009: 0009-linux-user-fix-wait-syscall-status-.patch
Patch0010: 0010-Revert-linux-user-fix-wait-syscall-status-returns.patch Patch0010: 0010-Revert-linux-user-fix-wait-syscall-.patch
Patch0011: 0011-linux-user-fix-wait-syscall-status-returns.patch Patch0011: 0011-linux-user-fix-wait-syscall-status-.patch
Patch0012: 0012-XXX-linux-user-fake-proc-self-maps-even-more.patch Patch0012: 0012-XXX-linux-user-fake-proc-self-maps-.patch
Patch0013: 0013-XXX-work-around-SA_RESTART-race-with-boehm-gc-ARM-on.patch Patch0013: 0013-XXX-work-around-SA_RESTART-race-wit.patch
Patch0014: 0014-XXX-move-qemu-binary-lower-in-address-space-so-we-ha.patch Patch0014: 0014-XXX-move-qemu-binary-lower-in-addre.patch
Patch0015: 0015-linux-user-map-lower-in-address-space.patch Patch0015: 0015-linux-user-map-lower-in-address-spa.patch
Patch0016: 0016-XXX-fake-proc-self-maps-also-fclose-real-file.patch Patch0016: 0016-XXX-fake-proc-self-maps-also-fclose.patch
Patch0017: 0017-XXX-map-qemu-higher-again-so-we-have-space-for-brk.patch Patch0017: 0017-XXX-map-qemu-higher-again-so-we-hav.patch
Patch0018: 0018-qemu-0.9.0.cvs-binfmt.patch Patch0018: 0018-qemu-0.9.0.cvs-binfmt.patch.patch
Patch0019: 0019-qemu-cvs-alsa_bitfield.patch Patch0019: 0019-qemu-cvs-alsa_bitfield.patch.patch
Patch0020: 0020-qemu-cvs-alsa_ioctl.patch Patch0020: 0020-qemu-cvs-alsa_ioctl.patch.patch
Patch0021: 0021-qemu-cvs-alsa_mmap.patch Patch0021: 0021-qemu-cvs-alsa_mmap.patch.patch
Patch0022: 0022-qemu-cvs-gettimeofday.patch Patch0022: 0022-qemu-cvs-gettimeofday.patch.patch
Patch0023: 0023-qemu-cvs-ioctl_debug.patch Patch0023: 0023-qemu-cvs-ioctl_debug.patch.patch
Patch0024: 0024-qemu-cvs-ioctl_nodirection.patch Patch0024: 0024-qemu-cvs-ioctl_nodirection.patch.patch
Patch0025: 0025-qemu-img-vmdk-scsi.patch Patch0025: 0025-qemu-img-vmdk-scsi.patch.patch
Patch0026: 0026-qemu-nonvoid_return.patch Patch0026: 0026-qemu-nonvoid_return.patch.patch
Patch0027: 0027-fix-mipsn32-linux-user-builds.patch Patch0027: 0027-fix-mipsn32-linux-user-builds.patch.patch
Patch0028: 0028-Integrating-Dynamips-and-GNS3-UDP-tunnels-Patches.patch Patch0028: 0028-Integrating-Dynamips-and-GNS3-UDP-t.patch
Patch0029: 0029-linux-user-add-binfmt-wrapper-for-argv-0-handling.patch Patch0029: 0029-linux-user-add-binfmt-wrapper-for-a.patch
Patch0030: 0030-linux-user-Ignore-timer_create-syscall.patch Patch0030: 0030-linux-user-Ignore-timer_create-sysc.patch
Patch0031: 0031-linux-user-be-silent-about-capget-failures.patch Patch0031: 0031-linux-user-be-silent-about-capget-f.patch
Patch0032: 0032-linux-user-reserve-4GB-of-vmem-for-32-on-64.patch Patch0032: 0032-linux-user-reserve-4GB-of-vmem-for-.patch
Patch0033: 0033-PPC-KVM-Disable-mmu-notifier-check.patch Patch0033: 0033-PPC-KVM-Disable-mmu-notifier-check..patch
Patch0034: 0034-linux-user-improve-fake-proc-self-stat-making-ps-not.patch Patch0034: 0034-linux-user-improve-fake-proc-self-s.patch
Patch0035: 0035-linux-user-target_argv-is-placed-on-ts-bprm-argv-and.patch Patch0035: 0035-linux-user-target_argv-is-placed-on.patch
Patch0036: 0036-PPC-KVM-Ignore-SET_ONE_REG-failures.patch Patch0037: 0037-PPC-KVM-Ignore-ENABLE_PAPR-to-suppo.patch
Patch0037: 0037-PPC-KVM-Ignore-ENABLE_PAPR-to-support-very-old-HV-KV.patch Patch0038: 0038-linux-user-fix-segfault-deadlock.pa.patch
Patch0038: 0038-linux-user-fix-segfault-deadlock.patch Patch0039: 0039-linux-user-implement-device-mapper-.patch
Patch0039: 0039-linux-user-implement-device-mapper-ioctls.patch Patch0040: 0040-linux-user-add-struct-old_dev_t-com.patch
Patch0040: 0040-linux-user-add-struct-old_dev_t-compat.patch Patch0041: 0041-linux-user-fix-BLK-ioctl-arguments..patch
Patch0041: 0041-linux-user-fix-BLK-ioctl-arguments.patch Patch0042: 0042-linux-user-add-BLKSSZGET-ioctl-wrap.patch
Patch0042: 0042-linux-user-add-BLKSSZGET-ioctl-wrapper.patch Patch0043: 0043-linux-user-Add-ioctl-for-BLKBSZGET..patch
Patch0043: 0043-linux-user-Add-ioctl-for-BLKBSZGET.patch Patch0044: 0044-linux-user-take-RESERVED_VA-into-ac.patch
Patch0044: 0044-linux-user-take-RESERVED_VA-into-account-for-g2h_val.patch Patch0045: 0045-linux-user-binfmt-support-host-bina.patch
Patch0045: 0045-linux-user-binfmt-support-host-binaries.patch Patch0046: 0046-linux-user-fix-fallocate.patch.patch
Patch0046: 0046-linux-user-fix-fallocate.patch Patch0047: 0047-linux-user-resolve-reserved_va-vma-.patch
Patch0047: 0047-linux-user-resolve-reserved_va-vma-downwards.patch
# this is to make lint happy # this is to make lint happy
Source300: rpmlintrc Source300: rpmlintrc
Source400: update_git.sh Source400: update_git.sh
@ -174,7 +173,6 @@ run cross architectures builds
%patch0033 -p1 %patch0033 -p1
%patch0034 -p1 %patch0034 -p1
%patch0035 -p1 %patch0035 -p1
%patch0036 -p1
%patch0037 -p1 %patch0037 -p1
%patch0038 -p1 %patch0038 -p1
%patch0039 -p1 %patch0039 -p1

View File

@ -33,10 +33,19 @@ else
git remote update git remote update
fi fi
git checkout $GIT_BRANCH git checkout $GIT_BRANCH
git format-patch -N --no-signature $GIT_UPSTREAM_TAG -o .. git format-patch -N $GIT_UPSTREAM_TAG -o ..
cd .. cd ..
rm -rf qemu-tmp rm -rf qemu-tmp
# cut off file name after 40 bytes, so we work around git version differences
# while at it, also remove the signature
for i in 0*; do
PATCHNAME=${i%.patch}
PATCHNAME=${i:0:40}.patch
head -n $(expr $(wc -l $i | cut -d ' ' -f 1) - 3) $i > "$PATCHNAME"
rm "$i"
done
# we have all patches as files now - generate the spec file! # we have all patches as files now - generate the spec file!
while IFS= read -r line; do while IFS= read -r line; do
if [ "$line" = "PATCH_FILES" ]; then if [ "$line" = "PATCH_FILES" ]; then