From 65b233f940c5cf2900541c18177e4797d21de08a Mon Sep 17 00:00:00 2001 From: Wulf Krueger Date: Sun, 25 Nov 2007 12:22:12 +0000 Subject: Version bump to kvm-53. svn path=/trunk/; revision=52 --- app-emulation/kvm/ChangeLog | 7 + app-emulation/kvm/Manifest | 50 +++++- app-emulation/kvm/files/digest-kvm-53 | 3 + .../kvm/files/kvm-50-libkvm-no-kernel.patch | 13 ++ .../kvm/files/kvm-50-qemu-bios-no-sparc.patch | 19 +++ app-emulation/kvm/files/kvm-51-qemu-ramaddr.patch | 82 ++++++++++ .../kvm/files/kvm-53-qemu-checkext-inc.patch | 12 ++ app-emulation/kvm/files/kvm-53-qemu-exec-fmt.patch | 59 +++++++ .../kvm/files/kvm-53-qemu-ramalloc-fmt.patch | 11 ++ app-emulation/kvm/kvm-53.ebuild | 173 +++++++++++++++++++++ 10 files changed, 425 insertions(+), 4 deletions(-) create mode 100644 app-emulation/kvm/files/digest-kvm-53 create mode 100644 app-emulation/kvm/files/kvm-50-libkvm-no-kernel.patch create mode 100644 app-emulation/kvm/files/kvm-50-qemu-bios-no-sparc.patch create mode 100644 app-emulation/kvm/files/kvm-51-qemu-ramaddr.patch create mode 100644 app-emulation/kvm/files/kvm-53-qemu-checkext-inc.patch create mode 100644 app-emulation/kvm/files/kvm-53-qemu-exec-fmt.patch create mode 100644 app-emulation/kvm/files/kvm-53-qemu-ramalloc-fmt.patch create mode 100644 app-emulation/kvm/kvm-53.ebuild diff --git a/app-emulation/kvm/ChangeLog b/app-emulation/kvm/ChangeLog index 01164dc..b668408 100644 --- a/app-emulation/kvm/ChangeLog +++ b/app-emulation/kvm/ChangeLog @@ -2,6 +2,13 @@ # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2 # $Header: $ + 25 Nov 2007; Wulf C. Krueger + +files/kvm-50-libkvm-no-kernel.patch, + +files/kvm-50-qemu-bios-no-sparc.patch, +files/kvm-51-qemu-ramaddr.patch, + +files/kvm-53-qemu-checkext-inc.patch, +files/kvm-53-qemu-exec-fmt.patch, + +files/kvm-53-qemu-ramalloc-fmt.patch, +kvm-53.ebuild: + Version bump to kvm-53. + 01 Nov 2007; Wulf C. Krueger +kvm-49.ebuild: Version bump to kvm-49. diff --git a/app-emulation/kvm/Manifest b/app-emulation/kvm/Manifest index 3d41e92..c619e21 100644 --- a/app-emulation/kvm/Manifest +++ b/app-emulation/kvm/Manifest @@ -1,3 +1,6 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + AUX kvm-43-qemu-ifup.patch 661 RMD160 ba81120c30ca29186ee7d3537e72ea2b73f525dc SHA1 4717a6de7ac3d72745377329c349b1fe7601561f SHA256 a827bf7684f70e01202ab7939fe0846f2aaf98eb426832878d9fc6559b9864a9 MD5 c81dcc1a08bdf0028f093da0d99dda2d files/kvm-43-qemu-ifup.patch 661 RMD160 ba81120c30ca29186ee7d3537e72ea2b73f525dc files/kvm-43-qemu-ifup.patch 661 @@ -46,8 +49,33 @@ AUX kvm-48-kvm.patch 4199 RMD160 c1adae4599a554efefe0349690e06c0e8e874168 SHA1 f MD5 312822a204c34950cdf0b8f2e350c892 files/kvm-48-kvm.patch 4199 RMD160 c1adae4599a554efefe0349690e06c0e8e874168 files/kvm-48-kvm.patch 4199 SHA256 0b2cfaca612318cad2d4b151d6d93ef24db72fd1e4af4d7311986824a27e85fa files/kvm-48-kvm.patch 4199 +AUX kvm-50-libkvm-no-kernel.patch 490 RMD160 c22405bafff3cb5ccffa4bd41c63adc3732b348e SHA1 99af338e6bd53bbe042a8ff448cda331ef069804 SHA256 c71cd76925bb1f59f24298400a330034e942b911d54525289f6425cdf088cef4 +MD5 eb15527fa15d89b698ef8495e4230028 files/kvm-50-libkvm-no-kernel.patch 490 +RMD160 c22405bafff3cb5ccffa4bd41c63adc3732b348e files/kvm-50-libkvm-no-kernel.patch 490 +SHA256 c71cd76925bb1f59f24298400a330034e942b911d54525289f6425cdf088cef4 files/kvm-50-libkvm-no-kernel.patch 490 +AUX kvm-50-qemu-bios-no-sparc.patch 726 RMD160 b1b17ec7bceba4f44cb9e4d0a3c48d622cb38e9e SHA1 d1b320848db827451d285ebf5b246782f2706ba0 SHA256 6e15debd3ca2f3d1fa4499800575bb3b7fab0d40fb380a056d3aef163b680cc1 +MD5 f65bd566f7521c32998a3bbe96155111 files/kvm-50-qemu-bios-no-sparc.patch 726 +RMD160 b1b17ec7bceba4f44cb9e4d0a3c48d622cb38e9e files/kvm-50-qemu-bios-no-sparc.patch 726 +SHA256 6e15debd3ca2f3d1fa4499800575bb3b7fab0d40fb380a056d3aef163b680cc1 files/kvm-50-qemu-bios-no-sparc.patch 726 +AUX kvm-51-qemu-ramaddr.patch 3332 RMD160 a9aa512fdfcd72c8d97ea8f7525ad1b762b3b777 SHA1 16f58769994ef9472142d72bd6cb88ca5c2191ad SHA256 70d4d86aac00e38c00e534d5d15c42b6e9deedebaa10d3c50c78c809ac80f8cd +MD5 8b497c952127ab3930aef5ae36964520 files/kvm-51-qemu-ramaddr.patch 3332 +RMD160 a9aa512fdfcd72c8d97ea8f7525ad1b762b3b777 files/kvm-51-qemu-ramaddr.patch 3332 +SHA256 70d4d86aac00e38c00e534d5d15c42b6e9deedebaa10d3c50c78c809ac80f8cd files/kvm-51-qemu-ramaddr.patch 3332 +AUX kvm-53-qemu-checkext-inc.patch 428 RMD160 d59e6b19f92a0c83e9ef7fbb9a283da45ad7ee60 SHA1 4e2308299987f71340246405d073f00ecde9cce7 SHA256 1e081e7b4b278573f8863e22a5420329de3b86a62ae52b5c3778a61fb58ac75a +MD5 5bf95f11a35d6a0c0122f073114888fe files/kvm-53-qemu-checkext-inc.patch 428 +RMD160 d59e6b19f92a0c83e9ef7fbb9a283da45ad7ee60 files/kvm-53-qemu-checkext-inc.patch 428 +SHA256 1e081e7b4b278573f8863e22a5420329de3b86a62ae52b5c3778a61fb58ac75a files/kvm-53-qemu-checkext-inc.patch 428 +AUX kvm-53-qemu-exec-fmt.patch 2245 RMD160 de27024cef3aab59212d025f280adb4bbce13575 SHA1 44c0824f8f8e05090e2de404c8384105072201c3 SHA256 e03c5d8f7a6c85c4ed4694a567a4ce75a00ae620279d6791781fea725c7a27d2 +MD5 90e83af24dea8975e5ec6c90bfe03381 files/kvm-53-qemu-exec-fmt.patch 2245 +RMD160 de27024cef3aab59212d025f280adb4bbce13575 files/kvm-53-qemu-exec-fmt.patch 2245 +SHA256 e03c5d8f7a6c85c4ed4694a567a4ce75a00ae620279d6791781fea725c7a27d2 files/kvm-53-qemu-exec-fmt.patch 2245 +AUX kvm-53-qemu-ramalloc-fmt.patch 466 RMD160 8dc830e77015dce8fb8a5c29bd0e6287acf9ee6c SHA1 1b11d3a79eeb2e62cf2c072f449e35badb44edac SHA256 f7b35ef5a555943244ed5c8d0bfad55316d6b900ea7a14a0fe91a82c74b82b0c +MD5 9bc1d4c007a4ded3b36da0ac6ea4f3bc files/kvm-53-qemu-ramalloc-fmt.patch 466 +RMD160 8dc830e77015dce8fb8a5c29bd0e6287acf9ee6c files/kvm-53-qemu-ramalloc-fmt.patch 466 +SHA256 f7b35ef5a555943244ed5c8d0bfad55316d6b900ea7a14a0fe91a82c74b82b0c files/kvm-53-qemu-ramalloc-fmt.patch 466 DIST kvm-48.tar.gz 3271268 RMD160 cab2b7f99ebea323b903420abde223273ddd2536 SHA1 fbcf04ac87f27c05e7c476058ce5feb4c47e46d5 SHA256 04e410b82b2c6ab2ede4c483774ef11889f1b3ced8bb318c8134d9b2d77e0059 DIST kvm-49.tar.gz 3280904 RMD160 de744a9c670714bbaf59ae6a0f6258c95756c33b SHA1 8bb0988eda2f8d9833c9c531b0ee1d347f573fbe SHA256 77a246fafd152b58b32cea35449d1d76517ed72872a04b1bcc902af33a6d8756 +DIST kvm-53.tar.gz 3305384 RMD160 cb09b74f7ef4ff15f52354f2931ae37611ba5b20 SHA1 e004d84a4721c772ceecda3b297e60ee03b7b243 SHA256 a506e3299a125731654d01ee627231e9be78737c2515574491e5fa92cc856680 EBUILD kvm-48.ebuild 4684 RMD160 96a1302f263f243bf54cc84bbbcdf364637322b1 SHA1 d03d9192e92988e5c92ea702833ddb3000cb2ab6 SHA256 025224f03169458740fefed9680775ae95f9c537e6595ae75fc152d9879d6c67 MD5 ae3f2b5083f95ff8619d356e75c07c55 kvm-48.ebuild 4684 RMD160 96a1302f263f243bf54cc84bbbcdf364637322b1 kvm-48.ebuild 4684 @@ -56,10 +84,14 @@ EBUILD kvm-49.ebuild 4684 RMD160 96a1302f263f243bf54cc84bbbcdf364637322b1 SHA1 d MD5 ae3f2b5083f95ff8619d356e75c07c55 kvm-49.ebuild 4684 RMD160 96a1302f263f243bf54cc84bbbcdf364637322b1 kvm-49.ebuild 4684 SHA256 025224f03169458740fefed9680775ae95f9c537e6595ae75fc152d9879d6c67 kvm-49.ebuild 4684 -MISC ChangeLog 2699 RMD160 a6e1da04f14e098c8cd6a3db24dfcfba625e308e SHA1 4030cbf88dcdd75a228b044788b8b09d6480ec21 SHA256 c88446123b801498e667eb1444c0f78e651400c05daee1ab20632c0c461dd838 -MD5 e9fea60f41cb59bb095e835e58412522 ChangeLog 2699 -RMD160 a6e1da04f14e098c8cd6a3db24dfcfba625e308e ChangeLog 2699 -SHA256 c88446123b801498e667eb1444c0f78e651400c05daee1ab20632c0c461dd838 ChangeLog 2699 +EBUILD kvm-53.ebuild 4945 RMD160 abaec90e1ed26ddf201451fca804de33c164a0ab SHA1 c0542f201096cd1250d2e952b8e7ade37fa92e3e SHA256 ad89f8f76ca01e4b4e4a0dbce03a1fc3991253647557b660efc6c36bf34f306e +MD5 a7762ed59e133cea1c6929bae3e95d6b kvm-53.ebuild 4945 +RMD160 abaec90e1ed26ddf201451fca804de33c164a0ab kvm-53.ebuild 4945 +SHA256 ad89f8f76ca01e4b4e4a0dbce03a1fc3991253647557b660efc6c36bf34f306e kvm-53.ebuild 4945 +MISC ChangeLog 3030 RMD160 f6d0244451db1347f64b3e6b4b13108df459e5a4 SHA1 e5bd360cadd6ae1c97759231e803bb040eff2e2c SHA256 3af88db9af925b60efcb7bb7a0a7a7a46332938e01e571d7d5262a1803588d48 +MD5 a9bddaf9ddcf6e4b5d8552c238c1e06c ChangeLog 3030 +RMD160 f6d0244451db1347f64b3e6b4b13108df459e5a4 ChangeLog 3030 +SHA256 3af88db9af925b60efcb7bb7a0a7a7a46332938e01e571d7d5262a1803588d48 ChangeLog 3030 MISC metadata.xml 413 RMD160 dd5972a65a0cc44b4a9bd61cbcfe197270bb355f SHA1 c14660bd6d54594bef13c86f243308fc92687eb0 SHA256 32796ad3337db69538c94738b611438b27e6f199d19df26f0e20a471e313c988 MD5 5c1d1436d6cc39b3b6bf03f9d4b611ec metadata.xml 413 RMD160 dd5972a65a0cc44b4a9bd61cbcfe197270bb355f metadata.xml 413 @@ -70,3 +102,13 @@ SHA256 51848ee3a58296c789174135e608a98f7c949349cb12fc90beb0f67d53a00391 files/di MD5 4764847cc171e0c5055a795f7eb54d34 files/digest-kvm-49 223 RMD160 81fb13780d7a411c5d146c85d0781791ce50da61 files/digest-kvm-49 223 SHA256 9ca954b0bc9a5e5d2805619287a3dc0377798ae2bbfa2d53b108fa669bd9da30 files/digest-kvm-49 223 +MD5 d79ed73f12f67a8bc6e966c3c984d3fa files/digest-kvm-53 223 +RMD160 d7274cd08095b4fd002478b4fd9caac3787754ed files/digest-kvm-53 223 +SHA256 65e19e8a7ecd6ed7e2a3b71625dac012283b83caa621367fb8bdc82cfef6046b files/digest-kvm-53 223 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2.0.7 (GNU/Linux) + +iD8DBQFHSWjGCkvF58q80IkRAiBDAJ9tzBGoDgt1EzyIcwqtcyuze/WQegCfRio3 +8aAnifhHO6hpQZz482AzVFg= +=dkJN +-----END PGP SIGNATURE----- diff --git a/app-emulation/kvm/files/digest-kvm-53 b/app-emulation/kvm/files/digest-kvm-53 new file mode 100644 index 0000000..08065ea --- /dev/null +++ b/app-emulation/kvm/files/digest-kvm-53 @@ -0,0 +1,3 @@ +MD5 25f09a0df49ffac08cc14f693c17f21f kvm-53.tar.gz 3305384 +RMD160 cb09b74f7ef4ff15f52354f2931ae37611ba5b20 kvm-53.tar.gz 3305384 +SHA256 a506e3299a125731654d01ee627231e9be78737c2515574491e5fa92cc856680 kvm-53.tar.gz 3305384 diff --git a/app-emulation/kvm/files/kvm-50-libkvm-no-kernel.patch b/app-emulation/kvm/files/kvm-50-libkvm-no-kernel.patch new file mode 100644 index 0000000..21ee636 --- /dev/null +++ b/app-emulation/kvm/files/kvm-50-libkvm-no-kernel.patch @@ -0,0 +1,13 @@ +--- kvm-50/libkvm/Makefile 2007-10-31 06:50:28.000000000 -0700 ++++ kvm-50/libkvm/Makefile 2007-11-04 01:23:46.000000000 -0700 +@@ -26,10 +26,6 @@ + + install: + install -D libkvm.h $(DESTDIR)/$(PREFIX)/include/libkvm.h +- install -D $(KERNELDIR)/include/linux/kvm.h \ +- $(DESTDIR)/$(PREFIX)/include/linux/kvm.h +- install -D $(KERNELDIR)/include/linux/kvm_para.h \ +- $(DESTDIR)/$(PREFIX)/include/linux/kvm_para.h + install -D libkvm.a $(DESTDIR)/$(PREFIX)/$(LIBDIR)/libkvm.a + + -include .*.d diff --git a/app-emulation/kvm/files/kvm-50-qemu-bios-no-sparc.patch b/app-emulation/kvm/files/kvm-50-qemu-bios-no-sparc.patch new file mode 100644 index 0000000..2c86677 --- /dev/null +++ b/app-emulation/kvm/files/kvm-50-qemu-bios-no-sparc.patch @@ -0,0 +1,19 @@ +--- kvm-50/qemu/Makefile 2007-10-31 06:50:28.000000000 -0700 ++++ kvm-50/qemu/Makefile 2007-11-04 01:32:19.000000000 -0700 +@@ -70,7 +70,7 @@ + $(INSTALL) -m 755 $(TOOLS) "$(DESTDIR)$(bindir)" + mkdir -p "$(DESTDIR)$(datadir)" + for x in bios.bin vgabios.bin vgabios-cirrus.bin ppc_rom.bin \ +- video.x openbios-sparc32 pxe-ne2k_pci.bin \ ++ video.x pxe-ne2k_pci.bin \ + pxe-rtl8139.bin pxe-pcnet.bin; do \ + $(INSTALL) -m 644 $(SRC_PATH)/pc-bios/$$x "$(DESTDIR)$(datadir)"; \ + done +@@ -167,7 +167,6 @@ + $(datadir)/vgabios-cirrus.bin \ + $(datadir)/ppc_rom.bin \ + $(datadir)/video.x \ +- $(datadir)/openbios-sparc32 \ + $(datadir)/pxe-ne2k_pci.bin \ + $(datadir)/pxe-rtl8139.bin \ + $(datadir)/pxe-pcnet.bin \ diff --git a/app-emulation/kvm/files/kvm-51-qemu-ramaddr.patch b/app-emulation/kvm/files/kvm-51-qemu-ramaddr.patch new file mode 100644 index 0000000..be14e5d --- /dev/null +++ b/app-emulation/kvm/files/kvm-51-qemu-ramaddr.patch @@ -0,0 +1,82 @@ +diff --git a/qemu/exec.c b/qemu/exec.c +index 788a913..c1bf8d5 100644 +--- a/qemu/exec.c ++++ b/qemu/exec.c +@@ -1986,7 +1986,7 @@ static inline void tlb_set_dirty(CPUState *env, + + static int subpage_register (subpage_t *mmio, uint32_t start, uint32_t end, + int memory); +-static void *subpage_init (target_phys_addr_t base, uint32_t *phys, ++static void *subpage_init (target_phys_addr_t base, ram_addr_t *phys, + int orig_memory); + #define CHECK_SUBPAGE(addr, start_addr, start_addr2, end_addr, end_addr2, \ + need_subpage) \ +@@ -2094,7 +2094,7 @@ ram_addr_t qemu_ram_alloc(unsigned long size) + { + ram_addr_t addr; + if ((phys_ram_alloc_offset + size) >= phys_ram_size) { +- fprintf(stderr, "Not enough memory (requested_size = %u, max memory = %d)\n", ++ fprintf(stderr, "Not enough memory (requested_size = %u, max memory = %lu)\n", + size, phys_ram_size); + abort(); + } +@@ -2430,7 +2430,7 @@ static int subpage_register (subpage_t *mmio, uint32_t start, uint32_t end, + return 0; + } + +-static void *subpage_init (target_phys_addr_t base, uint32_t *phys, ++static void *subpage_init (target_phys_addr_t base, ram_addr_t *phys, + int orig_memory) + { + subpage_t *mmio; +diff --git a/qemu/migration.c b/qemu/migration.c +index f6e2754..a8f32d2 100644 +--- a/qemu/migration.c ++++ b/qemu/migration.c +@@ -803,7 +803,7 @@ static int migrate_incoming_fd(int fd) + + size = qemu_get_be32(f); + if (size != phys_ram_size) { +- fprintf(stderr, "migration: memory size mismatch: recv %u mine %u\n", ++ fprintf(stderr, "migration: memory size mismatch: recv %u mine %lu\n", + size, phys_ram_size); + return MIG_STAT_DST_MEM_SIZE_MISMATCH; + } +@@ -1058,7 +1058,7 @@ void do_info_migration(void) + term_printf("Transfer rate %3.1f mb/s\n", + (double)s->bps / (1024 * 1024)); + term_printf("Iteration %d\n", s->iteration); +- term_printf("Transferred %d/%d pages\n", s->updated_pages, phys_ram_size >> TARGET_PAGE_BITS); ++ term_printf("Transferred %d/%lu pages\n", s->updated_pages, phys_ram_size >> TARGET_PAGE_BITS); + if (s->iteration) + term_printf("Last iteration found %d dirty pages\n", s->last_updated_pages); + } else { +diff --git a/qemu/vl.c b/qemu/vl.c +index 70d8c81..279cf0c 100644 +--- a/qemu/vl.c ++++ b/qemu/vl.c +@@ -130,10 +130,14 @@ int inet_aton(const char *cp, struct in_addr *ia); + //#define DEBUG_UNUSED_IOPORT + //#define DEBUG_IOPORT + +-#if HOST_LONG_BITS < 64 ++#if TARGET_LONG_BITS < 64 + #define PHYS_RAM_MAX_SIZE (2047 * 1024 * 1024) + #else ++#if HOST_LONG_BITS < 64 + #define PHYS_RAM_MAX_SIZE (2047 * 1024 * 1024 * 1024ULL) ++#else ++#define PHYS_RAM_MAX_SIZE (2047 * 1024 * 1024 * 1024UL) ++#endif + #endif + + #ifdef TARGET_PPC +@@ -8249,7 +8253,7 @@ int main(int argc, char **argv) + if (ram_size <= 0) + help(1); + if (ram_size > PHYS_RAM_MAX_SIZE) { +- fprintf(stderr, "qemu: at most %d MB RAM can be simulated\n", ++ fprintf(stderr, "qemu: at most " TARGET_FMT_lu " MB RAM can be simulated\n", + PHYS_RAM_MAX_SIZE / (1024 * 1024)); + exit(1); + } diff --git a/app-emulation/kvm/files/kvm-53-qemu-checkext-inc.patch b/app-emulation/kvm/files/kvm-53-qemu-checkext-inc.patch new file mode 100644 index 0000000..8fa4d39 --- /dev/null +++ b/app-emulation/kvm/files/kvm-53-qemu-checkext-inc.patch @@ -0,0 +1,12 @@ +diff --git a/qemu/qemu-kvm.h b/qemu/qemu-kvm.h +index 6fdfc03..f9fe2ae 100644 +--- a/qemu/qemu-kvm.h ++++ b/qemu/qemu-kvm.h +@@ -14,6 +14,7 @@ void kvm_save_registers(CPUState *env); + int kvm_cpu_exec(CPUState *env); + int kvm_update_debugger(CPUState *env); + int kvm_qemu_init_env(CPUState *env); ++int kvm_qemu_check_extension(int ext); + void kvm_apic_init(CPUState *env); + + int kvm_physical_memory_set_dirty_tracking(int enable); diff --git a/app-emulation/kvm/files/kvm-53-qemu-exec-fmt.patch b/app-emulation/kvm/files/kvm-53-qemu-exec-fmt.patch new file mode 100644 index 0000000..4e6e375 --- /dev/null +++ b/app-emulation/kvm/files/kvm-53-qemu-exec-fmt.patch @@ -0,0 +1,59 @@ +From d843a842f162bf9f64666b1e3402c07716232cd2 Mon Sep 17 00:00:00 2001 +From: Carlo Marcelo Arenas Belon +Date: Wed, 21 Nov 2007 21:45:48 -0800 +Subject: [PATCH] qemu: cvs diff -u -r1.110 -r1.111 exec.c + +Signed-off-by: Carlo Marcelo Arenas Belon +--- + qemu/exec.c | 14 +++++++------- + 1 files changed, 7 insertions(+), 7 deletions(-) + +diff --git a/qemu/exec.c b/qemu/exec.c +index 788a913..7343c75 100644 +--- a/qemu/exec.c ++++ b/qemu/exec.c +@@ -353,10 +353,10 @@ void tb_flush(CPUState *env1) + { + CPUState *env; + #if defined(DEBUG_FLUSH) +- printf("qemu: flush code_size=%d nb_tbs=%d avg_tb_size=%d\n", +- code_gen_ptr - code_gen_buffer, +- nb_tbs, +- nb_tbs > 0 ? (code_gen_ptr - code_gen_buffer) / nb_tbs : 0); ++ printf("qemu: flush code_size=%ld nb_tbs=%d avg_tb_size=%ld\n", ++ (unsigned long)(code_gen_ptr - code_gen_buffer), ++ nb_tbs, nb_tbs > 0 ? ++ ((unsigned long)(code_gen_ptr - code_gen_buffer)) / nb_tbs : 0); + #endif + nb_tbs = 0; + +@@ -903,7 +903,7 @@ static inline void tb_alloc_page(TranslationBlock *tb, + mprotect(g2h(page_addr), qemu_host_page_size, + (prot & PAGE_BITS) & ~PAGE_WRITE); + #ifdef DEBUG_TB_INVALIDATE +- printf("protecting code page: 0x%08lx\n", ++ printf("protecting code page: 0x" TARGET_FMT_lx "\n", + page_addr); + #endif + } +@@ -2110,7 +2110,7 @@ void qemu_ram_free(ram_addr_t addr) + static uint32_t unassigned_mem_readb(void *opaque, target_phys_addr_t addr) + { + #ifdef DEBUG_UNASSIGNED +- printf("Unassigned mem read " TARGET_FMT_lx "\n", addr); ++ printf("Unassigned mem read " TARGET_FMT_plx "\n", addr); + #endif + #ifdef TARGET_SPARC + do_unassigned_access(addr, 0, 0, 0); +@@ -2121,7 +2121,7 @@ static uint32_t unassigned_mem_readb(void *opaque, target_phys_addr_t addr) + static void unassigned_mem_writeb(void *opaque, target_phys_addr_t addr, uint32_t val) + { + #ifdef DEBUG_UNASSIGNED +- printf("Unassigned mem write " TARGET_FMT_lx " = 0x%x\n", addr, val); ++ printf("Unassigned mem write " TARGET_FMT_plx " = 0x%x\n", addr, val); + #endif + #ifdef TARGET_SPARC + do_unassigned_access(addr, 1, 0, 0); +-- +1.5.2.5 + diff --git a/app-emulation/kvm/files/kvm-53-qemu-ramalloc-fmt.patch b/app-emulation/kvm/files/kvm-53-qemu-ramalloc-fmt.patch new file mode 100644 index 0000000..8f3b846 --- /dev/null +++ b/app-emulation/kvm/files/kvm-53-qemu-ramalloc-fmt.patch @@ -0,0 +1,11 @@ +--- kvm-53/qemu/exec.c 2007-11-21 22:28:26.000000000 -0800 ++++ kvm-53/qemu/exec.c 2007-11-21 22:36:59.000000000 -0800 +@@ -2094,7 +2094,7 @@ + { + ram_addr_t addr; + if ((phys_ram_alloc_offset + size) >= phys_ram_size) { +- fprintf(stderr, "Not enough memory (requested_size = %u, max memory = %lu)\n", ++ fprintf(stderr, "Not enough memory (requested_size = %lu, max memory = %lu)\n", + size, phys_ram_size); + abort(); + } diff --git a/app-emulation/kvm/kvm-53.ebuild b/app-emulation/kvm/kvm-53.ebuild new file mode 100644 index 0000000..58bf5e6 --- /dev/null +++ b/app-emulation/kvm/kvm-53.ebuild @@ -0,0 +1,173 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: 2007/10/02 19:00:00 philantrop Exp $ + +inherit eutils linux-mod + +DESCRIPTION="KVM is a full virtualisation solution for Linux on hardware containing virtualization extensions (Intel VT or AMD-V)" +HOMEPAGE="http://kvm.qumranet.com/kvmwiki" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="-* ~amd64 ~x86" +IUSE="alsa gcc4 gnutls kvm qemu sdl" + +DEPEND="sdl? ( >=media-libs/libsdl-1.2.11 ) + alsa? ( >=media-libs/alsa-lib-1.0.13 ) + !gcc4? ( =sys-devel/gcc-3.4.6-r2 ) + gnutls? ( net-libs/gnutls ) + app-text/texi2html + >=sys-fs/e2fsprogs-1.39" + +RDEPEND="${DEPEND} + sys-apps/usermode-utilities + qemu? ( app-emulation/qemu-softmmu ) + !qemu? ( !app-emulation/qemu-softmmu ) + dev-lang/python" + +RESTRICT="strip" + +BUILD_TARGETS="all" + +QA_TEXTRELS="usr/bin/kvm" +QA_EXECSTACK="usr/share/kvm/openbios-sparc32" +QA_WX_LOAD="usr/share/kvm/openbios-sparc32" + +pkg_setup() { + if kernel_is lt 2 6 22 && ! use kvm; then + eerror "the module in your kernel requires an older version of" + eerror "kvm as shown in :" + eerror " http://kvm.qumranet.com/kvmwiki/Downloads" + die "kvm module not compatible, downgrade kvm or USE='kvm'" + fi + + # Don't continue if the KVM modules can't be found + if ! linux_chkconfig_present KVM && ! use kvm; then + eerror "kvm module not found on your kernel" + eerror "USE='kvm' or enable KVM and the kvm module for your CPU" + die "kvm module missing in kernel" + fi + + MODULE_NAMES="kvm(misc:${S}/kernel) + kvm-intel(misc:${S}/kernel) + kvm-amd(misc:${S}/kernel)" + + if use kvm; then + linux-mod_pkg_setup + else + ewarn "Using the kernel-provided module." + ewarn "Some features may only be available in newer releases." + fi +} + +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}/kvm-47-configure-qemu.patch" + epatch "${FILESDIR}/kvm-45-qemu-configure.patch" + epatch "${FILESDIR}/kvm-45-qemu-kvm.patch" + epatch "${FILESDIR}/kvm-45-qemu-kvm-doc.patch" + epatch "${FILESDIR}/kvm-43-qemu-kvm-cmdline.patch" + epatch "${FILESDIR}/kvm-48-kvm.patch" + epatch "${FILESDIR}/kvm-43-qemu-ifup.patch" + epatch "${FILESDIR}/kvm-50-libkvm-no-kernel.patch" + epatch "${FILESDIR}/kvm-50-qemu-bios-no-sparc.patch" + epatch "${FILESDIR}/kvm-51-qemu-ramaddr.patch" + epatch "${FILESDIR}/kvm-53-qemu-checkext-inc.patch" + epatch "${FILESDIR}/kvm-53-qemu-exec-fmt.patch" + epatch "${FILESDIR}/kvm-53-qemu-ramalloc-fmt.patch" + + if use qemu; then + epatch "${FILESDIR}/kvm-45-qemu-no-img.patch" + fi + + if use gcc4; then + epatch "${FILESDIR}/kvm-45-qemu-gcc4.patch" + else + epatch "${FILESDIR}/kvm-47-qemu-gcc3.patch" + fi +} + +src_compile() { + # fix make install to not install modules + sed -i -e '/$(kcmd)/d' "${WORKDIR}/${P}/Makefile" + + conf_opts="--prefix=/usr" + + if use alsa; then + conf_opts="$conf_opts --enable-alsa" + fi + + if ! use gnutls; then + conf_opts="$conf_opts --disable-vnc-tls" + fi + + if ! use sdl; then + conf_opts="$conf_opts --disable-gfx-check --disable-sdl" + fi + + if use gcc4; then + conf_opts="$conf_opts --disable-gcc-check" + fi + + # Hand-crafted configure script. econf doesn't work. + ./configure ${conf_opts} || die "./configure failed" + + emake user qemu || die "emake failed" + + if use kvm; then + linux-mod_src_compile + fi +} + +src_install() { + # fix make install to not install modules + sed -i -e '/$(kcmd)/d' "${WORKDIR}/${P}/Makefile" + + if use kvm; then + linux-mod_src_install + fi + + emake DESTDIR="${D}" install || die "make install failed" + + exeinto /etc/kvm/utils/ + doexe "${S}/kvm" "${S}/kvm_stat" + mv "${D}/usr/share/man/man1/qemu.1" "${D}/usr/share/man/man1/kvm.1" + + insinto /etc/udev/rules.d/ + doins "${WORKDIR}/${P}/scripts/65-kvm.rules" + + insinto /etc/kvm/ + insopts -m0755 + doins "${WORKDIR}/${P}/scripts/qemu-ifup" + doins "${WORKDIR}/${P}/config.mak" +} + +pkg_postinst() { + if use kvm; then + linux-mod_pkg_postinst + fi + enewgroup kvm + + elog "If you don't have kvm compiled into the kernel, make sure you have the kernel" + elog "module loaded before running kvm. The easiest way to ensure that the kernel" + elog "module is loaded is to load it on boot:" + elog "For AMD CPUs:" + elog "echo kvm-amd >> /etc/modules.autoload.d/kernel-2.6" + elog "For Intel CPUs:" + elog "echo kvm-intel >> /etc/modules.autoload.d/kernel-2.6" + echo + elog "Make sure your user is in the 'kvm' group" + elog "Just run 'gpasswd -a kvm', then have re-login." + echo + elog "If qemu complains about not having a 1024hz timer, run this:" + elog "echo dev.rtc.max-user-freq=1024 >> /etc/sysctl.conf" + echo + elog "If you want network support in the guest OS, you'll need to make" + elog "sure you compile in support for 802.1d Ethernet Bridging in the" + elog "kernel, set up a bridge network interface and make sure you" + elog "compile Universal TUN/TAP device driver support as a kernel module" + elog "and make it load on boot:" + elog "echo tun >> /etc/modules.autoload.d/kernel-2.6" +} -- cgit v1.2.3-65-gdbad