[Qemu-devel] New VGA BIOS
I commited a new VGA BIOS (no commit message because the mail was too big). Important changes were made in order to support some Linux distributions heavily using the VESA VBE extensions (such as GeexBox). The -std-vga option must be used in this case. Fabrice. ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] High resolution VGA modes
Anthony Liguori wrote: Fabrice Bellard wrote: Hi, The previous commits enable the support of higher resolution VGA modes in QEMU (1152x864, 1280x1024 and 1600x1200) when using the VESA device driver (-std-vga option). The VESA device driver is known to work with Linux and Windows XP. Is 2d acceleration possible with VESA? No. But with VESA and virtualisation, the CPU has direct access to the video RAM, so it can be actually faster than the Cirrus VGA driver, depending on the quality of the guest OS drivers. Fabrice. ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu Makefile qemu-doc.texi hw/sun4m.c hw/sun4u...
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 12:36:32 Modified files: . : Makefile qemu-doc.texi hw : sun4m.c sun4u.c pc-bios: README Added files: pc-bios: openbios-sparc32 Removed files: pc-bios: proll.elf Log message: use OpenBIOS instead of Proll on sparc (Blue Swirl) CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/Makefile?cvsroot=qemur1=1.102r2=1.103 http://cvs.savannah.gnu.org/viewcvs/qemu/qemu-doc.texi?cvsroot=qemur1=1.91r2=1.92 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/sun4m.c?cvsroot=qemur1=1.17r2=1.18 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/sun4u.c?cvsroot=qemur1=1.9r2=1.10 http://cvs.savannah.gnu.org/viewcvs/qemu/pc-bios/README?cvsroot=qemur1=1.7r2=1.8 http://cvs.savannah.gnu.org/viewcvs/qemu/pc-bios/openbios-sparc32?cvsroot=qemurev=1.1 http://cvs.savannah.gnu.org/viewcvs/qemu/pc-bios/proll.elf?cvsroot=qemur1=1.5r2=0 Patches: Index: Makefile === RCS file: /sources/qemu/qemu/Makefile,v retrieving revision 1.102 retrieving revision 1.103 diff -u -b -r1.102 -r1.103 --- Makefile14 May 2006 12:07:53 - 1.102 +++ Makefile14 Jun 2006 12:36:31 - 1.103 @@ -68,7 +68,7 @@ $(INSTALL) -m 755 -s $(TOOLS) $(DESTDIR)$(bindir) mkdir -p $(DESTDIR)$(datadir) for x in bios.bin vgabios.bin vgabios-cirrus.bin ppc_rom.bin \ - video.x proll.elf linux_boot.bin; do \ + video.x openbios-sparc32 linux_boot.bin; do \ $(INSTALL) -m 644 $(SRC_PATH)/pc-bios/$$x $(DESTDIR)$(datadir); \ done ifndef CONFIG_WIN32 @@ -149,7 +149,7 @@ $(datadir)/vgabios-cirrus.bin \ $(datadir)/ppc_rom.bin \ $(datadir)/video.x \ - $(datadir)/proll.elf \ + $(datadir)/openbios-sparc32 \ $(datadir)/linux_boot.bin \ $(docdir)/qemu-doc.html \ $(docdir)/qemu-tech.html \ Index: qemu-doc.texi === RCS file: /sources/qemu/qemu/qemu-doc.texi,v retrieving revision 1.91 retrieving revision 1.92 diff -u -b -r1.91 -r1.92 --- qemu-doc.texi 11 Jun 2006 16:28:41 - 1.91 +++ qemu-doc.texi 14 Jun 2006 12:36:31 - 1.92 @@ -1394,7 +1394,7 @@ @node Sparc32 System emulator invocation @section Sparc32 System emulator invocation -Use the executable @file{qemu-system-sparc} to simulate a JavaStation +Use the executable @file{qemu-system-sparc} to simulate a SparcStation 5 (sun4m architecture). The emulation is somewhat complete. QEMU emulates the following sun4m peripherals: @@ -1419,13 +1419,14 @@ The number of peripherals is fixed in the architecture. -QEMU uses the Proll, a PROM replacement available at [EMAIL PROTECTED]://people.redhat.com/@/zaitcev/linux/}. The required -QEMU-specific patches are included with the sources. +Since version 0.8.1, QEMU uses OpenBIOS [EMAIL PROTECTED]://www.openbios.org/}. OpenBIOS is a free (GPL v2) portable +firmware implementation. The goal is to implement a 100% IEEE +1275-1994 (referred to as Open Firmware) compliant firmware. A sample Linux 2.6 series kernel and ram disk image are available on -the QEMU web site. Please note that currently neither Linux 2.4 -series, NetBSD, nor OpenBSD kernels work. +the QEMU web site. Please note that currently NetBSD, OpenBSD or +Solaris kernels don't work. @c man begin OPTIONS Index: hw/sun4m.c === RCS file: /sources/qemu/qemu/hw/sun4m.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -b -r1.17 -r1.18 --- hw/sun4m.c 13 May 2006 16:11:23 - 1.17 +++ hw/sun4m.c 14 Jun 2006 12:36:31 - 1.18 @@ -28,8 +28,7 @@ #define INITRD_LOAD_ADDR 0x0080 #define PROM_SIZE_MAX(256 * 1024) #define PROM_ADDR 0xffd0 -#define PROM_FILENAMEB proll.bin -#define PROM_FILENAMEE proll.elf +#define PROM_FILENAME openbios-sparc32 #define PHYS_JJ_EEPROM 0x7120 /* m48t08 */ #define PHYS_JJ_IDPROM_OFF 0x1FD8 #define PHYS_JJ_EEPROM_SIZE0x2000 @@ -273,13 +272,9 @@ (PROM_SIZE_MAX + TARGET_PAGE_SIZE - 1) TARGET_PAGE_MASK, prom_offset | IO_MEM_ROM); -snprintf(buf, sizeof(buf), %s/%s, bios_dir, PROM_FILENAMEE); +snprintf(buf, sizeof(buf), %s/%s, bios_dir, PROM_FILENAME); ret = load_elf(buf, 0, NULL); if (ret 0) { - snprintf(buf, sizeof(buf), %s/%s, bios_dir, PROM_FILENAMEB); - ret = load_image(buf, phys_ram_base + prom_offset); -} -if (ret 0) { fprintf(stderr, qemu: could not load prom '%s'\n, buf); exit(1); Index: hw/sun4u.c === RCS file:
[Qemu-devel] qemu/target-sparc helper.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 12:37:30 Modified files: target-sparc : helper.c Log message: MMU no fault fix CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/helper.c?cvsroot=qemur1=1.21r2=1.22 Patches: Index: helper.c === RCS file: /sources/qemu/qemu/target-sparc/helper.c,v retrieving revision 1.21 retrieving revision 1.22 diff -u -b -r1.21 -r1.22 --- helper.c5 Dec 2005 20:29:47 - 1.21 +++ helper.c14 Jun 2006 12:37:30 - 1.22 @@ -190,7 +190,7 @@ /* check access */ access_perms = (pde PTE_ACCESS_MASK) PTE_ACCESS_SHIFT; error_code = access_table[*access_index][access_perms]; -if (error_code !(env-mmuregs[0] MMU_NF)) +if (error_code !((env-mmuregs[0] MMU_NF) is_user)) return error_code; /* the page can be put in the TLB */ ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu/target-sparc translate.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 12:37:58 Modified files: target-sparc : translate.c Log message: FPU fix (Joerg Platte) CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/translate.c?cvsroot=qemur1=1.25r2=1.26 Patches: Index: translate.c === RCS file: /sources/qemu/qemu/target-sparc/translate.c,v retrieving revision 1.25 retrieving revision 1.26 diff -u -b -r1.25 -r1.26 --- translate.c 21 Nov 2005 23:33:12 - 1.25 +++ translate.c 14 Jun 2006 12:37:58 - 1.26 @@ -982,6 +982,7 @@ { int cc = GET_FIELD_SP(insn, 20, 21); #if !defined(CONFIG_USER_ONLY) + save_state(dc); gen_op_trap_ifnofpu(); #endif target = GET_FIELD_SP(insn, 0, 18); @@ -1002,6 +1003,7 @@ case 0x6: /* FBN+x */ { #if !defined(CONFIG_USER_ONLY) + save_state(dc); gen_op_trap_ifnofpu(); #endif target = GET_FIELD(insn, 10, 31); @@ -1236,6 +1238,7 @@ #endif } else if (xop == 0x34) { /* FPU Operations */ #if !defined(CONFIG_USER_ONLY) + save_state(dc); gen_op_trap_ifnofpu(); #endif rs1 = GET_FIELD(insn, 13, 17); @@ -1424,6 +1427,7 @@ int cond; #endif #if !defined(CONFIG_USER_ONLY) + save_state(dc); gen_op_trap_ifnofpu(); #endif rs1 = GET_FIELD(insn, 13, 17); @@ -2346,6 +2350,7 @@ #endif } else if (xop = 0x20 xop 0x24) { #if !defined(CONFIG_USER_ONLY) || defined(TARGET_SPARC64) + save_state(dc); gen_op_trap_ifnofpu(); #endif switch (xop) { ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu/hw m48t59.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 12:41:34 Modified files: hw : m48t59.c Log message: clock year fix for sparc (Blue Swirl) CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/hw/m48t59.c?cvsroot=qemur1=1.7r2=1.8 Patches: Index: m48t59.c === RCS file: /sources/qemu/qemu/hw/m48t59.c,v retrieving revision 1.7 retrieving revision 1.8 diff -u -b -r1.7 -r1.8 --- m48t59.c30 Oct 2005 16:58:32 - 1.7 +++ m48t59.c14 Jun 2006 12:41:34 - 1.8 @@ -332,6 +332,9 @@ tmp = fromBCD(val); if (tmp = 0 tmp = 99) { get_time(NVRAM, tm); +if (NVRAM-type == 8) +tm.tm_year = fromBCD(val) + 68; // Base year is 1968 +else tm.tm_year = fromBCD(val); set_time(NVRAM, tm); } @@ -421,6 +424,9 @@ case 0x1FFF: /* year */ get_time(NVRAM, tm); +if (NVRAM-type == 8) +retval = toBCD(tm.tm_year - 68); // Base year is 1968 +else retval = toBCD(tm.tm_year); break; default: ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] Switch to OpenBIOS for Sparc32/64?
Blue Swirl wrote: I included other fixes currently needed for correct operation (clock year fix, FPU fix by Joerg Platte, MMU no-fault fix). Note: the FPU fix should be revisited because it is really not optimal. Here are some ideas to implement it better: 1) Include the bit 'psref' in the static translation state (in tb-flags). Then psref can be tested at translation time and there is no run time cost. This approach is used on the x86 target. The downside is that two TBs may be generated for a given block of code depending on the psref value. Ideally if no FPU operations are used in the TB, psref should be ignored (not done yet on x86). 2) Keep psref dynamic, but test it only once per TB using FPU operations. In case of exception, rebuilt the CPU state as with MMU exceptions so that save_state() is not needed. I tend to prefer the solution (1). Fabrice. ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu configure target-mips/cpu.h target-mips/ex...
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 12:56:19 Modified files: . : configure target-mips: cpu.h exec.h mips-defs.h op.c op_helper.c op_mem.c translate.c Added files: target-mips: fop_template.c Log message: MIPS FPU support (Marius Goeger) CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/configure?cvsroot=qemur1=1.103r2=1.104 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/cpu.h?cvsroot=qemur1=1.6r2=1.7 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/exec.h?cvsroot=qemur1=1.7r2=1.8 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/mips-defs.h?cvsroot=qemur1=1.1r2=1.2 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/op.c?cvsroot=qemur1=1.7r2=1.8 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/op_helper.c?cvsroot=qemur1=1.13r2=1.14 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/op_mem.c?cvsroot=qemur1=1.2r2=1.3 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/translate.c?cvsroot=qemur1=1.13r2=1.14 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/fop_template.c?cvsroot=qemurev=1.1 Patches: Index: configure === RCS file: /sources/qemu/qemu/configure,v retrieving revision 1.103 retrieving revision 1.104 diff -u -b -r1.103 -r1.104 --- configure 11 Jun 2006 13:32:58 - 1.103 +++ configure 14 Jun 2006 12:56:19 - 1.104 @@ -819,6 +819,8 @@ echo TARGET_ARCH=mips $config_mak echo #define TARGET_ARCH \mips\ $config_h echo #define TARGET_MIPS 1 $config_h + echo CONFIG_SOFTFLOAT=yes $config_mak + echo #define CONFIG_SOFTFLOAT 1 $config_h elif test $target_cpu = sh4 ; then echo TARGET_ARCH=sh4 $config_mak echo #define TARGET_ARCH \sh4\ $config_h Index: target-mips/cpu.h === RCS file: /sources/qemu/qemu/target-mips/cpu.h,v retrieving revision 1.6 retrieving revision 1.7 diff -u -b -r1.6 -r1.7 --- target-mips/cpu.h 11 Mar 2006 16:23:39 - 1.6 +++ target-mips/cpu.h 14 Jun 2006 12:56:19 - 1.7 @@ -10,10 +10,19 @@ typedef union fpr_t fpr_t; union fpr_t { -double d; -float f; -uint32_t u[2]; +float64 fd; /* ieee double precision */ +float32 fs[2];/* ieee single precision */ +uint64_t d;/* binary single fixed-point */ +uint32_t w[2]; /* binary single fixed-point */ }; +/* define FP_ENDIAN_IDX to access the same location + * in the fpr_t union regardless of the host endianess + */ +#if defined(WORDS_BIGENDIAN) +# define FP_ENDIAN_IDX 1 +#else +# define FP_ENDIAN_IDX 0 +#endif #if defined(MIPS_USES_R4K_TLB) typedef struct tlb_t tlb_t; @@ -44,12 +53,38 @@ #if defined(MIPS_USES_FPU) /* Floating point registers */ fpr_t fpr[16]; -/* Floating point special purpose registers */ +#define FPR(cpu, n) ((fpr_t*)(cpu)-fpr[(n) / 2]) +#define FPR_FD(cpu, n) (FPR(cpu, n)-fd) +#define FPR_FS(cpu, n) (FPR(cpu, n)-fs[((n) 1) ^ FP_ENDIAN_IDX]) +#define FPR_D(cpu, n) (FPR(cpu, n)-d) +#define FPR_W(cpu, n) (FPR(cpu, n)-w[((n) 1) ^ FP_ENDIAN_IDX]) + +#ifndef USE_HOST_FLOAT_REGS +fpr_t ft0; +fpr_t ft1; +fpr_t ft2; +#endif +float_status fp_status; +/* fpu implementation/revision register */ uint32_t fcr0; -uint32_t fcr25; -uint32_t fcr26; -uint32_t fcr28; -uint32_t fcsr; +/* fcsr */ +uint32_t fcr31; +#define SET_FP_COND(reg) do { (reg) |= (123); } while(0) +#define CLEAR_FP_COND(reg) do { (reg) = ~(123); } while(0) +#define IS_FP_COND_SET(reg) (((reg) (123)) != 0) +#define GET_FP_CAUSE(reg)(((reg) 12) 0x3f) +#define GET_FP_ENABLE(reg) (((reg) 7) 0x1f) +#define GET_FP_FLAGS(reg)(((reg) 2) 0x1f) +#define SET_FP_CAUSE(reg,v) do { (reg) = ((reg) ~(0x3f 12)) | ((v) 12); } while(0) +#define SET_FP_ENABLE(reg,v) do { (reg) = ((reg) ~(0x1f 7)) | ((v) 7); } while(0) +#define SET_FP_FLAGS(reg,v) do { (reg) = ((reg) ~(0x1f 2)) | ((v) 2); } while(0) +#define FP_INEXACT1 +#define FP_UNDERFLOW 2 +#define FP_OVERFLOW 4 +#define FP_DIV0 8 +#define FP_INVALID16 +#define FP_UNIMPLEMENTED 32 + #endif #if defined(MIPS_USES_R4K_TLB) tlb_t tlb[16]; @@ -71,6 +106,7 @@ #define CP0St_CU1 29 #define CP0St_CU0 28 #define CP0St_RP27 +#define CP0St_FR26 #define CP0St_RE25 #define CP0St_BEV 22 #define CP0St_TS21 @@ -138,9 +174,6 @@ uint32_t CP0_ErrorEPC; uint32_t CP0_DESAVE; /* Qemu */ -#if defined (USE_HOST_FLOAT_REGS) defined(MIPS_USES_FPU) -double ft0, ft1, ft2; -#endif struct QEMUTimer *timer; /* Internal timer */ int interrupt_request; jmp_buf jmp_env; Index: target-mips/exec.h === RCS file: /sources/qemu/qemu/target-mips/exec.h,v retrieving revision 1.7
Re: [Qemu-devel] New VGA BIOS
Fabrice Bellard wrote: I commited a new VGA BIOS (no commit message because the mail was too big). Important changes were made in order to support some Linux distributions heavily using the VESA VBE extensions (such as GeexBox). The -std-vga option must be used in this case. Fabrice. ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel Fabrice et al. I downloaded and tested this new VGA enhanced version from CVS this morning. Running Windows XP as guest on FC5 as host with user and kernal kqemu, I found that QEMU exited with an error: Could not open SDL display when I tried resolutions of 1152 x 864, 1280 x 1024 and 1600 x 1200. This occurred when I attempted to go full screen, worked fine in a window. 800 x 600 and 1024 x 768 worked fine in a window or full screen. I am running on a laptop with a screen size of 1280 x 800 so the failing resolutions are when the emulated VGA is larger than the physical screen. Is this expected behavior? What I would really like is the ability to run at 1280x800 and be 1:1 with my screen when in full screen mode. Is this possible, or am I limited by XP? Thanks for a great product Nigel ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu/linux-user syscall.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 13:36:59 Modified files: linux-user : syscall.c Log message: use glibc syscall (David Woodhouse) CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/syscall.c?cvsroot=qemur1=1.71r2=1.72 Patches: Index: syscall.c === RCS file: /sources/qemu/qemu/linux-user/syscall.c,v retrieving revision 1.71 retrieving revision 1.72 diff -u -b -r1.71 -r1.72 --- syscall.c 14 May 2006 11:30:38 - 1.71 +++ syscall.c 14 Jun 2006 13:36:59 - 1.72 @@ -79,127 +79,59 @@ #defineVFAT_IOCTL_READDIR_SHORT_IOR('r', 2, struct dirent [2]) -#if defined(__powerpc__) -#undef __syscall_nr -#undef __sc_loadargs_0 -#undef __sc_loadargs_1 -#undef __sc_loadargs_2 -#undef __sc_loadargs_3 -#undef __sc_loadargs_4 -#undef __sc_loadargs_5 -#undef __sc_asm_input_0 -#undef __sc_asm_input_1 -#undef __sc_asm_input_2 -#undef __sc_asm_input_3 -#undef __sc_asm_input_4 -#undef __sc_asm_input_5 #undef _syscall0 #undef _syscall1 #undef _syscall2 #undef _syscall3 #undef _syscall4 #undef _syscall5 - -/* need to redefine syscalls as Linux kernel defines are incorrect for - the clobber list */ -/* On powerpc a system call basically clobbers the same registers like a - * function call, with the exception of LR (which is needed for the - * sc; bnslr sequence) and CR (where only CR0.SO is clobbered to signal - * an error return status). - */ - -#define __syscall_nr(nr, type, name, args...) \ - unsigned long __sc_ret, __sc_err; \ - { \ - register unsigned long __sc_0 __asm__ (r0); \ - register unsigned long __sc_3 __asm__ (r3); \ - register unsigned long __sc_4 __asm__ (r4); \ - register unsigned long __sc_5 __asm__ (r5); \ - register unsigned long __sc_6 __asm__ (r6); \ - register unsigned long __sc_7 __asm__ (r7); \ - \ - __sc_loadargs_##nr(name, args); \ - __asm__ __volatile__\ - (sc \n\t\ -mfcr %0 \ - : =r (__sc_0), \ - =r (__sc_3), =r (__sc_4), \ - =r (__sc_5), =r (__sc_6), \ - =r (__sc_7)\ - : __sc_asm_input_##nr \ - : cr0, ctr, memory, \ - r8, r9, r10,r11, r12); \ - __sc_ret = __sc_3; \ - __sc_err = __sc_0; \ - } \ - if (__sc_err 0x1000) \ - { \ - errno = __sc_ret; \ - __sc_ret = -1; \ - } \ - return (type) __sc_ret - -#define __sc_loadargs_0(name, dummy...) \ - __sc_0 = __NR_##name -#define __sc_loadargs_1(name, arg1)\ - __sc_loadargs_0(name); \ - __sc_3 = (unsigned long) (arg1) -#define __sc_loadargs_2(name, arg1, arg2) \ - __sc_loadargs_1(name, arg1);\ - __sc_4 = (unsigned long) (arg2) -#define __sc_loadargs_3(name, arg1, arg2, arg3) \ - __sc_loadargs_2(name, arg1, arg2); \ - __sc_5 = (unsigned long) (arg3) -#define __sc_loadargs_4(name, arg1, arg2, arg3, arg4) \ - __sc_loadargs_3(name, arg1, arg2, arg3);\ - __sc_6 = (unsigned long) (arg4) -#define __sc_loadargs_5(name, arg1, arg2, arg3, arg4, arg5)\ - __sc_loadargs_4(name, arg1, arg2, arg3, arg4); \ - __sc_7 = (unsigned long) (arg5) - -#define __sc_asm_input_0 0 (__sc_0) -#define __sc_asm_input_1 __sc_asm_input_0, 1 (__sc_3) -#define __sc_asm_input_2 __sc_asm_input_1, 2 (__sc_4) -#define __sc_asm_input_3 __sc_asm_input_2, 3 (__sc_5) -#define __sc_asm_input_4 __sc_asm_input_3,
[Qemu-devel] qemu/target-i386 helper2.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 13:37:16 Modified files: target-i386: helper2.c Log message: use glibc syscall (David Woodhouse) CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-i386/helper2.c?cvsroot=qemur1=1.41r2=1.42 Patches: Index: helper2.c === RCS file: /sources/qemu/qemu/target-i386/helper2.c,v retrieving revision 1.41 retrieving revision 1.42 diff -u -b -r1.41 -r1.42 --- helper2.c 25 Apr 2006 21:27:42 - 1.41 +++ helper2.c 14 Jun 2006 13:37:16 - 1.42 @@ -35,7 +35,10 @@ #include linux/unistd.h #include linux/version.h -_syscall3(int, modify_ldt, int, func, void *, ptr, unsigned long, bytecount) +int modify_ldt(int func, void *ptr, unsigned long bytecount) +{ + return syscall(__NR_modify_ldt, func, ptr, bytecount); +} #if LINUX_VERSION_CODE = KERNEL_VERSION(2, 5, 66) #define modify_ldt_ldt_s user_desc ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu/linux-user main.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 13:37:55 Modified files: linux-user : main.c Log message: MIPS FPU support in linux user emulation CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/main.c?cvsroot=qemur1=1.84r2=1.85 Patches: Index: main.c === RCS file: /sources/qemu/qemu/linux-user/main.c,v retrieving revision 1.84 retrieving revision 1.85 diff -u -b -r1.84 -r1.85 --- main.c 11 Jun 2006 13:32:59 - 1.84 +++ main.c 14 Jun 2006 13:37:55 - 1.85 @@ -1327,7 +1327,6 @@ arg5, arg6); } -fail: env-PC += 4; if ((unsigned int)ret = (unsigned int)(-1133)) { env-gpr[7] = 1; /* error flag */ @@ -1342,40 +1341,11 @@ break; case EXCP_CpU: case EXCP_RI: -{ -uint32_t insn, op; - -insn = tget32(env-PC); -op = insn 26; -//printf(insn=%08x op=%02x\n, insn, op); -/* XXX: totally dummy FP ops just to be able to launch - a few executables */ -switch(op) { -case 0x31: /* LWC1 */ -env-PC += 4; -break; -case 0x39: /* SWC1 */ -env-PC += 4; -break; -case 0x11: -switch((insn 21) 0x1f) { -case 0x02: /* CFC1 */ -env-PC += 4; -break; -default: -goto sigill; -} -break; -default: -sigill: info.si_signo = TARGET_SIGILL; info.si_errno = 0; info.si_code = 0; queue_signal(info.si_signo, info); break; -} -} -break; default: //error: fprintf(stderr, qemu: unhandled CPU exception 0x%x - aborting\n, @@ -1700,6 +1670,9 @@ env-gpr[i] = regs-regs[i]; } env-PC = regs-cp0_epc; +#ifdef MIPS_USES_FPU +env-CP0_Status |= (1 CP0St_CU1); +#endif } #elif defined(TARGET_SH4) { ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu dyngen.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 13:41:09 Modified files: . : dyngen.c Log message: typo in get_reloc_expr() CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/dyngen.c?cvsroot=qemur1=1.42r2=1.43 Patches: Index: dyngen.c === RCS file: /sources/qemu/qemu/dyngen.c,v retrieving revision 1.42 retrieving revision 1.43 diff -u -b -r1.42 -r1.43 --- dyngen.c24 Apr 2006 20:32:17 - 1.42 +++ dyngen.c14 Jun 2006 13:41:08 - 1.43 @@ -1196,7 +1196,7 @@ } else { #ifdef HOST_SPARC if (sym_name[0] == '.') -snprintf(name, sizeof(name), +snprintf(name, name_size, (long)(__dot_%s), sym_name + 1); else ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] [PATCH] -redir revisited
Hi, The current behaviour of QEMU seems correct to me: TCP connections coming localhost are seen coming from 10.0.2.2 on the guest. Your problem may be related to an incorrect Apache configuration. Did I miss something ? Regards, Fabrice. René Korthaus wrote: Hello list, i am recently working on integrating the -redir option into [Kju:] for Mac OS X and tested Apache access in debian guest from Mac OS X host which not worked for me. I discovered a discussion on the list in November 2005 where a patch was submitted against this (http:// lists.gnu.org/archive/html/qemu-devel/2005-11/msg00419.html). I researched current qemu cvs and found out that the patch was integrated not complete but to 95%. There are two lines in slirp/ misc.c that need a change (patch attached). Tested to work with Mac OS X host and debian guest i could reach the Apache running inside the guest via localhost:8080 with the appropriate -redir command. Greetings, cordney* ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] Sparse file support under windows
OK for the idea, but why is a new option needed ? Sparse file usage should be automatic if the filesystem supports it. Regards, Fabrice. ZIGLIO, Frediano, VF-IT wrote: Hi, this patch add sparse file support under Windows (supported on NTFS). It add a -s flag to qemu create and qemu convert. It contain also a new implementation for ftruncate witch not fill manually space but only use SetEndOfFile (so to handle correctly sparse file) freddy77 ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
RE: [Qemu-devel] Sparse file support under windows
Good question. As you like... I can remove option if you prefer. I don't know how performs sparse file on windows so perhaps someone can still prefer normal file for performance. freddy77 OK for the idea, but why is a new option needed ? Sparse file usage should be automatic if the filesystem supports it. Regards, Fabrice. ZIGLIO, Frediano, VF-IT wrote: Hi, this patch add sparse file support under Windows (supported on NTFS). It add a -s flag to qemu create and qemu convert. It contain also a new implementation for ftruncate witch not fill manually space but only use SetEndOfFile (so to handle correctly sparse file) freddy77 -- -- ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu/target-i386 translate.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 14:29:34 Modified files: target-i386: translate.c Log message: x86_64 mmx/sse fix CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-i386/translate.c?cvsroot=qemur1=1.56r2=1.57 Patches: Index: translate.c === RCS file: /sources/qemu/qemu/target-i386/translate.c,v retrieving revision 1.56 retrieving revision 1.57 diff -u -b -r1.56 -r1.57 --- translate.c 24 Apr 2006 20:14:56 - 1.56 +++ translate.c 14 Jun 2006 14:29:34 - 1.57 @@ -2905,6 +2905,7 @@ break; case 0xc4: /* pinsrw */ case 0x1c4: +s-rip_offset = 1; gen_ldst_modrm(s, modrm, OT_WORD, OR_TMP0, 0); val = ldub_code(s-pc++); if (b1) { @@ -2975,7 +2976,8 @@ } } else { /* generic MMX or SSE operation */ -if (b == 0xf7) { +switch(b) { +case 0xf7: /* maskmov : we must prepare A0 */ if (mod != 3) goto illegal_op; @@ -2990,6 +2992,14 @@ gen_op_andl_A0_(); } gen_add_A0_ds_seg(s); +break; +case 0x70: /* pshufx insn */ +case 0xc6: /* pshufx insn */ +case 0xc2: /* compare insns */ +s-rip_offset = 1; +break; +default: +break; } if (is_xmm) { op1_offset = offsetof(CPUX86State,xmm_regs[reg]); ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu/target-arm translate.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Paul Brook pbrook 06/06/14 14:36:07 Modified files: target-arm : translate.c Log message: ARM postincrememnt addressing fix. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-arm/translate.c?cvsroot=qemur1=1.42r2=1.43 Patches: Index: translate.c === RCS file: /sources/qemu/qemu/target-arm/translate.c,v retrieving revision 1.42 retrieving revision 1.43 diff -u -b -r1.42 -r1.43 --- translate.c 22 May 2006 23:06:04 - 1.42 +++ translate.c 14 Jun 2006 14:36:07 - 1.43 @@ -383,19 +383,23 @@ } } -static inline void gen_add_datah_offset(DisasContext *s, unsigned int insn) +static inline void gen_add_datah_offset(DisasContext *s, unsigned int insn, +int extra) { int val, rm; if (insn (1 22)) { /* immediate */ val = (insn 0xf) | ((insn 4) 0xf0); +val += extra; if (!(insn (1 23))) val = -val; if (val != 0) gen_op_addl_T1_im(val); } else { /* register */ +if (extra) +gen_op_addl_T1_im(extra); rm = (insn) 0xf; gen_movl_T2_reg(s, rm); if (!(insn (1 23))) @@ -1530,12 +1534,14 @@ } } } else { +int address_offset; /* Misc load/store */ rn = (insn 16) 0xf; rd = (insn 12) 0xf; gen_movl_T1_reg(s, rn); if (insn (1 24)) -gen_add_datah_offset(s, insn); +gen_add_datah_offset(s, insn, 0); +address_offset = 0; if (insn (1 20)) { /* load */ switch(sh) { @@ -1560,8 +1566,6 @@ gen_op_addl_T1_im(4); gen_movl_T0_reg(s, rd + 1); gen_ldst(stl, s); -if ((insn (1 24)) || (insn (1 20))) -gen_op_addl_T1_im(-4); } else { /* load */ gen_ldst(ldl, s); @@ -1569,18 +1573,19 @@ gen_op_addl_T1_im(4); gen_ldst(ldl, s); gen_movl_reg_T0(s, rd + 1); -if ((insn (1 24)) || (insn (1 20))) -gen_op_addl_T1_im(-4); } +address_offset = -4; } else { /* store */ gen_movl_T0_reg(s, rd); gen_ldst(stw, s); } if (!(insn (1 24))) { -gen_add_datah_offset(s, insn); +gen_add_datah_offset(s, insn, address_offset); gen_movl_reg_T1(s, rn); } else if (insn (1 21)) { +if (address_offset) +gen_op_addl_T1_im(address_offset); gen_movl_reg_T1(s, rn); } } ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] invisible wall patch
Julian Seward wrote: Could somebody please commit, or at least consider committing, Anthony Liguori's invisible wall patch, shown at http://lists.gnu.org/archive/html/qemu-devel/2006-05/msg00112.html ? Without it, QEMU is essentially unusable on my SuSE 10 host; with it, the mouse stuff works perfectly. A couple of other people on that thread had similar experiences with it. J ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel The patch works perfectly here (qemu 0.8.1 on Windows XP host). Without it I always get the invisible wall if I leave mousegrab and enter it again close to a window border. It seems to me that SDL only reports pointer-deltas based on the movement of its own pointer (which is set invisible) and when this invisible pointer hits the window border you therefor only get delta=0 even if the guest OS pointer is still somewhere in midscreen. (Setting the SDL pointer always visible gives a good illustration of what is going on.) The guest-OS rather expects raw mouse movement deltas, than the filtered SDL-pointer deltas. Somehow the patch seems to solve this, but I can't say that I understand how (not having looked into the SDL source code). Regards Dan Sandberg ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] Two question on serial port emulation
Jiang, Yunhong wrote: Hi, all I'm using qemu on linux, and I have two questions on the serial port emulation. The serial port means the hardware serial port (/dev/ttyS0 on Linux). 1) Currently tty_serial_init() set the c_oflags as following: tty.c_oflag |= OPOST but it didn't clear the ONLCR/ONLRET etc. This may cause some problem on binary transfer. For example, when transfer 0x0d 0x0a for 0x0a. Following patch may fix this problem, although I'm not sure if we clear OPOST, do we still need to clear ONLCR/OCRNL etc bits. --- vl.c2006-05-04 04:32:58.0 +0800 +++ ../qemu-0.8.1_bogus/vl.c2006-06-01 22:34:09.0 +0800 @@ -1586,7 +1586,8 @@ tty.c_iflag = ~(IGNBRK|BRKINT|PARMRK|ISTRIP |INLCR|IGNCR|ICRNL|IXON); -tty.c_oflag |= OPOST; +tty.c_oflag = ~(ONLCR | OCRNL | ONOCR |ONLRET) ; +tty.c_oflag = ~OPOST; tty.c_lflag = ~(ECHO|ECHONL|ICANON|IEXTEN|ISIG); tty.c_cflag = ~(CSIZE|PARENB|PARODD|CRTSCTS); switch(data_bits) { So forcing all the flags to known values may be even better ! 2) Currently all write to the serial port will through unix_write(). Considering : a) if the return value is -EAGAIN, it will not try to re-write this again. b) all write will return immetiately. So when guest try to write a lot of data continuously, like using zmodem to transfer file or using serial port for debugger, it may cause application failure (the data is write successfuly from guest point of view, while it failed on the host environment). I changed the write process to multi-thread, but I don't think it is a good method, so how do you think of these? You should use the callback based I/Os. An output FIFO must be maintained in the serial driver itself. Unfortunately an API is missing on the QEMU char devices to do proper asynchronous outputs. Fabrice. ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] Sparse file support under windows
At least the default should be sparse files if the filesystem supports them. Fabrice. ZIGLIO, Frediano, VF-IT wrote: Good question. As you like... I can remove option if you prefer. I don't know how performs sparse file on windows so perhaps someone can still prefer normal file for performance. freddy77 OK for the idea, but why is a new option needed ? Sparse file usage should be automatic if the filesystem supports it. Regards, Fabrice. ZIGLIO, Frediano, VF-IT wrote: Hi, this patch add sparse file support under Windows (supported on NTFS). It add a -s flag to qemu create and qemu convert. It contain also a new implementation for ftruncate witch not fill manually space but only use SetEndOfFile (so to handle correctly sparse file) freddy77 -- -- ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] Patch: Fix rip-relative addressing for SSE compare
Robin Green wrote: This patch corrects a bug with rip-relative addressing for some SSE compare instructions on x86_64. This makes GNU wget work on x86_64. I made a more complete fix. Tell me if it works on your examples. Fabrice. ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] VMware Player
I was wondering if there's the capability to have a vmware player type functionality to qemu. This is just to allow playing or running images with out needing to create virtual machines. May this could be a separate product. What's everyones thought to this? Joe ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] VMware Player
On Wednesday 14 June 2006 15:55, Joe Lee wrote: I was wondering if there's the capability to have a vmware player type functionality to qemu. This is just to allow playing or running images with out needing to create virtual machines. May this could be a separate product. What's everyones thought to this? Why on earth would we want to make a crippled version of qemu? AFAIK Creating a VMware virtual machine is just making a config file. qemu doesn't have config files, so your question makes no sense. Paul ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu qemu-img.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 15:32:10 Modified files: . : qemu-img.c Log message: show real allocated disk image size on Windows (Frediano Ziglio) CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/qemu-img.c?cvsroot=qemur1=1.8r2=1.9 Patches: Index: qemu-img.c === RCS file: /sources/qemu/qemu/qemu-img.c,v retrieving revision 1.8 retrieving revision 1.9 diff -u -b -r1.8 -r1.9 --- qemu-img.c 24 Jul 2005 18:44:55 - 1.8 +++ qemu-img.c 14 Jun 2006 15:32:10 - 1.9 @@ -23,6 +23,10 @@ */ #include vl.h +#ifdef _WIN32 +#include windows.h +#endif + void *get_mmap_addr(unsigned long size) { return NULL; @@ -598,7 +602,19 @@ #ifdef _WIN32 static int64_t get_allocated_file_size(const char *filename) { +typedef DWORD (WINAPI * get_compressed_t)(const char *filename, DWORD *high); +get_compressed_t get_compressed; struct _stati64 st; + +/* WinNT support GetCompressedFileSize to determine allocate size */ +get_compressed = (get_compressed_t) GetProcAddress(GetModuleHandle(kernel32), GetCompressedFileSizeA); +if (get_compressed) { + DWORD high, low; + low = get_compressed(filename, high); + if (low != 0xlu || GetLastError() == NO_ERROR) + return (((int64_t) high) 32) + low; +} + if (_stati64(filename, st) 0) return -1; return st.st_size; ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu vl.h qemu-img.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 15:50:07 Modified files: . : vl.h qemu-img.c Log message: use C99 64 bit printf format to ease win32 porting CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/vl.h?cvsroot=qemur1=1.126r2=1.127 http://cvs.savannah.gnu.org/viewcvs/qemu/qemu-img.c?cvsroot=qemur1=1.9r2=1.10 Patches: Index: vl.h === RCS file: /sources/qemu/qemu/vl.h,v retrieving revision 1.126 retrieving revision 1.127 diff -u -b -r1.126 -r1.127 --- vl.h13 Jun 2006 15:57:21 - 1.126 +++ vl.h14 Jun 2006 15:50:07 - 1.127 @@ -58,6 +58,8 @@ _fullpath(resolved_path, path, _MAX_PATH); return resolved_path; } + +#define PRId64 I64d #endif #ifdef QEMU_TOOL Index: qemu-img.c === RCS file: /sources/qemu/qemu/qemu-img.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -b -r1.9 -r1.10 --- qemu-img.c 14 Jun 2006 15:32:10 - 1.9 +++ qemu-img.c 14 Jun 2006 15:50:07 - 1.10 @@ -164,12 +164,12 @@ static void get_human_readable_size(char *buf, int buf_size, int64_t size) { -char suffixes[NB_SUFFIXES] = KMGT; +static const char suffixes[NB_SUFFIXES] = KMGT; int64_t base; int i; if (size = 999) { -snprintf(buf, buf_size, %lld, (long long) size); +snprintf(buf, buf_size, % PRId64, size); } else { base = 1024; for(i = 0; i NB_SUFFIXES; i++) { @@ -179,8 +179,8 @@ suffixes[i]); break; } else if (size (1000 * base) || i == (NB_SUFFIXES - 1)) { -snprintf(buf, buf_size, %lld%c, - (long long) ((size + (base 1)) / base), +snprintf(buf, buf_size, % PRId64 %c, + ((size + (base 1)) / base), suffixes[i]); break; } @@ -373,7 +373,7 @@ printf(, backing_file=%s, base_filename); } -printf(, size=%lld kB\n, (long long) (size / 1024)); +printf(, size=% PRId64 kB\n, (int64_t) (size / 1024)); ret = bdrv_create(drv, filename, size / 512, base_filename, encrypted); if (ret 0) { if (ret == -ENOTSUP) { @@ -563,7 +563,8 @@ memset(buf + n * 512, 0, cluster_size - n * 512); if (is_not_zero(buf, cluster_size)) { if (qcow_compress_cluster(out_bs, sector_num, buf) != 0) -error(error while compressing sector %lld, sector_num); +error(error while compressing sector % PRId64, + sector_num); } sector_num += n; } @@ -680,10 +681,10 @@ allocated_size); printf(image: %s\n file format: %s\n - virtual size: %s (%lld bytes)\n + virtual size: %s (% PRId64 bytes)\n disk size: %s\n, filename, fmt_name, size_buf, - (long long) (total_sectors * 512), + (total_sectors * 512), dsize_buf); if (bdrv_is_encrypted(bs)) printf(encrypted: yes\n); ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu cocoa.m
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 15:53:24 Modified files: . : cocoa.m Log message: cocoa monitor fix regarding the handling of dead keys (Joachim Henke) CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/cocoa.m?cvsroot=qemur1=1.9r2=1.10 Patches: Index: cocoa.m === RCS file: /sources/qemu/qemu/cocoa.m,v retrieving revision 1.9 retrieving revision 1.10 diff -u -b -r1.9 -r1.10 --- cocoa.m 22 May 2006 21:25:04 - 1.9 +++ cocoa.m 14 Jun 2006 15:53:24 - 1.10 @@ -439,23 +439,40 @@ kbd_put_keycode(keycode 0x7f); //remove e0 bit in front /* handle monitor key events */ } else { +int keysym = 0; + switch([event keyCode]) { +case 115: +keysym = QEMU_KEY_HOME; +break; +case 117: +keysym = QEMU_KEY_DELETE; +break; +case 119: +keysym = QEMU_KEY_END; +break; case 123: -kbd_put_keysym(QEMU_KEY_LEFT); +keysym = QEMU_KEY_LEFT; break; case 124: -kbd_put_keysym(QEMU_KEY_RIGHT); +keysym = QEMU_KEY_RIGHT; break; case 125: -kbd_put_keysym(QEMU_KEY_DOWN); +keysym = QEMU_KEY_DOWN; break; case 126: -kbd_put_keysym(QEMU_KEY_UP); +keysym = QEMU_KEY_UP; break; default: -kbd_put_keysym([[event characters] characterAtIndex:0]); -break; +{ +NSString *ks = [event characters]; + +if ([ks length] 0) +keysym = [ks characterAtIndex:0]; +} } +if (keysym) +kbd_put_keysym(keysym); } } } ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] VMware Player
Why on earth would we want to make a crippled version of qemu? AFAIK Creating a VMware virtual machine is just making a config file. qemu doesn't have config files, so your question makes no sense. Well, I was not thinking or suggesting of a crippled qemu version. I asked the question because there are some software appliances which are pre-built and pre-configured apps that are built on a LAMP stack and packaged as a single image type file. This image file can be downloaded and run on a product similar to VMware Player. This is used for quick demo purposes of an application with out the need to have a full virtual machine. I am totally new to VM technologies but have played around with VMware and the player as well. So, my question was just an inquiry to see if that capability would make sense on a qemu based product that is open source. However, thanks and appreciated your comments/feedback! joe Paul Brook wrote: On Wednesday 14 June 2006 15:55, Joe Lee wrote: I was wondering if there's the capability to have a vmware player type functionality to qemu. This is just to allow playing or running images with out needing to create virtual machines. May this could be a separate product. What's everyones thought to this? Why on earth would we want to make a crippled version of qemu? AFAIK Creating a VMware virtual machine is just making a config file. qemu doesn't have config files, so your question makes no sense. Paul ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu qemu-doc.texi vl.c vl.h hw/pc.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 16:03:05 Modified files: . : qemu-doc.texi vl.c vl.h hw : pc.c Log message: -no-fd-bootchk option (Lonnie Mendez) CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/qemu-doc.texi?cvsroot=qemur1=1.92r2=1.93 http://cvs.savannah.gnu.org/viewcvs/qemu/vl.c?cvsroot=qemur1=1.187r2=1.188 http://cvs.savannah.gnu.org/viewcvs/qemu/vl.h?cvsroot=qemur1=1.127r2=1.128 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/pc.c?cvsroot=qemur1=1.58r2=1.59 Patches: Index: qemu-doc.texi === RCS file: /sources/qemu/qemu/qemu-doc.texi,v retrieving revision 1.92 retrieving revision 1.93 diff -u -b -r1.92 -r1.93 --- qemu-doc.texi 14 Jun 2006 12:36:31 - 1.92 +++ qemu-doc.texi 14 Jun 2006 16:03:05 - 1.93 @@ -228,6 +228,10 @@ the raw disk image you use is not written back. You can however force the write back by pressing @key{C-a s} (@pxref{disk_images}). [EMAIL PROTECTED] -no-fd-bootchk +Disable boot signature checking for floppy disks in Bochs BIOS. It may +be needed to boot from old floppy disks. + @item -m megs Set virtual RAM size to @var{megs} megabytes. Default is 128 MB. Index: vl.c === RCS file: /sources/qemu/qemu/vl.c,v retrieving revision 1.187 retrieving revision 1.188 diff -u -b -r1.187 -r1.188 --- vl.c25 May 2006 23:58:51 - 1.187 +++ vl.c14 Jun 2006 16:03:05 - 1.188 @@ -159,6 +159,7 @@ #define MAX_CPUS 1 #endif int acpi_enabled = 1; +int fd_bootchk = 1; /***/ /* x86 ISA bus support */ @@ -4634,6 +4635,9 @@ -cdrom file use 'file' as IDE cdrom image (cdrom is ide1 master)\n -boot [a|c|d] boot on floppy (a), hard disk (c) or CD-ROM (d)\n -snapshot write to temporary files instead of disk image files\n +#ifdef TARGET_I386 + -no-fd-bootchk disable boot signature checking for floppy disks\n +#endif -m megs set virtual RAM size to megs MB [default=%d]\n -smp n set the number of CPUs to 'n' [default=1]\n -nographic disable graphical output and redirect serial I/Os to console\n @@ -4765,6 +4769,9 @@ QEMU_OPTION_cdrom, QEMU_OPTION_boot, QEMU_OPTION_snapshot, +#ifdef TARGET_I386 +QEMU_OPTION_no_fd_bootchk, +#endif QEMU_OPTION_m, QEMU_OPTION_nographic, #ifdef HAS_AUDIO @@ -4828,6 +4835,9 @@ { cdrom, HAS_ARG, QEMU_OPTION_cdrom }, { boot, HAS_ARG, QEMU_OPTION_boot }, { snapshot, 0, QEMU_OPTION_snapshot }, +#ifdef TARGET_I386 +{ no-fd-bootchk, 0, QEMU_OPTION_no_fd_bootchk }, +#endif { m, HAS_ARG, QEMU_OPTION_m }, { nographic, 0, QEMU_OPTION_nographic }, { k, HAS_ARG, QEMU_OPTION_k }, @@ -5286,6 +5296,11 @@ case QEMU_OPTION_fdb: fd_filename[1] = optarg; break; +#ifdef TARGET_I386 +case QEMU_OPTION_no_fd_bootchk: +fd_bootchk = 0; +break; +#endif case QEMU_OPTION_no_code_copy: code_copy_enabled = 0; break; Index: vl.h === RCS file: /sources/qemu/qemu/vl.h,v retrieving revision 1.127 retrieving revision 1.128 diff -u -b -r1.127 -r1.128 --- vl.h14 Jun 2006 15:50:07 - 1.127 +++ vl.h14 Jun 2006 16:03:05 - 1.128 @@ -889,6 +889,7 @@ /* pc.c */ extern QEMUMachine pc_machine; extern QEMUMachine isapc_machine; +extern int fd_bootchk; void ioport_set_a20(int enable); int ioport_get_a20(void); Index: hw/pc.c === RCS file: /sources/qemu/qemu/hw/pc.c,v retrieving revision 1.58 retrieving revision 1.59 diff -u -b -r1.58 -r1.59 --- hw/pc.c 30 May 2006 01:48:12 - 1.58 +++ hw/pc.c 14 Jun 2006 16:03:05 - 1.59 @@ -193,6 +193,8 @@ case 'a': case 'b': rtc_set_memory(s, 0x3d, 0x01); /* floppy boot */ +if (!fd_bootchk) +rtc_set_memory(s, 0x38, 0x01); /* disable signature check */ break; default: case 'c': @@ -264,10 +266,6 @@ } } rtc_set_memory(s, 0x39, val); - -/* Disable check of 0x55AA signature on the last two bytes of - first sector of disk. XXX: make it the default ? */ -//rtc_set_memory(s, 0x38, 1); } void ioport_set_a20(int enable) ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] VMware Player
On Wednesday 14 June 2006 16:53, Joe Lee wrote: Why on earth would we want to make a crippled version of qemu? AFAIK Creating a VMware virtual machine is just making a config file. qemu doesn't have config files, so your question makes no sense. Well, I was not thinking or suggesting of a crippled qemu version. I asked the question because there are some software appliances which are pre-built and pre-configured apps that are built on a LAMP stack and packaged as a single image type file. This image file can be downloaded and run on a product similar to VMware Player. This is used for quick demo purposes of an application with out the need to have a full virtual machine. My impression was that these appliances are full virtual machines. It's just an OS install that's been stripped down and configured to run a single application on startup. Paul ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] VMware Player
You are right, and the idea is that the person have full interaction with the application environment including the underlying LAMP/WAMP stack that has been packaged. Users that want to quickly run and test-drive the appliance may not really need a full VM type application. Just something that could quickly run the image (appliance). Joe Paul Brook wrote: On Wednesday 14 June 2006 16:53, Joe Lee wrote: Why on earth would we want to make a crippled version of qemu? AFAIK Creating a VMware virtual machine is just making a config file. qemu doesn't have config files, so your question makes no sense. Well, I was not thinking or suggesting of a crippled qemu version. I asked the question because there are some software appliances which are pre-built and pre-configured apps that are built on a LAMP stack and packaged as a single image type file. This image file can be downloaded and run on a product similar to VMware Player. This is used for quick demo purposes of an application with out the need to have a full virtual machine. My impression was that these appliances are full virtual machines. It's just an OS install that's been stripped down and configured to run a single application on startup. Paul ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] VMware Player
Am Mittwoch, 14. Juni 2006 17:53 schrieb Joe Lee: Well, I was not thinking or suggesting of a crippled qemu version. I asked the question because there are some software appliances which are pre-built and pre-configured apps that are built on a LAMP stack and packaged as a single image type file. This image file can be downloaded and run on a product similar to VMware Player. Have a look at: http://www.oszoo.org/ This is used for quick demo purposes of an application with out the need to have a full virtual machine. Well, VMware Palyer is the complete VM with some (GUI-)features removed. Regards, Jan ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] VMware Player
On Wed, Jun 14, 2006 at 12:12:43PM -0400, Joe Lee wrote: You are right, and the idea is that the person have full interaction with the application environment including the underlying LAMP/WAMP stack that has been packaged. Users that want to quickly run and test-drive the appliance may not really need a full VM type application. Just something that could quickly run the image (appliance). An VMWare player appliance is really just a disk image config file. Running a disk image in QEMU is just a matter of executing qemu -hda /path/to/image Perhaps adding -m XXX to set increased RAM. This is no harder to do than using VMWare player vmplayer /path/to/appliance Since QEMU already understands VMWare disk images, there's even a good chance that QEMU can run a VMWare appliance image itself. So it looks to me that QEMU is already on a par with VMWare player in terms of being able to quickly simply test 'appliance' images. Dan. Joe Paul Brook wrote: On Wednesday 14 June 2006 16:53, Joe Lee wrote: Why on earth would we want to make a crippled version of qemu? AFAIK Creating a VMware virtual machine is just making a config file. qemu doesn't have config files, so your question makes no sense. Well, I was not thinking or suggesting of a crippled qemu version. I asked the question because there are some software appliances which are pre-built and pre-configured apps that are built on a LAMP stack and packaged as a single image type file. This image file can be downloaded and run on a product similar to VMware Player. This is used for quick demo purposes of an application with out the need to have a full virtual machine. My impression was that these appliances are full virtual machines. It's just an OS install that's been stripped down and configured to run a single application on startup. Paul ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel -- |=- Red Hat, Engineering, Emerging Technologies, Boston. +1 978 392 2496 -=| |=- Perl modules: http://search.cpan.org/~danberr/ -=| |=- Projects: http://freshmeat.net/~danielpb/ -=| |=- GnuPG: 7D3B9505 F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 -=| ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] Kernel-kqemu question
I am trying to use kqemu-1.3.0pre7 under few linux boxen I works for some guests and not for others. Is there a list of guests that work with -kernel-kqemu? (differences exist even for same kernel but different distributions..) Is any one using it for Windows98 guest? -ishwar ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] [PATCH] -redir revisited
Am 14.06.2006 um 15:57 schrieb Fabrice Bellard: Hi, The current behaviour of QEMU seems correct to me: TCP connections coming localhost are seen coming from 10.0.2.2 on the guest. Your problem may be related to an incorrect Apache configuration. Did I miss something ? No, Apache is configured correctly. The same with sshd, i can only connect to the guest by applying the patch. Network configuration is given by Qemu DHCP. Without the patch the host simply gets no answer from the guest service. Maybe this is Mac OS X specific? Regards, cordney* Regards, Fabrice. René Korthaus wrote: Hello list, i am recently working on integrating the -redir option into [Kju:] for Mac OS X and tested Apache access in debian guest from Mac OS X host which not worked for me. I discovered a discussion on the list in November 2005 where a patch was submitted against this (http:// lists.gnu.org/archive/html/qemu-devel/2005-11/ msg00419.html). I researched current qemu cvs and found out that the patch was integrated not complete but to 95%. There are two lines in slirp/ misc.c that need a change (patch attached). Tested to work with Mac OS X host and debian guest i could reach the Apache running inside the guest via localhost:8080 with the appropriate -redir command. Greetings, cordney* - --- ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] VMware Player
On 6/14/06, Joe Lee [EMAIL PROTECTED] wrote: Why on earth would we want to make a crippled version of qemu? AFAIK Creating a VMware virtual machine is just making a config file. qemu doesn't have config files, so your question makes no sense. Well, I was not thinking or suggesting of a crippled qemu version. I asked the question because there are some software appliances which are pre-built and pre-configured apps that are built on a LAMP stack and packaged as a single image type file. This image file can be downloaded and run on a product similar to VMware Player. This is used for quick demo purposes of an application with out the need to have a full virtual machine. I am totally new to VM technologies but have played around with VMware and the player as well. So, my question was just an inquiry to see if that capability would make sense on a qemu based product that is open source. However, thanks and appreciated your comments/feedback! ...(removed additional quoted material) If you are looking at something like rpath/rbuilder then qemu will run those images that are packaged as raw HDD. If you set the options right the running image has network access also. I am trying to figure out how to get the network access options working for the windows version of Qemu. ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] Simulation of MIPS interrupts?
IRQ exec (b) jump 0xbfc00380 do sth, issue second IRQ IRQ Are you sure this is actually an IRQ, not some other sort of exception? Paul ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] VMware Player
Am Mittwoch, 14. Juni 2006 18:21 schrieb Daniel P. Berrange: An VMWare player appliance is really just a disk image config file. Running a disk image in QEMU is just a matter of executing qemu -hda /path/to/image Perhaps adding -m XXX to set increased RAM. This is no harder to do than using VMWare player vmplayer /path/to/appliance Since QEMU already understands VMWare disk images, there's even a good chance that QEMU can run a VMWare appliance image itself. So it looks to me that QEMU is already on a par with VMWare player in terms of being able to quickly simply test 'appliance' images. Dan. To add to this and my previous mail, I'd like to point to ReactOS, which is distributed in various forms for simple testing, including a version bundled with qemu: http://www.reactos.org/xhtml/en/download.html With regards, Jan PS: As qemu is really small compared to VMware Player, it poses only very little overhead to bundle it with the image (one could even hack some sort of selfextracting executable qemu+imagefile) ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu/target-mips cpu.h mips-defs.h
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 16:49:24 Modified files: target-mips: cpu.h mips-defs.h Log message: mips config fixes (initial patch by Stefan Weil) CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/cpu.h?cvsroot=qemur1=1.7r2=1.8 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/mips-defs.h?cvsroot=qemur1=1.2r2=1.3 Patches: Index: cpu.h === RCS file: /sources/qemu/qemu/target-mips/cpu.h,v retrieving revision 1.7 retrieving revision 1.8 diff -u -b -r1.7 -r1.8 --- cpu.h 14 Jun 2006 12:56:19 - 1.7 +++ cpu.h 14 Jun 2006 16:49:24 - 1.8 @@ -3,9 +3,9 @@ #define TARGET_HAS_ICE 1 +#include config.h #include mips-defs.h #include cpu-defs.h -#include config.h #include softfloat.h typedef union fpr_t fpr_t; Index: mips-defs.h === RCS file: /sources/qemu/qemu/target-mips/mips-defs.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -b -r1.2 -r1.3 --- mips-defs.h 14 Jun 2006 12:56:19 - 1.2 +++ mips-defs.h 14 Jun 2006 16:49:24 - 1.3 @@ -6,10 +6,8 @@ /* If we want to use host float regs... */ //#define USE_HOST_FLOAT_REGS -enum { -MIPS_R4Kc = 0x00018000, -MIPS_R4Kp = 0x00018300, -}; +#define MIPS_R4Kc 0x00018000 +#define MIPS_R4Kp 0x00018300 /* Emulate MIPS R4Kc for now */ #define MIPS_CPU MIPS_R4Kc @@ -19,7 +17,7 @@ #define TARGET_LONG_BITS 32 /* real pages are variable size... */ #define TARGET_PAGE_BITS 12 -/* Uses MIPS R4Kx ehancements to MIPS32 architecture */ +/* Uses MIPS R4Kx enhancements to MIPS32 architecture */ #define MIPS_USES_R4K_EXT /* Uses MIPS R4Kc TLB model */ #define MIPS_USES_R4K_TLB @@ -30,10 +28,15 @@ * Define a major version 1, minor version 0. */ #define MIPS_FCR0 ((0 16) | (1 8) | (1 4) | 0) -/* Have config1, runs in big-endian mode, uses TLB */ -#define MIPS_CONFIG0\ -((1 CP0C0_M) | (0x000 CP0C0_K23) | (0x000 CP0C0_KU) | \ - (1 CP0C0_BE) | (0x001 CP0C0_MT) | (0x010 CP0C0_K0)) +/* Have config1, uses TLB */ +#define MIPS_CONFIG0_1 \ +((1 CP0C0_M) | (0 CP0C0_K23) | (0 CP0C0_KU) | \ + (1 CP0C0_MT) | (2 CP0C0_K0)) +#ifdef TARGET_WORDS_BIGENDIAN +#define MIPS_CONFIG0 (MIPS_CONFIG0_1 | (1 CP0C0_BE)) +#else +#define MIPS_CONFIG0 MIPS_CONFIG0_1 +#endif /* 16 TLBs, 64 sets Icache, 16 bytes Icache line, 2-way Icache, * 64 sets Dcache, 16 bytes Dcache line, 2-way Dcache, * no performance counters, watch registers present, no code compression, @@ -45,12 +48,12 @@ (0x000 CP0C1_DS) | (0x3 CP0C1_DL) | (0x01 CP0C1_DA) | \ (0 CP0C1_PC) | (1 CP0C1_WR) | (0 CP0C1_CA) | \ (1 CP0C1_EP) | (MIPS_USES_FPU CP0C1_FP)) -#elif defined (MIPS_CPU == MIPS_R4Kp) +#elif (MIPS_CPU == MIPS_R4Kp) /* 32 bits target */ #define TARGET_LONG_BITS 32 /* real pages are variable size... */ #define TARGET_PAGE_BITS 12 -/* Uses MIPS R4Kx ehancements to MIPS32 architecture */ +/* Uses MIPS R4Kx enhancements to MIPS32 architecture */ #define MIPS_USES_R4K_EXT /* Uses MIPS R4Km FPM MMU model */ #define MIPS_USES_R4K_FPM ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu/target-mips helper.c cpu.h
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 17:15:19 Modified files: target-mips: helper.c cpu.h Log message: use constants for TLB handling (Thiemo Seufer) CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/helper.c?cvsroot=qemur1=1.13r2=1.14 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/cpu.h?cvsroot=qemur1=1.8r2=1.9 Patches: Index: helper.c === RCS file: /sources/qemu/qemu/target-mips/helper.c,v retrieving revision 1.13 retrieving revision 1.14 diff -u -b -r1.13 -r1.14 --- helper.c22 May 2006 22:14:43 - 1.13 +++ helper.c14 Jun 2006 17:15:19 - 1.14 @@ -28,53 +28,56 @@ #include cpu.h #include exec-all.h +enum { +TLBRET_DIRTY = -4, +TLBRET_INVALID = -3, +TLBRET_NOMATCH = -2, +TLBRET_BADADDR = -1, +TLBRET_MATCH = 0 +}; + /* MIPS32 4K MMU emulation */ #ifdef MIPS_USES_R4K_TLB static int map_address (CPUState *env, target_ulong *physical, int *prot, target_ulong address, int rw, int access_type) { +target_ulong tag = address (TARGET_PAGE_MASK 1); +uint8_t ASID = env-CP0_EntryHi 0xFF; tlb_t *tlb; -target_ulong tag; -uint8_t ASID; int i, n; -int ret; -ret = -2; -tag = address 0xE000; -ASID = env-CP0_EntryHi 0xFF; for (i = 0; i MIPS_TLB_NB; i++) { tlb = env-tlb[i]; /* Check ASID, virtual page number size */ if ((tlb-G == 1 || tlb-ASID == ASID) tlb-VPN == tag address tlb-end2) { /* TLB match */ -n = (address 12) 1; +n = (address TARGET_PAGE_BITS) 1; /* Check access rights */ if (!(n ? tlb-V1 : tlb-V0)) -return -3; +return TLBRET_INVALID; if (rw == 0 || (n ? tlb-D1 : tlb-D0)) { -*physical = tlb-PFN[n] | (address 0xFFF); +*physical = tlb-PFN[n] | (address ~TARGET_PAGE_MASK); *prot = PAGE_READ; if (n ? tlb-D1 : tlb-D0) *prot |= PAGE_WRITE; -return 0; +return TLBRET_MATCH; } -return -4; +return TLBRET_DIRTY; } } - -return ret; +return TLBRET_NOMATCH; } #endif -int get_physical_address (CPUState *env, target_ulong *physical, int *prot, - target_ulong address, int rw, int access_type) +static int get_physical_address (CPUState *env, target_ulong *physical, +int *prot, target_ulong address, +int rw, int access_type) { -int user_mode; -int ret; - /* User mode can only access useg */ -user_mode = (env-hflags MIPS_HFLAG_MODE) == MIPS_HFLAG_UM; +int user_mode = (env-hflags MIPS_HFLAG_MODE) == MIPS_HFLAG_UM; +int ret = TLBRET_MATCH; + #if 0 if (logfile) { fprintf(logfile, user mode %d h %08x\n, @@ -82,8 +85,7 @@ } #endif if (user_mode address 0x7FFFUL) -return -1; -ret = 0; +return TLBRET_BADADDR; if (address 0x8000UL) { if (!(env-hflags MIPS_HFLAG_ERL)) { #ifdef MIPS_USES_R4K_TLB @@ -181,7 +183,7 @@ access_type = ACCESS_INT; if (env-user_mode_only) { /* user mode only emulation */ -ret = -2; +ret = TLBRET_NOMATCH; goto do_fault; } ret = get_physical_address(env, physical, prot, @@ -190,14 +192,15 @@ fprintf(logfile, %s address=%08x ret %d physical %08x prot %d\n, __func__, address, ret, physical, prot); } -if (ret == 0) { - ret = tlb_set_page(env, address ~0xFFF, physical ~0xFFF, prot, +if (ret == TLBRET_MATCH) { + ret = tlb_set_page(env, address TARGET_PAGE_MASK, + physical TARGET_PAGE_MASK, prot, is_user, is_softmmu); } else if (ret 0) { do_fault: switch (ret) { default: -case -1: +case TLBRET_BADADDR: /* Reference to kernel address from user mode or supervisor mode */ /* Reference to supervisor address from user mode */ if (rw) @@ -205,7 +208,7 @@ else exception = EXCP_AdEL; break; -case -2: +case TLBRET_NOMATCH: /* No TLB match for a mapped address */ if (rw) exception = EXCP_TLBS; @@ -213,14 +216,14 @@ exception = EXCP_TLBL; error_code = 1; break; -case -3: +case TLBRET_INVALID: /* TLB match with no valid bit */ if (rw) exception = EXCP_TLBS; else exception = EXCP_TLBL; break; -case -4: +case
Re: [Qemu-devel] VMware Player
Jan Marten Simons wrote: Have a look at: http://www.oszoo.org/ I wanted to suggest this too. Also check the Free Live OS Zoo, which I'm currently developing: http://www.oszoo.org/wiki/index.php/Free_Live_OS_Zoo -- |\/|55: Mattia Gentilini e 55 mila euri al mese |/_| 3-Year Degree in Computer Science | www.getfirefox.com |\/| University of Bologna, Italy | www.getthunderbird.com * Using Linux 2.6.16.16 powered by Galvatron (i686) * ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu Makefile Makefile.target cpu-exec.c dyngen...
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 17:32:25 Modified files: . : Makefile Makefile.target cpu-exec.c dyngen-exec.h dyngen.c dyngen.h vl.c fpu: softfloat-native.c target-mips: cpu.h Log message: Solaris/SPARC host port (Ben Taylor) CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/Makefile?cvsroot=qemur1=1.103r2=1.104 http://cvs.savannah.gnu.org/viewcvs/qemu/Makefile.target?cvsroot=qemur1=1.114r2=1.115 http://cvs.savannah.gnu.org/viewcvs/qemu/cpu-exec.c?cvsroot=qemur1=1.79r2=1.80 http://cvs.savannah.gnu.org/viewcvs/qemu/dyngen-exec.h?cvsroot=qemur1=1.27r2=1.28 http://cvs.savannah.gnu.org/viewcvs/qemu/dyngen.c?cvsroot=qemur1=1.43r2=1.44 http://cvs.savannah.gnu.org/viewcvs/qemu/dyngen.h?cvsroot=qemur1=1.10r2=1.11 http://cvs.savannah.gnu.org/viewcvs/qemu/vl.c?cvsroot=qemur1=1.188r2=1.189 http://cvs.savannah.gnu.org/viewcvs/qemu/fpu/softfloat-native.c?cvsroot=qemur1=1.3r2=1.4 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/cpu.h?cvsroot=qemur1=1.9r2=1.10 Patches: Index: Makefile === RCS file: /sources/qemu/qemu/Makefile,v retrieving revision 1.103 retrieving revision 1.104 diff -u -b -r1.103 -r1.104 --- Makefile14 Jun 2006 12:36:31 - 1.103 +++ Makefile14 Jun 2006 17:32:25 - 1.104 @@ -9,6 +9,9 @@ ifdef CONFIG_DARWIN CFLAGS+= -mdynamic-no-pic endif +ifeq ($(ARCH),sparc) +CFLAGS+=-mcpu=ultrasparc +endif LDFLAGS=-g LIBS= DEFINES+=-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE Index: Makefile.target === RCS file: /sources/qemu/qemu/Makefile.target,v retrieving revision 1.114 retrieving revision 1.115 diff -u -b -r1.114 -r1.115 --- Makefile.target 11 Jun 2006 13:32:58 - 1.114 +++ Makefile.target 14 Jun 2006 17:32:25 - 1.115 @@ -102,6 +102,11 @@ endif ifeq ($(ARCH),sparc) +ifeq ($(CONFIG_SOLARIS),yes) +CFLAGS+=-mcpu=ultrasparc -m32 -ffixed-g2 -ffixed-g3 +LDFLAGS+=-m32 +OP_CFLAGS=$(CFLAGS) -fno-delayed-branch -fno-omit-frame-pointer -ffixed-i0 +else CFLAGS+=-m32 -ffixed-g1 -ffixed-g2 -ffixed-g3 -ffixed-g6 LDFLAGS+=-m32 OP_CFLAGS=$(CFLAGS) -fno-delayed-branch -ffixed-i0 @@ -109,6 +114,7 @@ # -static is used to avoid g1/g3 usage by the dynamic linker LDFLAGS+=-Wl,-T,$(SRC_PATH)/sparc.ld -static endif +endif ifeq ($(ARCH),sparc64) CFLAGS+=-m64 -ffixed-g1 -ffixed-g2 -ffixed-g3 -ffixed-g6 Index: cpu-exec.c === RCS file: /sources/qemu/qemu/cpu-exec.c,v retrieving revision 1.79 retrieving revision 1.80 diff -u -b -r1.79 -r1.80 --- cpu-exec.c 22 May 2006 22:03:52 - 1.79 +++ cpu-exec.c 14 Jun 2006 17:32:25 - 1.80 @@ -253,7 +253,7 @@ uint32_t *saved_regwptr; #endif #endif -#ifdef __sparc__ +#if defined(__sparc__) !defined(HOST_SOLARIS) int saved_i7, tmp_T0; #endif int ret, interrupt_request; @@ -323,7 +323,7 @@ #if defined(reg_T2) saved_T2 = T2; #endif -#ifdef __sparc__ +#if defined(__sparc__) !defined(HOST_SOLARIS) /* we also save i7 because longjmp may not restore it */ asm volatile (mov %%i7, %0 : =r (saved_i7)); #endif @@ -447,7 +447,7 @@ T0 = 0; /* force lookup of first TB */ for(;;) { -#ifdef __sparc__ +#if defined(__sparc__) !defined(HOST_SOLARIS) /* g1 can be modified by some libc? functions */ tmp_T0 = T0; #endif @@ -467,7 +467,7 @@ do_interrupt(intno, 0, 0, 0, 1); /* ensure that no TB jump will be modified as the program flow was changed */ -#ifdef __sparc__ +#if defined(__sparc__) !defined(HOST_SOLARIS) tmp_T0 = 0; #else T0 = 0; @@ -486,7 +486,7 @@ env-error_code = 0; do_interrupt(env); env-interrupt_request = ~CPU_INTERRUPT_HARD; -#ifdef __sparc__ +#if defined(__sparc__) !defined(HOST_SOLARIS) tmp_T0 = 0; #else T0 = 0; @@ -497,7 +497,7 @@ env-error_code = 0; do_interrupt(env); env-interrupt_request = ~CPU_INTERRUPT_TIMER; -#ifdef __sparc__ +#if defined(__sparc__) !defined(HOST_SOLARIS) tmp_T0 = 0; #else T0 = 0; @@ -516,7 +516,7 @@ env-error_code = 0; do_interrupt(env); env-interrupt_request = ~CPU_INTERRUPT_HARD; -#ifdef __sparc__ +#if defined(__sparc__) !defined(HOST_SOLARIS) tmp_T0 = 0; #else T0 = 0; @@
[Qemu-devel] qemu Changelog
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 17:32:56 Modified files: . : Changelog Log message: update CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/Changelog?cvsroot=qemur1=1.116r2=1.117 Patches: Index: Changelog === RCS file: /sources/qemu/qemu/Changelog,v retrieving revision 1.116 retrieving revision 1.117 diff -u -b -r1.116 -r1.117 --- Changelog 3 May 2006 20:15:47 - 1.116 +++ Changelog 14 Jun 2006 17:32:56 - 1.117 @@ -1,3 +1,11 @@ +version 0.8.2: + + - PC VGA BIOS fixes + - switch to OpenBios for SPARC targets (Blue Swirl) + - VNC server fixes + - MIPS FPU support (Marius Groeger) + - Solaris/SPARC host support (Ben Taylor) + version 0.8.1: - USB tablet support (Brad Campbell, Anthony Liguori) ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] [PATCH] -redir revisited
René Korthaus wrote: Am 14.06.2006 um 15:57 schrieb Fabrice Bellard: Hi, The current behaviour of QEMU seems correct to me: TCP connections coming localhost are seen coming from 10.0.2.2 on the guest. Your problem may be related to an incorrect Apache configuration. Did I miss something ? No, Apache is configured correctly. The same with sshd, i can only connect to the guest by applying the patch. Network configuration is given by Qemu DHCP. Without the patch the host simply gets no answer from the guest service. Maybe this is Mac OS X specific? You should launch a tcpdump inside the guest OS and look at the IP addresses associated to the IP packets when you do a telnet from the host on the redirected host port. In any case, the patch you indicate is incorrect (our_addr is an IP address on the host network, not on the guest network), so a better solution must be found. Fabrice. ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] VMware Player
Thanks for the comments below, It seems that QEMU can easily be used to run images. I will start to look into the availabe GUI front-ends for QEMU. - joe Jan Marten Simons wrote: Am Mittwoch, 14. Juni 2006 18:21 schrieb Daniel P. Berrange: An VMWare player appliance is really just a disk image config file. Running a disk image in QEMU is just a matter of executing qemu -hda /path/to/image Perhaps adding -m XXX to set increased RAM. This is no harder to do than using VMWare player vmplayer /path/to/appliance Since QEMU already understands VMWare disk images, there's even a good chance that QEMU can run a VMWare appliance image itself. So it looks to me that QEMU is already on a par with VMWare player in terms of being able to quickly simply test 'appliance' images. Dan. To add to this and my previous mail, I'd like to point to ReactOS, which is distributed in various forms for simple testing, including a version bundled with qemu: http://www.reactos.org/xhtml/en/download.html With regards, Jan PS: As qemu is really small compared to VMware Player, it poses only very little overhead to bundle it with the image (one could even hack some sort of selfextracting executable qemu+imagefile) ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] qemu Makefile qemu-doc.texi hw/sun4m.c hw/sun4u...
On Wed, Jun 14, 2006 at 12:36:32PM +, Fabrice Bellard wrote: -QEMU uses the Proll, a PROM replacement available at [EMAIL PROTECTED]://people.redhat.com/@/zaitcev/linux/}. The required -QEMU-specific patches are included with the sources. +Since version 0.8.1, QEMU uses OpenBIOS [EMAIL PROTECTED]://www.openbios.org/}. OpenBIOS is a free (GPL v2) portable +firmware implementation. The goal is to implement a 100% IEEE +1275-1994 (referred to as Open Firmware) compliant firmware. Shouldn't that be 0.8.2? Cheers, -- Stuart Brady ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu/hw acpi.c acpi-dsdt.hex acpi-dsdt.dsl
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 18:17:04 Modified files: hw : acpi.c acpi-dsdt.hex acpi-dsdt.dsl Log message: more ACPI definition to keep Solaris Happy (Juergen Kiel) CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/hw/acpi.c?cvsroot=qemur1=1.4r2=1.5 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/acpi-dsdt.hex?cvsroot=qemur1=1.2r2=1.3 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/acpi-dsdt.dsl?cvsroot=qemur1=1.2r2=1.3 Patches: Index: acpi.c === RCS file: /sources/qemu/qemu/hw/acpi.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -b -r1.4 -r1.5 --- acpi.c 13 May 2006 16:11:23 - 1.4 +++ acpi.c 14 Jun 2006 18:17:04 - 1.5 @@ -240,7 +240,6 @@ pci_conf[0x0b] = 0x06; // bridge device pci_conf[0x0e] = 0x00; // header_type pci_conf[0x3d] = 0x01; // interrupt pin 1 -pci_conf[0x60] = 0x10; // release number pm_io_base = PM_IO_BASE; pci_conf[0x40] = pm_io_base | 1; @@ -253,6 +252,13 @@ register_ioport_write(SMI_CMD_IO_ADDR, 1, 1, smi_cmd_writeb, s); register_ioport_write(ACPI_DBG_IO_ADDR, 4, 4, acpi_dbg_writel, s); +/* XXX: which specification is used ? The i82731AB has different + mappings */ +pci_conf[0x5f] = (parallel_hds[0] != NULL ? 0x80 : 0) | 0x10; +pci_conf[0x63] = 0x60; +pci_conf[0x67] = (serial_hds[0] != NULL ? 0x08 : 0) | + (serial_hds[1] != NULL ? 0x90 : 0); + s-tmr_timer = qemu_new_timer(vm_clock, pm_tmr_timer, s); piix4_pm_state = s; } Index: acpi-dsdt.hex === RCS file: /sources/qemu/qemu/hw/acpi-dsdt.hex,v retrieving revision 1.2 retrieving revision 1.3 diff -u -b -r1.2 -r1.3 --- acpi-dsdt.hex 3 May 2006 23:13:13 - 1.2 +++ acpi-dsdt.hex 14 Jun 2006 18:17:04 - 1.3 @@ -5,15 +5,15 @@ * Copyright (C) 2000 - 2006 Intel Corporation * Supports ACPI Specification Revision 3.0a * - * Compilation of /usr/local/home/bellard/qemu-current/hw/acpi-dsdt.dsl - Thu May 4 01:07:59 2006 + * Compilation of /usr/local/home/bellard/qemu-current/hw/acpi-dsdt.dsl - Wed Jun 14 20:09:53 2006 * * C source code output * */ unsigned char AmlCode[] = { -0x44,0x53,0x44,0x54,0x73,0x06,0x00,0x00, /* DSDTs... */ -0x01,0x39,0x51,0x45,0x4D,0x55,0x00,0x00, /* 0008.9QEMU.. */ +0x44,0x53,0x44,0x54,0x32,0x08,0x00,0x00, /* DSDT2... */ +0x01,0x5B,0x51,0x45,0x4D,0x55,0x00,0x00, /* 0008.[QEMU.. */ 0x51,0x45,0x4D,0x55,0x44,0x53,0x44,0x54, /* 0010QEMUDSDT */ 0x01,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C, /* 0018INTL */ 0x21,0x04,0x06,0x20,0x10,0x4F,0x04,0x5C, /* 0020!.. .O.\ */ @@ -102,9 +102,9 @@ 0x50,0x4D,0x49,0x4E,0x74,0x50,0x4D,0x41, /* 02B8PMINtPMA */ 0x58,0x50,0x4D,0x49,0x4E,0x50,0x4C,0x45, /* 02C0XPMINPLE */ 0x4E,0x75,0x50,0x4C,0x45,0x4E,0xA4,0x4D, /* 02C8NuPLEN.M */ -0x45,0x4D,0x50,0x10,0x43,0x0A,0x2E,0x5F, /* 02D0EMP.C.._ */ +0x45,0x4D,0x50,0x10,0x42,0x26,0x2E,0x5F, /* 02D0EMP.B._ */ 0x53,0x42,0x5F,0x50,0x43,0x49,0x30,0x5B, /* 02D8SB_PCI0[ */ -0x82,0x46,0x09,0x49,0x53,0x41,0x5F,0x08, /* 02E0.F.ISA_. */ +0x82,0x43,0x20,0x49,0x53,0x41,0x5F,0x08, /* 02E0.C ISA_. */ 0x5F,0x41,0x44,0x52,0x0C,0x00,0x00,0x01, /* 02E8_ADR */ 0x00,0x5B,0x80,0x50,0x34,0x30,0x43,0x02, /* 02F0.[.P40C. */ 0x0A,0x60,0x0A,0x04,0x5B,0x82,0x44,0x04, /* 02F8.`..[.D. */ @@ -122,101 +122,157 @@ 0x41,0x00,0xA4,0x0A,0x0F,0x14,0x19,0x5F, /* 0358A.._ */ 0x43,0x52,0x53,0x00,0x08,0x54,0x4D,0x50, /* 0360CRS..TMP */ 0x5F,0x11,0x08,0x0A,0x05,0x22,0x00,0x10, /* 0368_.. */ -0x79,0x00,0xA4,0x54,0x4D,0x50,0x5F,0x10, /* 0370y..TMP_. */ -0x4F,0x2E,0x5F,0x53,0x42,0x5F,0x5B,0x81, /* 0378O._SB_[. */ -0x24,0x2F,0x03,0x50,0x43,0x49,0x30,0x49, /* 0380$/.PCI0I */ -0x53,0x41,0x5F,0x50,0x34,0x30,0x43,0x01, /* 0388SA_P40C. */ -0x50,0x52,0x51,0x30,0x08,0x50,0x52,0x51, /* 0390PRQ0.PRQ */ -0x31,0x08,0x50,0x52,0x51,0x32,0x08,0x50, /* 03981.PRQ2.P */ -0x52,0x51,0x33,0x08,0x5B,0x82,0x4E,0x0A, /* 03A0RQ3.[.N. */ -0x4C,0x4E,0x4B,0x41,0x08,0x5F,0x48,0x49, /* 03A8LNKA._HI */ -0x44,0x0C,0x41,0xD0,0x0C,0x0F,0x08,0x5F, /* 03B0D.A_ */ -0x55,0x49,0x44,0x01,0x08,0x5F,0x50,0x52, /* 03B8UID.._PR */ -0x53,0x11,0x09,0x0A,0x06,0x23,0xF8,0x1E, /* 03C0S#.. */ -0x18,0x79,0x00,0x14,0x1A,0x5F,0x53,0x54, /* 03C8.y..._ST */ -0x41,0x00,0x70,0x0A,0x0B,0x60,0xA0,0x0D, /* 03D0A.p..`.. */ -0x7B,0x0A,0x80,0x50,0x52,0x51,0x30,0x61, /* 03D8
[Qemu-devel] qemu configure Makefile.target
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 18:17:46 Modified files: . : configure Makefile.target Log message: allow ACPI table build CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/configure?cvsroot=qemur1=1.105r2=1.106 http://cvs.savannah.gnu.org/viewcvs/qemu/Makefile.target?cvsroot=qemur1=1.115r2=1.116 Patches: Index: configure === RCS file: /sources/qemu/qemu/configure,v retrieving revision 1.105 retrieving revision 1.106 diff -u -b -r1.105 -r1.106 --- configure 14 Jun 2006 15:21:14 - 1.105 +++ configure 14 Jun 2006 18:17:46 - 1.106 @@ -95,6 +95,7 @@ softmmu=yes user=no build_docs=no +build_acpi_tables=no uname_release= # OS specific @@ -240,6 +241,8 @@ ;; --enable-uname-release=*) uname_release=$optarg ;; + --enable-iasl) build_acpi_tables=yes + ;; esac done @@ -288,6 +291,7 @@ echo --fmod-lib path to FMOD library echo --fmod-inc path to FMOD includes echo --enable-uname-release=R Return R for uname -r in usermode emulation +echo --enable-iaslcompilation of ACPI tables with the IASL compiler echo echo NOTE: The object files are build at the place where configure is launched exit 1 @@ -708,6 +712,9 @@ if [ $build_docs = yes ] ; then echo BUILD_DOCS=yes $config_mak fi +if [ $build_acpi_tables = yes ] ; then + echo BUILD_ACPI_TABLES=yes $config_mak +fi # XXX: suppress that if [ $bsd = yes ] ; then Index: Makefile.target === RCS file: /sources/qemu/qemu/Makefile.target,v retrieving revision 1.115 retrieving revision 1.116 diff -u -b -r1.115 -r1.116 --- Makefile.target 14 Jun 2006 17:32:25 - 1.115 +++ Makefile.target 14 Jun 2006 18:17:46 - 1.116 @@ -490,8 +490,10 @@ acpi.o: acpi.c acpi-dsdt.hex -#$(SRC_PATH)/hw/acpi-dsdt.hex: acpi-dsdt.dsl -# iasl -tc -p $@ $ +ifdef BUILD_ACPI_TABLES +$(SRC_PATH)/hw/acpi-dsdt.hex: acpi-dsdt.dsl + iasl -tc -p $@ $ +endif ifeq ($(TARGET_ARCH), sh4) op.o: op.c op_mem.c cpu.h ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu Changelog
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 18:18:38 Modified files: . : Changelog Log message: update CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/Changelog?cvsroot=qemur1=1.117r2=1.118 Patches: Index: Changelog === RCS file: /sources/qemu/qemu/Changelog,v retrieving revision 1.117 retrieving revision 1.118 diff -u -b -r1.117 -r1.118 --- Changelog 14 Jun 2006 17:32:56 - 1.117 +++ Changelog 14 Jun 2006 18:18:38 - 1.118 @@ -1,5 +1,6 @@ version 0.8.2: + - ACPI support - PC VGA BIOS fixes - switch to OpenBios for SPARC targets (Blue Swirl) - VNC server fixes ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] qemu qemu-doc.texi
CVSROOT:/sources/qemu Module name:qemu Changes by: Fabrice Bellard bellard 06/06/14 18:35:18 Modified files: . : qemu-doc.texi Log message: update CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/qemu-doc.texi?cvsroot=qemur1=1.93r2=1.94 Patches: Index: qemu-doc.texi === RCS file: /sources/qemu/qemu/qemu-doc.texi,v retrieving revision 1.93 retrieving revision 1.94 diff -u -b -r1.93 -r1.94 --- qemu-doc.texi 14 Jun 2006 16:03:05 - 1.93 +++ qemu-doc.texi 14 Jun 2006 18:35:18 - 1.94 @@ -1423,7 +1423,7 @@ The number of peripherals is fixed in the architecture. -Since version 0.8.1, QEMU uses OpenBIOS +Since version 0.8.2, QEMU uses OpenBIOS @url{http://www.openbios.org/}. OpenBIOS is a free (GPL v2) portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (referred to as Open Firmware) compliant firmware. ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] [PATCH] -redir revisited
On 6/5/06, René Korthaus [EMAIL PROTECTED] wrote: I researched current qemu cvs and found out that the patch was integrated not complete but to 95%. There are two lines in slirp/ misc.c that need a change (patch attached). Tested to work with Mac OS X host and debian guest i could reach the Apache running inside the guest via localhost:8080 with the appropriate -redir command. It looks like kju: is based on qemu 0.8.0, which definitely had the bug you found. However, this was fixed in 0.8.1. Did you try a current version of qemu (0.8.1 or cvs) without your patch? I'm having trouble seeing how your patch could help solve the redir problem, since as far as I can tell, our_addr is no longer used for anything at all. Grepping for our_addr comes up with a buch of hits that are either #if 0'ed or irrelevant (e.g. get_dns_addr, which references our_addr before our_addr has been set). --Ed ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] VMware Player
Joe Lee wrote: Why on earth would we want to make a crippled version of qemu? AFAIK Creating a VMware virtual machine is just making a config file. qemu doesn't have config files, so your question makes no sense. Well, I was not thinking or suggesting of a crippled qemu version. I asked the question because there are some software appliances which are pre-built and pre-configured apps that are built on a LAMP stack and packaged as a single image type file. This image file can be downloaded and run on a product similar to VMware Player. This is used for quick demo purposes of an application with out the need to have a full virtual machine. What exactly do you mean / what is the actual use case for your idea? Maybe you mean something like this: http://www.damnsmalllinux.org/usb-qemu.html Btw. regarding your earlier question about a Qemu GUI similar to VMware: AFAIK at least two people have posted GUI patches for Qemu (look in the mailing list archive); so far there has been little response to that, and I suppose that these patches just need testing and some feedback (as they seem to be pretty intrusive, with changing the video output and the input handling stuff). Regards, Oliver ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
[Qemu-devel] [usb] correct defines for usb-msd massstoragereset and getmaxlun
lo list. This is a patch to correct the GetMaxLun and MassStorageReset defines in hw/usb-msd.c. The switch statement is checking against both request type and request. It was discussed briefly in #qemu. --- qemu/hw/usb-msd.c 2006-06-14 22:21:29.0 -0500 +++ qemu/hw/usb-msd.c 2006-06-14 22:23:09.0 -0500 @@ -19,8 +19,8 @@ #endif /* USB requests. */ -#define MassStorageReset 0xff -#define GetMaxLun 0xfe +#define MassStorageReset 0x21ff +#define GetMaxLun 0xa1fe enum USBMSDMode { USB_MSDM_CBW, /* Command Block. */ ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel
Re: [Qemu-devel] [usb] redo usb_host_find_device() routine - strtoul returning 0 for bus_num
On Wed, 2006-06-14 at 17:57 +0200, Fabrice Bellard wrote: Lonnie Mendez wrote: lo list. Trying usb_add host:3.2 was failing with: /proc/bus/usb/000/002: No such file or directory in the terminal that qemu was spawned from. It looks like strtoul was returning 0 for bus_num with the devname host:3.2. I rewrote the function to use sscanf in both cases. Can you confirm ? From the code, usb_host_find_device() is never called with host: as initial string (it is filtered before in vl.c). For whatever reason I am unable to reproduce this now. It may have been a contaminated binary. For what it's worth this is with a different distro. ___ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel