Updated to new 0.9.1 release; Don't mark init script as a config file; Fix
license tag syntax
This commit is contained in:
parent
f4a1bb22a5
commit
e62519fa37
|
@ -1 +1,3 @@
|
|||
qemu-0.9.0.tar.gz
|
||||
.build*.log
|
||||
*.src.rpm
|
||||
qemu-0.9.1.tar.gz
|
||||
|
|
|
@ -1,15 +0,0 @@
|
|||
--- qemu-0.8.0/ppc.ld~ 2005-12-19 22:51:53.000000000 +0000
|
||||
+++ qemu-0.8.0/ppc.ld 2006-03-21 16:46:58.000000000 +0000
|
||||
@@ -90,7 +90,11 @@ SECTIONS
|
||||
/* We want the small data sections together, so single-instruction offsets
|
||||
can access them all, and initialized data all before uninitialized, so
|
||||
we can shorten the on-disk segment size. */
|
||||
- .sdata : { *(.sdata) }
|
||||
+ .sdata :
|
||||
+ {
|
||||
+ PROVIDE (_SDA_BASE_ = 32768);
|
||||
+ *(.sdata .sdata.* .gnu.linkonce.s.*)
|
||||
+ }
|
||||
_edata = .;
|
||||
PROVIDE (edata = .);
|
||||
__bss_start = .;
|
|
@ -1,52 +0,0 @@
|
|||
From: Brandon Philips <brandon@ifup.org>
|
||||
Newsgroups: gmane.comp.emulators.qemu
|
||||
Subject: [PATCH][RFC] Fix bugs in the ATAPI cdrom driver
|
||||
Date: Fri, 17 Aug 2007 16:43:04 -0700
|
||||
Message-ID: <20070817234304.GB10490@ifup.org>
|
||||
Reply-To: qemu-devel@nongnu.org
|
||||
|
||||
The new libata-eh in the Linux kernel is throwing a fit over the QEMU
|
||||
cdrom device for two reasons:
|
||||
|
||||
1) DRQ can be set with ERR_STAT set. This is a violation of the ATAPI
|
||||
state machine.
|
||||
|
||||
2) After a TEST_UNIT_READY ATAPI command is sent ERR_STAT is getting set
|
||||
which is correct. But, when the OS issues another ATAPI command
|
||||
ERR_STAT is still set. Which is bad since the next expected command
|
||||
from the OS is REQUEST_SENSE to find out why ERR_STAT is set.
|
||||
|
||||
bug this fixes: https://bugzilla.novell.com/show_bug.cgi?id=291775
|
||||
|
||||
Signed-off-by: Brandon Philips <bphilips@suse.de>
|
||||
|
||||
---
|
||||
hw/ide.c | 7 +++++--
|
||||
1 file changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
Index: qemu-0.9.0/hw/ide.c
|
||||
===================================================================
|
||||
--- qemu-0.9.0.orig/hw/ide.c
|
||||
+++ qemu-0.9.0/hw/ide.c
|
||||
@@ -586,7 +586,9 @@ static void ide_transfer_start(IDEState
|
||||
s->end_transfer_func = end_transfer_func;
|
||||
s->data_ptr = buf;
|
||||
s->data_end = buf + size;
|
||||
- s->status |= DRQ_STAT;
|
||||
+ /* don't violate the HSM */
|
||||
+ if (!(s->status & ERR_STAT))
|
||||
+ s->status |= DRQ_STAT;
|
||||
}
|
||||
|
||||
static void ide_transfer_stop(IDEState *s)
|
||||
@@ -1805,6 +1807,7 @@ static void ide_ioport_write(void *opaqu
|
||||
/* overlapping commands not supported */
|
||||
if (s->feature & 0x02)
|
||||
goto abort_cmd;
|
||||
+ s->status = READY_STAT;
|
||||
s->atapi_dma = s->feature & 1;
|
||||
s->nsector = 1;
|
||||
ide_transfer_start(s, s->io_buffer, ATAPI_PACKET_SIZE,
|
||||
|
||||
|
||||
|
|
@ -1,63 +0,0 @@
|
|||
--- hw/pc.c.orig 2007-02-06 07:01:54.000000000 +0800
|
||||
+++ hw/pc.c 2007-04-01 22:19:50.000000000 +0800
|
||||
@@ -32,9 +32,11 @@
|
||||
#define LINUX_BOOT_FILENAME "linux_boot.bin"
|
||||
|
||||
#define KERNEL_LOAD_ADDR 0x00100000
|
||||
-#define INITRD_LOAD_ADDR 0x00600000
|
||||
+#define MAX_INITRD_LOAD_ADDR 0x38000000
|
||||
#define KERNEL_PARAMS_ADDR 0x00090000
|
||||
#define KERNEL_CMDLINE_ADDR 0x00099000
|
||||
+/* Leave a chunk of memory at the top of RAM for the BIOS ACPI tables. */
|
||||
+#define ACPI_DATA_SIZE 0x10000
|
||||
|
||||
static fdctrl_t *floppy_controller;
|
||||
static RTCState *rtc_state;
|
||||
@@ -451,7 +453,7 @@
|
||||
{
|
||||
char buf[1024];
|
||||
int ret, linux_boot, initrd_size, i;
|
||||
- unsigned long bios_offset, vga_bios_offset, option_rom_offset;
|
||||
+ unsigned long bios_offset, vga_bios_offset, option_rom_offset, initrd_offset;
|
||||
int bios_size, isa_bios_size;
|
||||
PCIBus *pci_bus;
|
||||
int piix3_devfn = -1;
|
||||
@@ -576,8 +578,28 @@
|
||||
|
||||
/* load initrd */
|
||||
initrd_size = 0;
|
||||
+ initrd_offset = 0;
|
||||
if (initrd_filename) {
|
||||
- initrd_size = load_image(initrd_filename, phys_ram_base + INITRD_LOAD_ADDR);
|
||||
+ initrd_size = get_image_size (initrd_filename);
|
||||
+ if (initrd_size > 0) {
|
||||
+ initrd_offset = (ram_size - initrd_size) & TARGET_PAGE_MASK;
|
||||
+ /* Leave space for BIOS ACPI tables. */
|
||||
+ initrd_offset -= ACPI_DATA_SIZE;
|
||||
+ /* Avoid the last 64k to avoid 2.2.x kernel bugs. */
|
||||
+ initrd_offset -= 0x10000;
|
||||
+ if (initrd_offset > MAX_INITRD_LOAD_ADDR)
|
||||
+ initrd_offset = MAX_INITRD_LOAD_ADDR;
|
||||
+
|
||||
+ if (initrd_size > ram_size
|
||||
+ || initrd_offset < KERNEL_LOAD_ADDR + ret) {
|
||||
+ fprintf(stderr,
|
||||
+ "qemu: memory too small for initial ram disk '%s'\n",
|
||||
+ initrd_filename);
|
||||
+ exit(1);
|
||||
+ }
|
||||
+ initrd_size = load_image(initrd_filename,
|
||||
+ phys_ram_base + initrd_offset);
|
||||
+ }
|
||||
if (initrd_size < 0) {
|
||||
fprintf(stderr, "qemu: could not load initial ram disk '%s'\n",
|
||||
initrd_filename);
|
||||
@@ -585,7 +607,7 @@
|
||||
}
|
||||
}
|
||||
if (initrd_size > 0) {
|
||||
- stl_raw(phys_ram_base + KERNEL_PARAMS_ADDR + 0x218, INITRD_LOAD_ADDR);
|
||||
+ stl_raw(phys_ram_base + KERNEL_PARAMS_ADDR + 0x218, initrd_offset);
|
||||
stl_raw(phys_ram_base + KERNEL_PARAMS_ADDR + 0x21c, initrd_size);
|
||||
}
|
||||
pstrcpy(phys_ram_base + KERNEL_CMDLINE_ADDR, 4096,
|
|
@ -1,24 +0,0 @@
|
|||
diff -rup qemu-0.9.0.orig/hw/pc.c qemu-0.9.0.new/hw/pc.c
|
||||
--- qemu-0.9.0.orig/hw/pc.c 2007-08-28 11:35:35.000000000 -0400
|
||||
+++ qemu-0.9.0.new/hw/pc.c 2007-08-28 11:36:18.000000000 -0400
|
||||
@@ -682,7 +682,7 @@ static void pc_init1(int ram_size, int v
|
||||
nd = &nd_table[i];
|
||||
if (!nd->model) {
|
||||
if (pci_enabled) {
|
||||
- nd->model = "ne2k_pci";
|
||||
+ nd->model = "rtl8139";
|
||||
} else {
|
||||
nd->model = "ne2k_isa";
|
||||
}
|
||||
diff -rup qemu-0.9.0.orig/vl.c qemu-0.9.0.new/vl.c
|
||||
--- qemu-0.9.0.orig/vl.c 2007-08-28 11:35:35.000000000 -0400
|
||||
+++ qemu-0.9.0.new/vl.c 2007-08-28 11:36:18.000000000 -0400
|
||||
@@ -7082,7 +7082,7 @@ int main(int argc, char **argv)
|
||||
const char *model = nd_table[i].model;
|
||||
char buf[1024];
|
||||
if (model == NULL)
|
||||
- model = "ne2k_pci";
|
||||
+ model = "rtl8139";
|
||||
snprintf(buf, sizeof(buf), "%s/pxe-%s.bin", bios_dir, model);
|
||||
if (get_image_size(buf) > 0) {
|
||||
option_rom[nb_option_roms] = strdup(buf);
|
|
@ -1,47 +0,0 @@
|
|||
Index: hw/rtl8139.c
|
||||
===================================================================
|
||||
RCS file: /sources/qemu/qemu/hw/rtl8139.c,v
|
||||
retrieving revision 1.10
|
||||
retrieving revision 1.11
|
||||
diff -u -r1.10 -r1.11
|
||||
--- hw/rtl8139.c 11 Jul 2007 22:48:58 -0000 1.10
|
||||
+++ hw/rtl8139.c 1 Aug 2007 13:10:29 -0000 1.11
|
||||
@@ -53,9 +53,8 @@
|
||||
/* debug RTL8139 card C+ mode only */
|
||||
//#define DEBUG_RTL8139CP 1
|
||||
|
||||
-/* RTL8139 provides frame CRC with received packet, this feature seems to be
|
||||
- ignored by most drivers, disabled by default */
|
||||
-//#define RTL8139_CALCULATE_RXCRC 1
|
||||
+/* Calculate CRCs properly on Rx packets */
|
||||
+#define RTL8139_CALCULATE_RXCRC 1
|
||||
|
||||
/* Uncomment to enable on-board timer interrupts */
|
||||
//#define RTL8139_ONBOARD_TIMER 1
|
||||
@@ -747,7 +746,7 @@
|
||||
int wrapped = MOD2(s->RxBufAddr + size, s->RxBufferSize);
|
||||
|
||||
/* write packet data */
|
||||
- if (wrapped && s->RxBufferSize < 65536 && !rtl8139_RxWrap(s))
|
||||
+ if (wrapped && !(s->RxBufferSize < 65536 && rtl8139_RxWrap(s)))
|
||||
{
|
||||
DEBUG_PRINT((">>> RTL8139: rx packet wrapped in buffer at %d\n", size-wrapped));
|
||||
|
||||
@@ -1023,7 +1022,7 @@
|
||||
|
||||
/* write checksum */
|
||||
#if defined (RTL8139_CALCULATE_RXCRC)
|
||||
- val = cpu_to_le32(crc32(~0, buf, size));
|
||||
+ val = cpu_to_le32(crc32(0, buf, size));
|
||||
#else
|
||||
val = 0;
|
||||
#endif
|
||||
@@ -1129,7 +1128,7 @@
|
||||
|
||||
/* write checksum */
|
||||
#if defined (RTL8139_CALCULATE_RXCRC)
|
||||
- val = cpu_to_le32(crc32(~0, buf, size));
|
||||
+ val = cpu_to_le32(crc32(0, buf, size));
|
||||
#else
|
||||
val = 0;
|
||||
#endif
|
|
@ -1,25 +0,0 @@
|
|||
diff -rup qemu-0.9.0.orig/hw/rtl8139.c qemu-0.9.0.new/hw/rtl8139.c
|
||||
--- qemu-0.9.0.orig/hw/rtl8139.c 2007-02-05 18:01:54.000000000 -0500
|
||||
+++ qemu-0.9.0.new/hw/rtl8139.c 2007-08-28 11:37:29.000000000 -0400
|
||||
@@ -3325,7 +3325,7 @@ static void rtl8139_mmio_map(PCIDevice *
|
||||
PCIRTL8139State *d = (PCIRTL8139State *)pci_dev;
|
||||
RTL8139State *s = &d->rtl8139;
|
||||
|
||||
- cpu_register_physical_memory(addr + 0, 0x100, s->rtl8139_mmio_io_addr);
|
||||
+ cpu_register_physical_memory(addr + 0, 0x1000, s->rtl8139_mmio_io_addr);
|
||||
}
|
||||
|
||||
static void rtl8139_ioport_map(PCIDevice *pci_dev, int region_num,
|
||||
@@ -3438,10 +3438,10 @@ void pci_rtl8139_init(PCIBus *bus, NICIn
|
||||
s->rtl8139_mmio_io_addr =
|
||||
cpu_register_io_memory(0, rtl8139_mmio_read, rtl8139_mmio_write, s);
|
||||
|
||||
- pci_register_io_region(&d->dev, 0, 0x100,
|
||||
+ pci_register_io_region(&d->dev, 0, 0x1000,
|
||||
PCI_ADDRESS_SPACE_IO, rtl8139_ioport_map);
|
||||
|
||||
- pci_register_io_region(&d->dev, 1, 0x100,
|
||||
+ pci_register_io_region(&d->dev, 1, 0x1000,
|
||||
PCI_ADDRESS_SPACE_MEM, rtl8139_mmio_map);
|
||||
|
||||
s->irq = 16; /* PCI interrupt */
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,24 @@
|
|||
diff -rup qemu-0.9.1.orig/hw/pc.c qemu-0.9.1.new/hw/pc.c
|
||||
--- qemu-0.9.1.orig/hw/pc.c 2008-01-06 14:38:42.000000000 -0500
|
||||
+++ qemu-0.9.1.new/hw/pc.c 2008-01-08 17:06:27.000000000 -0500
|
||||
@@ -913,7 +913,7 @@ static void pc_init1(int ram_size, int v
|
||||
nd = &nd_table[i];
|
||||
if (!nd->model) {
|
||||
if (pci_enabled) {
|
||||
- nd->model = "ne2k_pci";
|
||||
+ nd->model = "rtl8139";
|
||||
} else {
|
||||
nd->model = "ne2k_isa";
|
||||
}
|
||||
diff -rup qemu-0.9.1.orig/vl.c qemu-0.9.1.new/vl.c
|
||||
--- qemu-0.9.1.orig/vl.c 2008-01-06 14:38:42.000000000 -0500
|
||||
+++ qemu-0.9.1.new/vl.c 2008-01-08 17:05:40.000000000 -0500
|
||||
@@ -8787,7 +8787,7 @@ int main(int argc, char **argv)
|
||||
char buf[1024];
|
||||
if (net_boot & (1 << i)) {
|
||||
if (model == NULL)
|
||||
- model = "ne2k_pci";
|
||||
+ model = "rtl8139";
|
||||
snprintf(buf, sizeof(buf), "%s/pxe-%s.bin", bios_dir, model);
|
||||
if (get_image_size(buf) > 0) {
|
||||
if (nb_option_roms >= MAX_OPTION_ROMS) {
|
31
qemu.spec
31
qemu.spec
|
@ -7,26 +7,16 @@
|
|||
|
||||
Summary: QEMU is a FAST! processor emulator
|
||||
Name: qemu
|
||||
Version: 0.9.0
|
||||
Release: 5%{?dist}
|
||||
License: GPLv2+, LGPLv2+
|
||||
Version: 0.9.1
|
||||
Release: 1%{?dist}
|
||||
License: GPLv2+ and LGPLv2+
|
||||
Group: Development/Tools
|
||||
URL: http://www.qemu.org/
|
||||
Source0: http://www.qemu.org/%{name}-%{version}.tar.gz
|
||||
Source1: qemu.init
|
||||
Patch0: qemu-0.7.0-build.patch
|
||||
Patch1: qemu-0.8.0-sdata.patch
|
||||
Patch2: qemu-0.9.0-load-initrd.patch
|
||||
# Change default NIC to rtl8139 to get link-state detection
|
||||
Patch3: qemu-0.9.0-nic-defaults.patch
|
||||
# Add VNC auth. Upstream backport. Remove at next upgrade
|
||||
Patch4: qemu-0.9.0-vnc-authentication.patch
|
||||
# Fix RTL8139 MMIO regions. Remove at next upgrade
|
||||
Patch5: qemu-0.9.0-rtl8139-mmio-regions.patch
|
||||
# Fix Atapi errors with latest kernel
|
||||
Patch6: qemu-0.9.0-atapi-hsm.patch
|
||||
# Fix RTL8139 checksum calculations for Vista
|
||||
Patch7: qemu-0.9.0-rtl8139-checksum.patch
|
||||
Patch3: qemu-0.9.1-nic-defaults.patch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
BuildRequires: SDL-devel compat-gcc-%{gccver} zlib-devel which texi2html gnutls-devel
|
||||
Requires(post): /sbin/chkconfig
|
||||
|
@ -50,13 +40,7 @@ As QEMU requires no host kernel patches to run, it is safe and easy to use.
|
|||
%prep
|
||||
%setup -q
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%patch2 -p0
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
%patch7 -p0
|
||||
|
||||
%build
|
||||
./configure \
|
||||
|
@ -102,12 +86,17 @@ fi
|
|||
%doc Changelog README TODO
|
||||
%doc qemu-doc.html qemu-tech.html
|
||||
%doc COPYING COPYING.LIB LICENSE
|
||||
%config %{_sysconfdir}/rc.d/init.d/qemu
|
||||
%{_sysconfdir}/rc.d/init.d/qemu
|
||||
%{_bindir}/qemu*
|
||||
%{_prefix}/share/qemu/
|
||||
%{_mandir}/man1/*
|
||||
|
||||
%changelog
|
||||
* Tue Jan 8 2008 Daniel P. Berrange <berrange@redhat.com> - 0.9.1-1.fc9
|
||||
- Updated to 0.9.1 release
|
||||
- Fix license tag syntax
|
||||
- Don't mark init script as a config file
|
||||
|
||||
* Wed Sep 26 2007 Daniel P. Berrange <berrange@redhat.com> - 0.9.0-5.fc8
|
||||
- Fix rtl8139 checksum calculation for Vista (rhbz #308201)
|
||||
|
||||
|
|
Loading…
Reference in New Issue