Re: [Qemu-devel] CVS build error
Philip Boulain wrote: Well done, guys. Someone's trying to build CVS QEMU on gcc4, and you're flaming them. This'll really encourage people to work on making development versions of QEMU work with gcc4. May I recommend to everybody involved to cool down a bit? Working on converting more of the target support to TCG would be more productive than this whole discussion. Thiemo
Re: [Qemu-devel] qemu on alpha
Gabriele Gorla wrote: It seems I cannot send email to the mailing list from my personal email account. Anyway... Here is what I discovered debugging the failure. Is there anyone who can direct me to the next step? Things have changed considerably in the last few weeks. The code generator is now TCG, which works currently only on x86 and x86_64 hosts. So you would need to create a TCG version for Alpha. Have a look at the tcg subdirectory in the CVS version. Thiemo
Re: [Qemu-devel] [PATCH, RFC, WIP] TCG for Qemu target Sparc32/64
Blue Swirl wrote: The attached patch enables most TCG ops for Qemu Sparc32/64 target. Sparc32 softmmu and linux-user are OK, but Sparc64 and Sparc32plus targets do not work. Comments? It would be nice to get rid of T2 usage in std (also stda and casa/casxa) but I don't know how to pass a 64-bit value from legacy op to TCG stores and loads on a 32-bit target and host. Index: qemu/target-sparc/translate.c === --- qemu.orig/target-sparc/translate.c2008-02-21 20:00:28.0 + +++ qemu/target-sparc/translate.c 2008-02-21 20:02:07.0 + @@ -44,6 +44,81 @@ #define JUMP_PC 2 /* dynamic pc value which takes only two values according to jump_pc[T2] */ +#ifdef TARGET_SPARC64 +#define TCG_TYPE_TL TCG_TYPE_I64 +#define tcg_gen_movi_tl tcg_gen_movi_i64 +#define tcg_gen_mov_tl tcg_gen_mov_i64 +#define tcg_gen_ld8u_tl tcg_gen_ld8u_i64 +#define tcg_gen_ld8s_tl tcg_gen_ld8s_i64 +#define tcg_gen_ld16u_tl tcg_gen_ld16u_i64 +#define tcg_gen_ld16s_tl tcg_gen_ld16s_i64 +#define tcg_gen_ld32u_tl tcg_gen_ld32u_i64 +#define tcg_gen_ld32s_tl tcg_gen_ld32s_i64 +#define tcg_gen_ld_tl tcg_gen_ld_i64 +#define tcg_gen_st8_tl tcg_gen_st8_i64 +#define tcg_gen_st16_tl tcg_gen_st16_i64 +#define tcg_gen_st32_tl tcg_gen_st32_i64 +#define tcg_gen_st_tl tcg_gen_st_i64 +#define tcg_gen_add_tl tcg_gen_add_i64 +#define tcg_gen_addi_tl tcg_gen_addi_i64 +#define tcg_gen_sub_tl tcg_gen_sub_i64 +#define tcg_gen_subi_tl tcg_gen_subi_i64 +#define tcg_gen_and_tl tcg_gen_and_i64 +#define tcg_gen_andi_tl tcg_gen_andi_i64 +#define tcg_gen_or_tl tcg_gen_or_i64 +#define tcg_gen_ori_tl tcg_gen_ori_i64 +#define tcg_gen_xor_tl tcg_gen_xor_i64 +#define tcg_gen_xori_tl tcg_gen_xori_i64 +#define tcg_gen_shl_tl tcg_gen_shl_i64 +#define tcg_gen_shli_tl tcg_gen_shli_i64 +#define tcg_gen_shr_tl tcg_gen_shr_i64 +#define tcg_gen_shri_tl tcg_gen_shri_i64 +#define tcg_gen_sar_tl tcg_gen_sar_i64 +#define tcg_gen_sari_tl tcg_gen_sari_i64 +#else +#define TCG_TYPE_TL TCG_TYPE_I32 +#define tcg_gen_movi_tl tcg_gen_movi_i32 +#define tcg_gen_mov_tl tcg_gen_mov_i32 +#define tcg_gen_ld8u_tl tcg_gen_ld8u_i32 +#define tcg_gen_ld8s_tl tcg_gen_ld8s_i32 +#define tcg_gen_ld16u_tl tcg_gen_ld16u_i32 +#define tcg_gen_ld16s_tl tcg_gen_ld16s_i32 +#define tcg_gen_ld32u_tl tcg_gen_ld_i32 +#define tcg_gen_ld32s_tl tcg_gen_ld_i32 +#define tcg_gen_ld_tl tcg_gen_ld_i32 +#define tcg_gen_st8_tl tcg_gen_st8_i32 +#define tcg_gen_st16_tl tcg_gen_st16_i32 +#define tcg_gen_st32_tl tcg_gen_st_i32 +#define tcg_gen_st_tl tcg_gen_st_i32 +#define tcg_gen_add_tl tcg_gen_add_i32 +#define tcg_gen_addi_tl tcg_gen_addi_i32 +#define tcg_gen_sub_tl tcg_gen_sub_i32 +#define tcg_gen_subi_tl tcg_gen_subi_i32 +#define tcg_gen_and_tl tcg_gen_and_i32 +#define tcg_gen_andi_tl tcg_gen_andi_i32 +#define tcg_gen_or_tl tcg_gen_or_i32 +#define tcg_gen_ori_tl tcg_gen_ori_i32 +#define tcg_gen_xor_tl tcg_gen_xor_i32 +#define tcg_gen_xori_tl tcg_gen_xori_i32 +#define tcg_gen_shl_tl tcg_gen_shl_i32 +#define tcg_gen_shli_tl tcg_gen_shli_i32 +#define tcg_gen_shr_tl tcg_gen_shr_i32 +#define tcg_gen_shri_tl tcg_gen_shri_i32 +#define tcg_gen_sar_tl tcg_gen_sar_i32 +#define tcg_gen_sari_tl tcg_gen_sari_i32 +#endif This whole lot should probably move to generic code (conditionalized on TARGET_LONG_BITS), I have the same code in my MIPS prototype. Thiemo
Re: [Qemu-devel] Patch for compiling with GCC 4
Alexander Graf wrote: On Feb 17, 2008, at 9:22 PM, Christian Roue wrote: Well, I somehow felt like it was a bit brutal and probably fixing the symptoms which is apparently the case. Looking more carefully, compile fails in : sh4-linux-user for function op_cmp_str_T0_T1 gcc optimization leads to a ret followed by a last assignement with a jump back. I guess dyngen hopes to find function epilogue as the last bytes. It's apparently the only function where it happens. I found that adding gcc option -fno-tree-dominator-opts for sh4 target avoids this (I suppose) unwanted optimization. It may be a bit brutal again ( disabling too many optims or wrong ones). May be the op_cmp_str_T0_T1 function can be rewritten to something that avoids this optimization. Am I on a better track ? This looks like the right approach to the symptoms. The real fix would be to move the sh4 target to TCG, The migration to tcg can be done gradually, fixing the immediate problem shouldn't get too involved. but for the meantime I believe this is the way to go. You can already find a lot of these unoptimization flags autodetected in the configure script, so I guess that'd be the right place for a patch. I added those as workarounds, they should rather go away than expand to cover even more flags. Thiemo
[Qemu-devel] qemu gdbstub.c linux-user/main.c linux-user/sig...
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 08/02/12 21:01:26 Modified files: . : gdbstub.c linux-user : main.c signal.c syscall.c linux-user/mips: target_signal.h linux-user/mips64: target_signal.h linux-user/mipsn32: target_signal.h target-mips: cpu.h op.c op_helper.c op_template.c translate.c Log message: Make MIPS MT implementation more cache friendly. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/gdbstub.c?cvsroot=qemur1=1.73r2=1.74 http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/main.c?cvsroot=qemur1=1.160r2=1.161 http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/signal.c?cvsroot=qemur1=1.55r2=1.56 http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/syscall.c?cvsroot=qemur1=1.163r2=1.164 http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/mips/target_signal.h?cvsroot=qemur1=1.4r2=1.5 http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/mips64/target_signal.h?cvsroot=qemur1=1.2r2=1.3 http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/mipsn32/target_signal.h?cvsroot=qemur1=1.1r2=1.2 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/cpu.h?cvsroot=qemur1=1.56r2=1.57 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/op.c?cvsroot=qemur1=1.91r2=1.92 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/op_helper.c?cvsroot=qemur1=1.77r2=1.78 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/op_template.c?cvsroot=qemur1=1.11r2=1.12 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/translate.c?cvsroot=qemur1=1.121r2=1.122
[Qemu-devel] qemu texi2pod.pl
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 08/02/04 14:47:50 Modified files: . : texi2pod.pl Log message: Update texi2pod.pl. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/texi2pod.pl?cvsroot=qemur1=1.2r2=1.3
Re: [Qemu-devel] @ref commands in man-page
Stuart Brady wrote: Hi, I've noticed that @ref{...} commands aren't handled properly in the qemu man page -- you can see @ref{pcsys_monitor}, @ref{vnc_security} and @ref{pcsys_keys} in the output. I'm not sure what the correct fix for this is -- any thoughts? texi2pod.pl fails to convert them properly, I commited an updated version. Thiemo
Re: [Qemu-devel] QEMU and gdb
Jan Kiszka wrote: Pierre Ficheux wrote: Hi all, I would like to debug QEMU with gdb. When starting qemu (x86) inside gdb, SDL window never appears, it there a way to fix it ? I dare to say your local environment is borken, not qemu :-. At least its not a generic issue (works fine here: qemu-cvs, built against openSUSE 10.3 devel packages) FWIW, I had a similiar problem with QEMU 0.9.0 on PPC/Linux host. It went away at some point before 0.9.1, I don't remember more details. Thiemo
Re: [Qemu-devel] [PATCH] CPPFLAGS+= in Makefile.target
Ronan Keryell wrote: On Fri, 25 Jan 2008 14:39:57 +, Paul Brook [EMAIL PROTECTED] said: Saying CPPFLAGS+= is much more convenient if for any reason the external build environment would like to pass unusual CPPFLAGS. Paul No. This doesn't do what you thing it does. The most common way Paul of overriding these variables is to pass them on the Paul commandline, i.e. make CPPFLAGS=-blah. This overrides all Paul assignments to that variable including +=. By the way, it is possible to improve the GNU make weirdness :-) by playing with stuff like: override CFLAGS += -g Cf section 6.7 of the documentation. IIRC the documentation warns against careless use of overrides. Hmmm... GNU make evolves more rapidly than my brain... :-) It's only a decade old or so. :-) Thiemo
Re: [Qemu-devel] qemu cpu-all.h cpu-exec.c qemu-doc.texi vl.c
Robert Reif wrote: Thiemo Seufer wrote: CVSROOT: /sources/qemu Module name: qemu Changes by: Thiemo Seufer ths 08/01/23 19:01:12 Modified files: . : cpu-all.h cpu-exec.c qemu-doc.texi vl.c Log message: Add option to disable TB cache, by Herve Poussineau. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/cpu-all.h?cvsroot=qemur1=1.81r2=1.82 http://cvs.savannah.gnu.org/viewcvs/qemu/cpu-exec.c?cvsroot=qemur1=1.130r2=1.131 http://cvs.savannah.gnu.org/viewcvs/qemu/qemu-doc.texi?cvsroot=qemur1=1.182r2=1.183 http://cvs.savannah.gnu.org/viewcvs/qemu/vl.c?cvsroot=qemur1=1.400r2=1.401 This gives the following compile errror: gcc -Wall -O2 -g -fno-strict-aliasing -fomit-frame-pointer -I. -I.. -I/home/wine/qemu/target-i386 -I/home/wine/qemu -MMD -MP -DNEED_CPU_H -I/home/wine/qemu/linux-user -I/home/wine/qemu/linux-user/i386 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I/home/wine/qemu/fpu -DHAS_AUDIO -DHAS_AUDIO_CHOICE -I/home/wine/qemu/slirp-c -o cpu-exec.o /home/wine/qemu/cpu-exec.c /home/wine/qemu/cpu-exec.c: In function `cmp1': /home/wine/qemu/cpu-exec.c:143: unable to find a register to spill in class `DIREG' Exactly which version of gcc is this? It appears to work fine with at least some gcc 3 versions. Thiemo
[Qemu-devel] qemu cpu-all.h cpu-exec.c qemu-doc.texi vl.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 08/01/23 19:01:12 Modified files: . : cpu-all.h cpu-exec.c qemu-doc.texi vl.c Log message: Add option to disable TB cache, by Herve Poussineau. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/cpu-all.h?cvsroot=qemur1=1.81r2=1.82 http://cvs.savannah.gnu.org/viewcvs/qemu/cpu-exec.c?cvsroot=qemur1=1.130r2=1.131 http://cvs.savannah.gnu.org/viewcvs/qemu/qemu-doc.texi?cvsroot=qemur1=1.182r2=1.183 http://cvs.savannah.gnu.org/viewcvs/qemu/vl.c?cvsroot=qemur1=1.400r2=1.401
[Qemu-devel] qemu cocoa.m
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 08/01/22 23:25:16 Modified files: . : cocoa.m Log message: Core Graphics support (cocoa.m rewrite), by Mike Kronenberg. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/cocoa.m?cvsroot=qemur1=1.14r2=1.15
Re: [Qemu-devel] qemu new is release, changelog ?
Jérôme PRIOR wrote: Hi, qemu 0.9.1 is released, but the changelog is complete ? On irc I read : use -disc ... so I launch my new qemu and I see lot of news options ! Is there other corrections done, not writting on che ChangeLog on the site, like better usage of qcow2 ? Only the most notable changes are mentioned in the ChangeLog. It seems some of them (-like -drive) were forgotten. Thiemo
Re: [Qemu-devel] [PATCH 2/5] Add a PowerPC branch detector
Alexander Graf wrote: PowerPCs have static instruction lengths, so writing an in-between brl detection is quite simple on this architecture. You are welcome to write something like this for any other platform, but if a compile doesn't trigger build errors on PowerPC, it shouldn't on other platforms either, as PowerPC has quite advanced branch instructions. This patch is not mandatory, makes debugging a lot easier though. Index: qemu-snapshot-2008-01-15_05/dyngen.c === --- qemu-snapshot-2008-01-15_05.orig/dyngen.c +++ qemu-snapshot-2008-01-15_05/dyngen.c @@ -1488,6 +1488,16 @@ void gen_code(const char *name, host_ulo if (get32((uint32_t *)p) != 0x4e800020) error(blr expected at the end of %s, name); copy_size = p - p_start; + +/* blr check for inline returns */ + +if(strstart(name, op_, NULL) !strstart(name, op_exit, NULL)) { +for(p=p_start; p p_end - 4; p+=4) { +if ((get32((uint32_t *)p) 0xfc00fff0) == 0x4c20) { +error(Inline blr detected in %s. Please append FORCE_RET to the function., name); +} +} +} Is check_ops.sh not enough for debugging micro-ops? Thiemo
[Qemu-devel] qemu s390-dis.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 08/01/17 13:56:59 Modified files: . : s390-dis.c Log message: Revert licensing to GPLv2 or later, by Ulrich Hecht. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/s390-dis.c?cvsroot=qemur1=1.3r2=1.4
Re: [Qemu-devel] [PATCH 1/5] Fix i386 Host
Alexander Graf wrote: [snip] Index: qemu/target-alpha/cpu.h === --- qemu.orig/target-alpha/cpu.h +++ qemu/target-alpha/cpu.h @@ -275,6 +275,8 @@ struct CPUAlphaState { * used to emulate 64 bits target on 32 bits hosts */ target_ulong t0, t1, t2; +#elif defined(GCC_BREAKS_T_REGISTER) +target_ulong t2; #endif /* */ double ft0, ft1, ft2; Index: qemu/target-alpha/exec.h === --- qemu.orig/target-alpha/exec.h +++ qemu/target-alpha/exec.h @@ -40,7 +40,11 @@ register struct CPUAlphaState *env asm(A register uint64_t T0 asm(AREG1); register uint64_t T1 asm(AREG2); +#ifdef GCC_BREAKS_T_REGISTER +#define T2 (env-t2) +#else register uint64_t T2 asm(AREG3); +#endif #endif /* TARGET_LONG_BITS HOST_LONG_BITS */ Please make the #ifdef'ery in cpu.h look the same as in exec.h. [snip] Index: qemu/target-sparc/exec.h === --- qemu.orig/target-sparc/exec.h +++ qemu/target-sparc/exec.h @@ -32,10 +32,14 @@ register uint32_t T2 asm(AREG4); #else #define REGWPTR env-regwptr +#ifdef HOST_I386 +#define T2 (env-t2) +#else register uint32_t T2 asm(AREG3); -#endif #define reg_T2 #endif +#endif +#endif Should also use GCC_BREAKS_T_REGISTER. Thiemo
Re: [Qemu-devel] [PATCH 2/5] Add a PowerPC branch detector
Johannes Schindelin wrote: Hi, On Thu, 17 Jan 2008, Thiemo Seufer wrote: Alexander Graf wrote: [snip] Is check_ops.sh not enough for debugging micro-ops? Basically it should be. PowerPC branching can be (regex) b..rl. Honestly I did not know about this script though and as it was not in the makefile, it did not tell me that something wrong was going on. This check costs near no time and has to be passed in order to build successfully. So either check_ops should be fixed (not only brl) and put into the Makefile.target or a check like this is good to have. Fixing check_ops is IMO preferable, OTOH I hope the whole problem goes away with the new code generator which is in the works. The code generated by that new code generator is substantially slower than what we have right now, so I am not so enthusiastic. I meant not qops but something Fabrice is working on. Which apparently has about the same speed. Thiemo
Re: [Qemu-devel] [PATCH 2/5] Add a PowerPC branch detector
Alexander Graf wrote: [snip] Is check_ops.sh not enough for debugging micro-ops? Basically it should be. PowerPC branching can be (regex) b..rl. Honestly I did not know about this script though and as it was not in the makefile, it did not tell me that something wrong was going on. This check costs near no time and has to be passed in order to build successfully. So either check_ops should be fixed (not only brl) and put into the Makefile.target or a check like this is good to have. Fixing check_ops is IMO preferable, OTOH I hope the whole problem goes away with the new code generator which is in the works. Thiemo
Re: [Qemu-devel] [patch] s390-dis.c license
Ricardo Almeida wrote: The problem is: you would have to ask every contributor whose code is still somewhere in the source code. That is tedious, and takes time (I do not even think that an email would suffice). From what I read once in a slashdot post (it's worth what is worth), it suffices a public announcement of the change and a deadline (something around 60 to 90 days). The announce could be in QEmu homepage and on this list... Slashdot isn't a reputable source for legal research. At least under european law the explicit consent of each contributor is required. Thiemo
Re: [Qemu-devel] [patch] s390-dis.c license
M. Warner Losh wrote: In message: [EMAIL PROTECTED] Bill C. Riemers [EMAIL PROTECTED] writes: : According to section 9 of the GPL, you would only have to contact : contributors for code which specified version 2 of the GPL and not later... I said exactly this in a previous message. At one point I recalled seeing some code that was gpl2-only in the tree. I can't find it now, so either I'm mistaken, or it has gone away. JFTR, there are hw/ac97.c, hw/acpi.c and hw/pl031.c. Thiemo
Re: [Qemu-devel] [patch] s390-dis.c license
andrzej zaborowski wrote: On 17/01/2008, Bill C. Riemers [EMAIL PROTECTED] wrote: According to section 9 of the GPL, you would only have to contact contributors for code which specified version 2 of the GPL and not later... In order to relicense all of qemu, yes, plus contributors of BSD-licensed code, of which there is much more than GPLv2-licensed. Actually, re-licensing BSD code as GPL is legal (but not nice). But there's no reason to relicense qemu. AFAIK there's no problem distributing qemu if it contains GPLv3, GPLv2 and BSD code just as there was no problem until now with GPLv2 and BSD code. So I'm not sure what this change helps. GPLv2 and GPLv3 have different provisions (e.g. the anti-DRM clause in GPLv3). Both exclude further restrictions of any sort. This makes them incompatible. Thiemo
Re: [Qemu-devel] QEMU static build
Salil Bijur wrote: [snip] But there are further linker errors with respect to libasound (for ALSA) and libSDL. This can be solved by adding -ldl, -lartsc, etc. for every dependency of these libs but would be very tedious, especially for libSDL. Any better solution? The question is if you really need SDL for your environment - if not you can just add --disable-sdl and do the same with everything else e.g. alsa that is missing but not really needed. I do need both alsa and SDL. Currently I'm getting the libraries from apt-get. Is it a good idea to rebuild them from sources? Why would you need SDL for userland emulation, I wonder? Thiemo
Re: [Qemu-devel] Qemu 0.9.1 stable branch
Johannes Schindelin wrote: Hi, On Wed, 9 Jan 2008, Lauro Ramos Venancio wrote: As discussed yesterday in the qemu irc channel, I've created a stable branch for qemu 0.9.1. This branch will follow two basic rules: 1. Only fixes will be applied. 2. Patches will be applied only after they are applied on qemu head. The repository is http://repo.or.cz/w/qemu/qemu_0_9_1_stable.git Any help (indicating patches that should be applied on this branch) is welcomed. Cool! My take on the patches which should be applied: 53f31fe3(Mac OS X build fix, by Andreas Faerber) 3b9b2ee4(Fix section switching buglet, by Edgar E. Iglesias) 9aef6b4c(Fix segfault caused by fall through, by Juergen Lock) AFAICT 727da25d(Fix broken absoluteness check for cabs.d.*) is not necessary, as it is for the MIPS target, which is not supposed to work right now. But I'm sure if I'm wrong, Thiemo will correct me right away. Why do you believe it is not supposed to work? The Malta emulation works just fine for me. Thiemo
[Qemu-devel] qemu/target-mips exec.h
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 08/01/09 12:03:22 Modified files: target-mips: exec.h Log message: Fix typo which broke MIPS32R2 64-bit FPU support. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/exec.h?cvsroot=qemur1=1.45r2=1.46
[Qemu-devel] qemu qemu-doc.texi
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 08/01/09 12:14:45 Modified files: . : qemu-doc.texi Log message: qemu manpage: describe arguments of usbdevice option, by Aurelien Jarno. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/qemu-doc.texi?cvsroot=qemur1=1.175r2=1.176
[Qemu-devel] qemu/linux-user main.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 08/01/08 14:39:44 Modified files: linux-user : main.c Log message: Fix section switching buglet, by Edgar E. Iglesias. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/main.c?cvsroot=qemur1=1.159r2=1.160
Re: [Qemu-devel] [RFC] ide: multi-profile DVD-ROM support v2.1
Carlo Marcelo Arenas Belon wrote: This is version 2.1 of the patch to re-implement the GET CONFIGURATION MMC-6 command as used by the IDE emulation to match the published SPEC and that was originally published in : http://lists.gnu.org/archive/html/qemu-devel/2007-11/msg00849.html Important changes from the previous patches : * Use a 99min CD size as the bigger possible sector count for CD profile * Don't recalculate the number of sectors * Use an inline helper function to set the profiles in a cleaner way * Avoid extra computations from constants except for #define values * Reduce the use of magic numbers and use defines when possible Remaining issues that will need to be addressed in future versions : * MMC-6 also applies to SCSI devices and so the definitions might need to be moved to a common header when that code is developed. * The use of the buffer might not be safe for unaligned access in some architectures, but the same applies to all other commands that are currently using the io_buffer directly as the hardware does. * The heuristic used tries to guess the kind of media from the size of it and is not that reliable for really small DVDs that could fit in a CD. * The response uses the io_buffer and is therefore limited to the size of it (not really a problem now when the maximum response size will be 20 bytes) but could be a problem when more features/profiles are implemented. * When using the host_device driver media changes could go unnoticed and result in the wrong profile being selected due to limitations in the current implementation of the ide emulation. Please add those caveats as comments to the source code. Thiemo
Re: [Qemu-devel] [PATCH 9/9] Bochsbios patch
Alexander Graf wrote: Several ACPI entries were missing from the bios and the new controllers need to be initialized properly. Furthermore COM2 is not being emulated, so Mac OS X broke trying to initialize it. The HPET ACPI table parts are optional. This patch is against the bochsbios. Should this rather be sent to the bochs ML? Yes please. (Maybe you want to keep this list Cc'ed.) Thiemo
[Qemu-devel] qemu/target-mips op_helper.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 08/01/08 18:11:09 Modified files: target-mips: op_helper.c Log message: Fix broken absoluteness check for cabs.d.*. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/op_helper.c?cvsroot=qemur1=1.76r2=1.77
[Qemu-devel] qemu vl.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 08/01/08 19:32:16 Modified files: . : vl.c Log message: Fix segfault caused by fall through, by Juergen Lock. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/vl.c?cvsroot=qemur1=1.394r2=1.395
[Qemu-devel] qemu configure
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 08/01/08 00:00:20 Modified files: . : configure Log message: Mac OS X build fix, by Andreas Faerber. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/configure?cvsroot=qemur1=1.178r2=1.179
Re: [Qemu-devel] [PATCH] ensure all invocations to bdrv_{read, write} use (uint8_t *) for its third parameter
Carlo Marcelo Arenas Belon wrote: Trivial fix that ensures that all buffers used for bdrv_read or bdrv_write are from an array of the uint8_t type Do we have a host where this actually makes a difference? Thiemo --- Index: block-vvfat.c === RCS file: /sources/qemu/qemu/block-vvfat.c,v retrieving revision 1.16 diff -u -p -r1.16 block-vvfat.c --- block-vvfat.c 24 Dec 2007 13:26:04 - 1.16 +++ block-vvfat.c 4 Jan 2008 07:57:20 - @@ -340,7 +340,7 @@ typedef struct BDRVVVFATState { int current_fd; mapping_t* current_mapping; unsigned char* cluster; /* points to current cluster */ -unsigned char* cluster_buffer; /* points to a buffer to hold temp data */ +uint8_t* cluster_buffer; /* points to a buffer to hold temp data */ unsigned int current_cluster; /* write support */ Index: block.c === RCS file: /sources/qemu/qemu/block.c,v retrieving revision 1.53 diff -u -p -r1.53 block.c --- block.c 24 Dec 2007 16:10:43 - 1.53 +++ block.c 4 Jan 2008 07:57:21 - @@ -459,7 +459,7 @@ int bdrv_commit(BlockDriverState *bs) BlockDriver *drv = bs-drv; int64_t i, total_sectors; int n, j; -unsigned char sector[512]; +uint8_t sector[512]; if (!drv) return -ENOMEDIUM;
Re: [Qemu-devel] [PATCH] ensure all invocations to bdrv_{read, write} use (uint8_t *) for its third parameter
Andreas Färber wrote: Am 04.01.2008 um 15:00 schrieb Samuel Thibault: Andreas Färber, le Fri 04 Jan 2008 14:41:29 +0100, a écrit : Am 04.01.2008 um 14:20 schrieb Thiemo Seufer: Carlo Marcelo Arenas Belon wrote: Trivial fix that ensures that all buffers used for bdrv_read or bdrv_write are from an array of the uint8_t type Do we have a host where this actually makes a difference? I believe Perl makes sizeof(char) checks, so there likely is some platform where sizeof(char) 1. The C standard says `When applied to an operand that has type char, unsigned char, or signed char, (or a qualified version thereof) the result is 1.' AFAIR this is C99 ... The standard maybe. But Win64 violates the C standards, too. ;) According to our department's ANSI C course, the only consistent rule is sizeof(char) = sizeof(short) = sizeof(int) = sizeof(long) without any concrete numbers. ... and this is C89. Thiemo
[Qemu-devel] qemu/target-mips helper.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 08/01/04 17:52:57 Modified files: target-mips: helper.c Log message: Handle some more exception types. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/helper.c?cvsroot=qemur1=1.62r2=1.63
[Qemu-devel] qemu Makefile.target hw/mips_malta.c hw/pflash_...
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 08/01/04 19:11:32 Modified files: . : Makefile.target hw : mips_malta.c pflash_cfi01.c Log message: Malta flash support. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/Makefile.target?cvsroot=qemur1=1.236r2=1.237 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/mips_malta.c?cvsroot=qemur1=1.53r2=1.54 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/pflash_cfi01.c?cvsroot=qemur1=1.4r2=1.5
[Qemu-devel] qemu/target-mips helper.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 08/01/03 21:26:24 Modified files: target-mips: helper.c Log message: Fix exception debug output. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/helper.c?cvsroot=qemur1=1.61r2=1.62
[Qemu-devel] qemu/target-mips cpu.h exec.h translate.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/30 15:36:58 Modified files: target-mips: cpu.h exec.h translate.c Log message: MIPS COP1X (and related) instructions, by Richard Sandiford. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/cpu.h?cvsroot=qemur1=1.55r2=1.56 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/exec.h?cvsroot=qemur1=1.44r2=1.45 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/translate.c?cvsroot=qemur1=1.119r2=1.120
Re: [Qemu-devel] MIPS COP1X (and related) instructions
Richard Sandiford wrote: Thiemo Seufer [EMAIL PROTECTED] writes: Richard Sandiford wrote: All MIPS COP1X instructions currently require the FPU to be in 64-bit mode. My understanding is that this is too restrictive, and that the base conditions are different for different revisions of the ISA: MIPS IV: COP1X instructions are available when the XX (CU3) bit of the status register is set. This bit can be set independently of UX and FR, and controls the core MIPS IV instructions as well as the FPU ones. This part is, sadly, not fully correct. It depends on the CPU implementation what effect, the CU3 bit has. IIRC it behaves on some CPUs as you describe, while it is a nop on others. Sorry. I'll take your word for it. (I don't know offhand which CPU did what there.) (FWIW, the r10k and VR5500 do as described, and I'm pretty sure the RM7000 and RM9000 did too.) Looks reasonable to me, apart from that one misassumption. What should the patch do instead for MIPS IV? Enable them unconditionally? Given that it is currently theoretical, as the only MIPS IV CPU supported is the VR5432: Add a comment to the MIPS IV test that it is too restrictive for some CPUs. Thiemo
[Qemu-devel] qemu/target-mips translate_init.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/28 12:35:05 Modified files: target-mips: translate_init.c Log message: Set FCR0.F64 for MIPS64R2-generic, by Richard Sandiford. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/translate_init.c?cvsroot=qemur1=1.35r2=1.36
Re: [Qemu-devel] MIPS COP1X (and related) instructions
Richard Sandiford wrote: All MIPS COP1X instructions currently require the FPU to be in 64-bit mode. My understanding is that this is too restrictive, and that the base conditions are different for different revisions of the ISA: MIPS IV: COP1X instructions are available when the XX (CU3) bit of the status register is set. This bit can be set independently of UX and FR, and controls the core MIPS IV instructions as well as the FPU ones. This part is, sadly, not fully correct. It depends on the CPU implementation what effect, the CU3 bit has. IIRC it behaves on some CPUs as you describe, while it is a nop on others. (I don't know offhand which CPU did what there.) Revision 1 of MIPS64: COP1X instructions are available when 64-bit operations (as opposed to 64-bit floating-point operations) are enabled. Revision 2 of MIPS32 and MIPS64: COP1X instructions are available when a 64-bit FPU is present (i.e. if FCR0.F64 is set). The same conditions apply to some non-COP1X instructions too, such as RECIP.fmt and RSQRT.fmt. Of course, some of the affected instructions really do require 64-bit mode, such as the paired-single ones. This part is AFAIK correct. The attached patch is one attempt to fix this. It's wrong if the description above is wrong. Because the conditions are different for different ISAs, I thought it was worth adding a MIPS_HFLAG_* to say whether COP1X (and related) instructions are available. This flag is directly associated with the nabla symbol in the MIPS32 and MIPS64 opcode tables. Any instructions that requires FR to be set (as enforced by check_cp1_64bitmode) is also affected by the nabla behaviour, so I've made check_cp1_64bitmode depend on both flags. I've added nabla checks for RECIP.S and RSQRT.S. My understanding is that the *.D forms are unpredictable when FR is clear, and that QEMU generally uses check_cp1_64bitmode for such instructions. I've therefore replaced the existing even register checks with check_cp1_64bitmode, rather than add a separate nabla test. I've replaced the single check_cp1_64bitmode calls in gen_flt3_ldst gen_flt3_arith with case-by-case checks. I've also made CABS.[SD] use nabla checks instead of check_cp1_64bitmode and added nabla checks to BC1ANY[24]. Looks reasonable to me, apart from that one misassumption. Thiemo
[Qemu-devel] qemu/target-mips cpu.h helper.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/26 19:34:03 Modified files: target-mips: cpu.h helper.c Log message: De-cruft exception definitions, and implement nicer debug output. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/cpu.h?cvsroot=qemur1=1.54r2=1.55 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/helper.c?cvsroot=qemur1=1.60r2=1.61
[Qemu-devel] qemu/target-mips translate_init.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/25 17:32:46 Modified files: target-mips: translate_init.c Log message: 5K and 20K are Release 1 CPUs. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/translate_init.c?cvsroot=qemur1=1.33r2=1.34
[Qemu-devel] qemu/target-mips exec.h mips-defs.h op.c op_hel...
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/25 20:46:56 Modified files: target-mips: exec.h mips-defs.h op.c op_helper.c translate.c translate_init.c Log message: Support for VR5432, and some of its special instructions. Original patch by Dirk Behme. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/exec.h?cvsroot=qemur1=1.43r2=1.44 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/mips-defs.h?cvsroot=qemur1=1.20r2=1.21 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/op.c?cvsroot=qemur1=1.89r2=1.90 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/op_helper.c?cvsroot=qemur1=1.75r2=1.76 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/translate.c?cvsroot=qemur1=1.118r2=1.119 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/translate_init.c?cvsroot=qemur1=1.34r2=1.35
[Qemu-devel] qemu/fpu softfloat-specialize.h
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/25 23:59:51 Modified files: fpu: softfloat-specialize.h Log message: Assortment of soft-float fixes, by Aurelien Jarno. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/fpu/softfloat-specialize.h?cvsroot=qemur1=1.5r2=1.6
[Qemu-devel] qemu/target-mips translate_init.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/24 14:33:57 Modified files: target-mips: translate_init.c Log message: Fix CCRes value for 20Kc. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/translate_init.c?cvsroot=qemur1=1.31r2=1.32
[Qemu-devel] qemu Makefile block-raw-posix.c block.c block.h...
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/24 16:10:43 Modified files: . : Makefile block-raw-posix.c block.c block.h block_int.h hw : esp.c lsi53c895a.c scsi-disk.h Log message: Real SCSI device passthrough (v4), by Laurent Vivier. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/Makefile?cvsroot=qemur1=1.138r2=1.139 http://cvs.savannah.gnu.org/viewcvs/qemu/block-raw-posix.c?cvsroot=qemur1=1.2r2=1.3 http://cvs.savannah.gnu.org/viewcvs/qemu/block.c?cvsroot=qemur1=1.52r2=1.53 http://cvs.savannah.gnu.org/viewcvs/qemu/block.h?cvsroot=qemur1=1.5r2=1.6 http://cvs.savannah.gnu.org/viewcvs/qemu/block_int.h?cvsroot=qemur1=1.15r2=1.16 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/esp.c?cvsroot=qemur1=1.31r2=1.32 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/lsi53c895a.c?cvsroot=qemur1=1.13r2=1.14 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/scsi-disk.h?cvsroot=qemur1=1.2r2=1.3
[Qemu-devel] qemu/hw scsi-generic.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/24 16:11:51 Added files: hw : scsi-generic.c Log message: scsi-generic implemnentation, missing in last commit. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/hw/scsi-generic.c?cvsroot=qemurev=1.1
Re: [Qemu-devel] qemu on alpha
Gabriele Gorla wrote: Hello, I recently downloaded qemu-0.9.0 and tried to compile it on alpha. I was not able to get any target to compile. I searched the mailing list but I was not able to find any recent information on the alpha host status. I am using gcc-3.3.6 on debian stable with upgraded kernel 2.6.22 I have tried with gcc-3.4 and 4.1 with similar results. I patched the line: #if defined (__x86_64__) || defined(__ia64) || defined(__alpha__) of file dyngen-exec.h to add the alpha to the 64-bit architectures to prevent redefinition of int64_t and uint64_t beside tons of warning about casting pointers to int of different sizes I get the following two fatal errors: qemu-0.9.0/target-i386/ops_template.h:278: warning: implicit declaration of function `GOTO_LABEL_PARAM' qemu-0.9.0/target-i386/translate.c:1898: error: too many arguments to function `gen_op_jnz_T0_label' qemu-0.9.0/target-i386/translate.c:1900: error: too many arguments to function `gen_op_jmp_label' in the translate.c file the function is called with: gen_op_jmp_label(l2); but in gen-op.h it is defined as: static inline void gen_op_jmp_label(void) { *gen_opc_ptr++ = INDEX_op_jmp_label; } same for gen_op_jnz_T0_label for GOTO_LABEL_PARAM the definition is completely missing from dyngen-exec.h (it is there for all other host CPUs except m68k) Unfortunately my understanding of the code is not sufficient to do anything useful at this point. I would really appreciate if someone could give me a hint. Current CVS has probably less broken alpha host support. Still, it is unlikely to work out of the box, fixing this requires some knowledge of alpha assembler. (E.g. for implementing a GOTO_LABEL_PARAM for alpha.) Thiemo
Re: [Qemu-devel] [PATCH 1/2] Real SCSI device passthrough (v5)
Laurent Vivier wrote: This patch allows to connect the virtual SCSI interface of Qemu to a real SCSI device of the host. Using the devices /dev/sg, it allows to send the SCSI commands from the virtual SCSI interface to the real device. It has been tested with a SATA disk and an ATA CD burner with ide-scsi module and wodim to burn a CD-RW. v5 allows to read movies from a DVD. It has been tested with PowerDVD and XP with unprotected DVD. Please update to current CVS, I committed v4 before I saw this one. Thiemo
[Qemu-devel] qemu/target-mips cpu.h helper.c op.c translate_...
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/25 03:13:56 Modified files: target-mips: cpu.h helper.c op.c translate_init.c Log message: Improved PABITS handling, and config register fixes. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/cpu.h?cvsroot=qemur1=1.53r2=1.54 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/helper.c?cvsroot=qemur1=1.59r2=1.60 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/op.c?cvsroot=qemur1=1.88r2=1.89 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/translate_init.c?cvsroot=qemur1=1.32r2=1.33
[Qemu-devel] qemu/target-mips op_helper.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/25 03:18:20 Modified files: target-mips: op_helper.c Log message: Avoid host FPE for overflowing division on MIPS, by Richard Sandiford. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/op_helper.c?cvsroot=qemur1=1.74r2=1.75
[Qemu-devel] qemu readline.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/17 20:31:43 Modified files: . : readline.c Log message: Handle history additions properly, by Andreas Schwab. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/readline.c?cvsroot=qemur1=1.7r2=1.8
[Qemu-devel] qemu host-utils.h
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/18 01:58:05 Modified files: . : host-utils.h Log message: Code formatting. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/host-utils.h?cvsroot=qemur1=1.4r2=1.5
[Qemu-devel] qemu/linux-user syscall.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/18 02:39:59 Modified files: linux-user : syscall.c Log message: Correct errno return for getsockopt(), by Thayne Harbaugh. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/syscall.c?cvsroot=qemur1=1.159r2=1.160
[Qemu-devel] qemu/linux-user syscall.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/18 02:41:04 Modified files: linux-user : syscall.c Log message: Correct errno return for setsockopt(), by Thayne Harbaugh. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/syscall.c?cvsroot=qemur1=1.160r2=1.161
[Qemu-devel] qemu vl.c hw/acpi.c hw/apic.c hw/cirrus_vga.c h...
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/16 23:41:11 Modified files: . : vl.c hw : acpi.c apic.c cirrus_vga.c dma.c i8254.c ide.c mc146818rtc.c pcnet.c ps2.c rtl8139.c sb16.c vga.c vmware_vga.c Log message: qemu_put signedness fixes, by Andre Przywara. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/vl.c?cvsroot=qemur1=1.384r2=1.385 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/acpi.c?cvsroot=qemur1=1.17r2=1.18 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/apic.c?cvsroot=qemur1=1.18r2=1.19 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/cirrus_vga.c?cvsroot=qemur1=1.29r2=1.30 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/dma.c?cvsroot=qemur1=1.16r2=1.17 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/i8254.c?cvsroot=qemur1=1.12r2=1.13 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/ide.c?cvsroot=qemur1=1.75r2=1.76 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/mc146818rtc.c?cvsroot=qemur1=1.15r2=1.16 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/pcnet.c?cvsroot=qemur1=1.20r2=1.21 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/ps2.c?cvsroot=qemur1=1.9r2=1.10 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/rtl8139.c?cvsroot=qemur1=1.17r2=1.18 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/sb16.c?cvsroot=qemur1=1.24r2=1.25 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/vga.c?cvsroot=qemur1=1.58r2=1.59 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/vmware_vga.c?cvsroot=qemur1=1.4r2=1.5
[Qemu-devel] qemu block.c block.h qemu-img.c hw/fdc.c hw/ide...
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/17 01:35:20 Modified files: . : block.c block.h qemu-img.c hw : fdc.c ide.c scsi-disk.c Log message: Fix bdrv_get_geometry to return uint64_t, by Andre Przywara. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/block.c?cvsroot=qemur1=1.50r2=1.51 http://cvs.savannah.gnu.org/viewcvs/qemu/block.h?cvsroot=qemur1=1.3r2=1.4 http://cvs.savannah.gnu.org/viewcvs/qemu/qemu-img.c?cvsroot=qemur1=1.25r2=1.26 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/fdc.c?cvsroot=qemur1=1.34r2=1.35 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/ide.c?cvsroot=qemur1=1.76r2=1.77 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/scsi-disk.c?cvsroot=qemur1=1.17r2=1.18
[Qemu-devel] qemu aes.c monitor.c vl.c hw/adlib.c hw/ide.c h...
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/17 03:15:52 Modified files: . : aes.c monitor.c vl.c hw : adlib.c ide.c pcnet.c Log message: Fix miscellaneous minor things, by Andre Przywara. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/aes.c?cvsroot=qemur1=1.4r2=1.5 http://cvs.savannah.gnu.org/viewcvs/qemu/monitor.c?cvsroot=qemur1=1.92r2=1.93 http://cvs.savannah.gnu.org/viewcvs/qemu/vl.c?cvsroot=qemur1=1.385r2=1.386 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/adlib.c?cvsroot=qemur1=1.10r2=1.11 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/ide.c?cvsroot=qemur1=1.77r2=1.78 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/pcnet.c?cvsroot=qemur1=1.21r2=1.22
Re: [Qemu-devel] floppy disk
Benjamin David Lunt wrote: Hi everyone, I only recently have started to use QEmu due to a request on the alt.os.development usenet group. My OS was not working on QEmu due to it would not recognize the (emulated) floppy. After a lot of testing, QEmu does not return the correct values for a Sense Interrupt command and the Status 0 byte. After looking over fdc.cc, someone has placed a hack write where it should return these values. I am just wondering if this hack is temporary or if it will be committed as code. That's the current state of the code in CVS. For a more detailed description, QEmu returns the value 0x20 while Bochs, VMware, and real hardware return the values 0xC0, 0xC1, 0xC2, and 0xC3, for each drive 1 - 4 respectively. I am asking for more information on this subject. The interrupt status handling in QEMU's FDC emulation looks bogus to me, patches to fix it are welcome. :-) Thiemo
[Qemu-devel] qemu qemu-doc.texi
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/17 03:38:27 Modified files: . : qemu-doc.texi Log message: Add closing table tag. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/qemu-doc.texi?cvsroot=qemur1=1.170r2=1.171
[Qemu-devel] qemu qemu-doc.texi
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/17 03:47:56 Modified files: . : qemu-doc.texi Log message: Update MIPS specific documentation. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/qemu-doc.texi?cvsroot=qemur1=1.171r2=1.172
[Qemu-devel] qemu/target-mips TODO
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/17 03:50:28 Modified files: target-mips: TODO Log message: Update MIPS TODO. The mipsnet failure is caused by a kernel bug. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/TODO?cvsroot=qemur1=1.17r2=1.18
[Qemu-devel] qemu/target-mips TODO
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/17 03:53:42 Modified files: target-mips: TODO Log message: MIPS TODO: mention unimplemented system controllers. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/TODO?cvsroot=qemur1=1.18r2=1.19
[Qemu-devel] qemu exec.c kqemu.c osdep.c qemu-common.h qemu-...
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/17 04:42:29 Modified files: . : exec.c kqemu.c osdep.c qemu-common.h qemu-img.c qemu_socket.h tap-win32.c vl.c audio : dsoundaudio.c slirp : slirp.h Log message: Use WIN32_LEAN_AND_MEAN, by Stefan Weil. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/exec.c?cvsroot=qemur1=1.119r2=1.120 http://cvs.savannah.gnu.org/viewcvs/qemu/kqemu.c?cvsroot=qemur1=1.19r2=1.20 http://cvs.savannah.gnu.org/viewcvs/qemu/osdep.c?cvsroot=qemur1=1.20r2=1.21 http://cvs.savannah.gnu.org/viewcvs/qemu/qemu-common.h?cvsroot=qemur1=1.3r2=1.4 http://cvs.savannah.gnu.org/viewcvs/qemu/qemu-img.c?cvsroot=qemur1=1.26r2=1.27 http://cvs.savannah.gnu.org/viewcvs/qemu/qemu_socket.h?cvsroot=qemur1=1.2r2=1.3 http://cvs.savannah.gnu.org/viewcvs/qemu/tap-win32.c?cvsroot=qemur1=1.7r2=1.8 http://cvs.savannah.gnu.org/viewcvs/qemu/vl.c?cvsroot=qemur1=1.387r2=1.388 http://cvs.savannah.gnu.org/viewcvs/qemu/audio/dsoundaudio.c?cvsroot=qemur1=1.4r2=1.5 http://cvs.savannah.gnu.org/viewcvs/qemu/slirp/slirp.h?cvsroot=qemur1=1.14r2=1.15
Re: [Qemu-devel] [PATCH] Capture network traffic to a tcpdump file - updated
Anthony Liguori wrote: Balazs Attila-Mihaly (Cd-MaN) wrote: Here goes v0.2 for my patch :-) Changes - now the option is a separate command line switch: -net capture,vlan=2,file=test.pcap Is it really necessary/useful to specify this on the command line since it can be controlled from the monitor? FWIW, I prefer to have symmetry between monitor and command line options (to help those use cases the programmer didn't think of). Thiemo
[Qemu-devel] qemu/hw piix_pci.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/09 23:02:39 Modified files: hw : piix_pci.c Log message: Remove leftover support for 82371FB (Step A1), by Carlo Marcelo Arenas Belon. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/hw/piix_pci.c?cvsroot=qemur1=1.14r2=1.15
[Qemu-devel] qemu/linux-user syscall.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/09 23:12:56 Modified files: linux-user : syscall.c Log message: Fix execve argc/envc counting, by Takashi Yoshii. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/syscall.c?cvsroot=qemur1=1.156r2=1.157
Re: [Qemu-devel] [PATCH 0/2] Real SCSI device passthrough
Laurent Vivier wrote: This series of patches allows to connect real SCSI device to the virtual SCSI controller of Qemu using the SCSI Generic interface (/dev/sg) for instance: qemu -hda my_disk.qcow2 -drive file=/dev/sg3,if=scsi Please update also the documentation to mention this example. [PATCH 1/2] SCSI cleanup This patch reworks the interface between SCSI controller and SCSI device. [PATCH 2/2] Real SCSI device passthrough (v3) This patch allows to connect the virtual SCSI interface of Qemu to a real SCSI device of the host. Laurent
[Qemu-devel] qemu/hw esp.c lsi53c895a.c scsi-disk.c scsi-dis...
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/10 02:58:34 Modified files: hw : esp.c lsi53c895a.c scsi-disk.c scsi-disk.h usb-msd.c Log message: SCSI cleanup, by Laurent Vivier. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/hw/esp.c?cvsroot=qemur1=1.30r2=1.31 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/lsi53c895a.c?cvsroot=qemur1=1.12r2=1.13 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/scsi-disk.c?cvsroot=qemur1=1.16r2=1.17 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/scsi-disk.h?cvsroot=qemur1=1.1r2=1.2 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/usb-msd.c?cvsroot=qemur1=1.12r2=1.13
[Qemu-devel] qemu cpu-defs.h exec.c target-arm/helper.c targ...
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/09 02:22:58 Modified files: . : cpu-defs.h exec.c target-arm : helper.c target-i386: helper2.c target-m68k: helper.c target-mips: translate.c target-ppc : helper.c target-sparc : translate.c Log message: Handle cpu_model in copy_cpu(), by Kirill A. Shutemov. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/cpu-defs.h?cvsroot=qemur1=1.27r2=1.28 http://cvs.savannah.gnu.org/viewcvs/qemu/exec.c?cvsroot=qemur1=1.116r2=1.117 http://cvs.savannah.gnu.org/viewcvs/qemu/target-arm/helper.c?cvsroot=qemur1=1.28r2=1.29 http://cvs.savannah.gnu.org/viewcvs/qemu/target-i386/helper2.c?cvsroot=qemur1=1.58r2=1.59 http://cvs.savannah.gnu.org/viewcvs/qemu/target-m68k/helper.c?cvsroot=qemur1=1.11r2=1.12 http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/translate.c?cvsroot=qemur1=1.116r2=1.117 http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/helper.c?cvsroot=qemur1=1.98r2=1.99 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/translate.c?cvsroot=qemur1=1.84r2=1.85
[Qemu-devel] qemu/linux-user syscall.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/09 02:37:05 Modified files: linux-user : syscall.c Log message: copy_{to,from}_user_timeval() update, by Thayne Harbaugh. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/syscall.c?cvsroot=qemur1=1.155r2=1.156
[Qemu-devel] qemu/target-i386 helper2.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/09 02:43:19 Modified files: target-i386: helper2.c Log message: Fix spelling typo, by Dan Kenigsberg. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-i386/helper2.c?cvsroot=qemur1=1.59r2=1.60
Re: [Qemu-devel] [PATCH] Allow setting the vendor_id string with x86's -cpu option
Dan Kenigsberg wrote: Having AuthenticAMD hard-coded is nice, but allowing the user to impersonate whatever CPU she wants is even nicer. Also, an English typo (due to me) is corrected. Dan. --- a/target-i386/helper2.c +++ b/target-i386/helper2.c @@ -254,8 +254,17 @@ static int cpu_x86_find_by_name(x86_def_t *x86_cpu_def, const char *cpu_model) goto error; } x86_cpu_def-stepping = stepping; +} else if (!strcmp(featurestr, vendor)) { +if (strlen(val) != 12) { +fprintf(stderr, vendor string must be 12 chars long\n); +x86_cpu_def = 0; +goto error; +} +x86_cpu_def-vendor1 = *(uint32_t *)val; +x86_cpu_def-vendor2 = *(uint32_t *)(val + 4); +x86_cpu_def-vendor3 = *(uint32_t *)(val + 8); Endianness bug. Thiemo
[Qemu-devel] qemu/hw ide.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/09 05:01:53 Modified files: hw : ide.c Log message: Fix Win98SE MyComputer regression, by Ben Taylor. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/hw/ide.c?cvsroot=qemur1=1.72r2=1.73
[Qemu-devel] qemu Makefile configure
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/09 05:10:03 Modified files: . : Makefile configure Log message: SH4 big endian configuration, by Tomoyoshi Asano. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/Makefile?cvsroot=qemur1=1.136r2=1.137 http://cvs.savannah.gnu.org/viewcvs/qemu/configure?cvsroot=qemur1=1.176r2=1.177
[Qemu-devel] qemu/hw mips_r4k.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/07 01:13:38 Modified files: hw : mips_r4k.c Log message: Remove broken ds1225y init, it is useless on this machine anyway. Spotted by Atsushi Nemoto. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/hw/mips_r4k.c?cvsroot=qemur1=1.56r2=1.57
[Qemu-devel] qemu monitor.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/03 17:05:38 Modified files: . : monitor.c Log message: The profiler need qemu-timer.h CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/monitor.c?cvsroot=qemur1=1.90r2=1.91
Re: [Qemu-devel] [RFC] Ensure SIGALRM causes a cpu_loop_exit
andrzej zaborowski wrote: On 24/11/2007, Paul Brook [EMAIL PROTECTED] wrote: There is a chance that when using unix or dynticks clock, the signal arrives when no cpu is executing. How about this version, this one touches vl.c only: Any reason why this isn't in CVS? Thiemo --- a/vl.c +++ b/vl.c @@ -236,6 +236,10 @@ const char *prom_envs[MAX_PROM_ENVS]; struct bt_piconet_s *local_piconet; struct modem_ops_s modem_ops; +static CPUState *cur_cpu; +static CPUState *next_cpu; +static int event_pending; + #define TFR(expr) do { if ((expr) != -1) break; } while (errno == EINTR) /***/ @@ -1183,16 +1187,16 @@ static void host_alarm_handler(int host_signum) struct qemu_alarm_win32 *data = ((struct qemu_alarm_timer*)dwUser)-priv; SetEvent(data-host_alarm); #endif -CPUState *env = cpu_single_env; -if (env) { -/* stop the currently executing cpu because a timer occured */ -cpu_interrupt(env, CPU_INTERRUPT_EXIT); +CPUState *env = next_cpu; + +/* stop the currently executing cpu because a timer occured */ +cpu_interrupt(env, CPU_INTERRUPT_EXIT); #ifdef USE_KQEMU -if (env-kqemu_enabled) { -kqemu_cpu_interrupt(env); -} -#endif +if (env-kqemu_enabled) { +kqemu_cpu_interrupt(env); } +#endif +event_pending = 1; } } @@ -7168,8 +7172,6 @@ void main_loop_wait(int timeout) } -static CPUState *cur_cpu; - static int main_loop(void) { int ret, timeout; @@ -7179,15 +7181,13 @@ static int main_loop(void) CPUState *env; cur_cpu = first_cpu; +next_cpu = cur_cpu-next_cpu ?: first_cpu; for(;;) { if (vm_running) { -env = cur_cpu; for(;;) { /* get next cpu */ -env = env-next_cpu; -if (!env) -env = first_cpu; +env = next_cpu; #ifdef CONFIG_PROFILER ti = profile_getclock(); #endif @@ -7195,6 +7195,12 @@ static int main_loop(void) #ifdef CONFIG_PROFILER qemu_time += profile_getclock() - ti; #endif +next_cpu = env-next_cpu ?: first_cpu; +if (event_pending) { +ret = EXCP_INTERRUPT; +event_pending = 0; +break; +} if (ret == EXCP_HLT) { /* Give the next CPU a chance to run. */ cur_cpu = env;
[Qemu-devel] qemu/hw adlib.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/02 17:17:46 Modified files: hw : adlib.c Log message: Add missing include, by Sylvain Petreolle. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/hw/adlib.c?cvsroot=qemur1=1.8r2=1.9
Re: [Qemu-devel] qemu block-vvfat.c block.c console.c dyngen.c e...
Igor Kovalenko wrote: On Nov 18, 2007 4:44 AM, Paul Brook [EMAIL PROTECTED] wrote: CVSROOT:/sources/qemu Module name:qemu Changes by: Paul Brook pbrook 07/11/18 01:44:38 Modified files: . : block-vvfat.c block.c console.c dyngen.c elf_ops.h i386-dis.c loader.c monitor.c osdep.c qemu-char.h translate-op.c usb-linux.c vl.c vnc.c x_keymap.c audio : audio.c hw : arm_sysctl.c arm_timer.c gt64xxx.c i8259.c ide.c mc146818rtc.c mcf_fec.c mips_malta.c ne2000.c nvram.h omap.c omap.h omap_lcdc.c parallel.c pc.c pci.c pckbd.c piix_pci.c pl061.c pl190.c pxa2xx_lcd.c pxa2xx_pcmcia.c realview_gic.c rtl8139.c sd.c sh_serial.c sh_timer.c smbus.c stellaris.c usb-ohci.c wm8750.c target-i386: helper.c Log message: Add statics and missing #includes for prototypes. Here is a patch to hw/rtl8139.c which makes it reuse eeprom implementation available in eeprom93xx. Introduces some warnings. I figure reading the eeprom contents back is done incorrectly. /home/ths/qemu/qemu-work/hw/rtl8139.c: In function `rtl8139_load': /home/ths/qemu/qemu-work/hw/rtl8139.c:3072: warning: passing arg 2 of `qemu_get_8s' from incompatible pointer type /home/ths/qemu/qemu-work/hw/rtl8139.c:3073: warning: passing arg 2 of `qemu_get_be16s' from incompatible pointer type /home/ths/qemu/qemu-work/hw/rtl8139.c:3074: warning: passing arg 2 of `qemu_get_be16s' from incompatible pointer type /home/ths/qemu/qemu-work/hw/rtl8139.c:3076: warning: passing arg 2 of `qemu_get_8s' from incompatible pointer type /home/ths/qemu/qemu-work/hw/rtl8139.c:3077: warning: passing arg 2 of `qemu_get_8s' from incompatible pointer type /home/ths/qemu/qemu-work/hw/rtl8139.c:3078: warning: passing arg 2 of `qemu_get_8s' from incompatible pointer type /home/ths/qemu/qemu-work/hw/rtl8139.c:3079: warning: passing arg 2 of `qemu_get_8s' from incompatible pointer type /home/ths/qemu/qemu-work/hw/rtl8139.c:3063: warning: unused variable `eeprom_contents' Thiemo
Re: [Qemu-devel] another patch against head
Hotmail wrote: [snip] Index: Makefile === RCS file: /sources/qemu/qemu/Makefile,v retrieving revision 1.136 diff -u -r1.136 Makefile --- Makefile 24 Nov 2007 23:35:07 - 1.136 +++ Makefile 30 Nov 2007 15:29:08 - @@ -15,7 +15,11 @@ CPPFLAGS += -I. -I$(SRC_PATH) -MMD -MP CPPFLAGS += -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE +ifdef CONFIG_WIN32 +LIBS= -lmingw32 -mno-cygwin This should be done in the configure script via OS_LDFLAGS. +else LIBS= +endif ifdef CONFIG_STATIC BASE_LDFLAGS += -static endif Index: cocoa.m === RCS file: /sources/qemu/qemu/cocoa.m,v retrieving revision 1.14 diff -u -r1.14 cocoa.m --- cocoa.m 17 Nov 2007 17:14:37 - 1.14 +++ cocoa.m 30 Nov 2007 15:29:09 - @@ -751,7 +751,7 @@ [op setMessage:@Select the disk image you want to boot.\n\nHit the \Cancel\ button to quit]; -[op beginSheetForDirectory:nil file:nil types:[NSArray arrayWithObjects:@img,@iso,@dmg,@qcow,@cow,@cloop,@vmdk,nil] +[op beginSheetForDirectory:nil file:nil types:[NSArray arrayWithObjects:@img,@iso,@dmg,@qcow,@qcow2,@cow,@cloop,@vmdk,nil] That's still incomplete WT to object formats supported, I leave that out until somebody actually completed and tested it. modalForWindow:window modalDelegate:self didEndSelector:@selector(openPanelDidEnd:returnCode:contextInfo:) contextInfo:NULL]; } Index: monitor.c === RCS file: /sources/qemu/qemu/monitor.c,v retrieving revision 1.87 diff -u -r1.87 monitor.c --- monitor.c 18 Nov 2007 01:44:35 - 1.87 +++ monitor.c 30 Nov 2007 15:29:10 - @@ -29,6 +29,7 @@ #include gdbstub.h #include net.h #include qemu-char.h +#include qemu-timer.h I don't see where the monitor would use a timer. Can you post the compiler error message which is solved by this include? #include sysemu.h #include console.h #include block.h Index: hw/adlib.c === RCS file: /sources/qemu/qemu/hw/adlib.c,v retrieving revision 1.8 diff -u -r1.8 adlib.c --- hw/adlib.c17 Nov 2007 17:14:40 - 1.8 +++ hw/adlib.c30 Nov 2007 15:29:10 - @@ -23,7 +23,9 @@ */ #include assert.h #include hw.h +#include audio/audio.h Added. #include audiodev.h +#include qemu-timer.h Only needed for #define DEBUG, I added a variant which takes this into account. Thiemo
[Qemu-devel] qemu/hw adlib.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/02 17:47:33 Modified files: hw : adlib.c Log message: Include qemu-timer.h iff DEBUG is defined. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/hw/adlib.c?cvsroot=qemur1=1.9r2=1.10
[Qemu-devel] qemu/hw mips_pica61.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/03 02:17:39 Modified files: hw : mips_pica61.c Log message: Fix floppy initialization, by Laurent Vivier. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/hw/mips_pica61.c?cvsroot=qemur1=1.15r2=1.16
[Qemu-devel] qemu Makefile.target hw/mainstone.c hw/mainston...
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/02 02:20:03 Modified files: . : Makefile.target hw : mainstone.c Added files: hw : mainstone.h mst_fpga.c Log message: Mainstone re-org, by Armin Kuster. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/Makefile.target?cvsroot=qemur1=1.229r2=1.230 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/mainstone.c?cvsroot=qemur1=1.2r2=1.3 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/mainstone.h?cvsroot=qemurev=1.1 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/mst_fpga.c?cvsroot=qemurev=1.1
[Qemu-devel] qemu monitor.c sysemu.h vl.c hw/esp.c hw/gumsti...
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/02 04:51:10 Modified files: . : monitor.c sysemu.h vl.c hw : esp.c gumstix.c integratorcp.c lsi53c895a.c mainstone.c mips_malta.c mips_pica61.c mips_r4k.c nand.c omap.c pc.c pci.h ppc405_boards.c ppc_chrp.c ppc_oldworld.c ppc_prep.c pxa2xx.c realview.c spitz.c stellaris.c sun4m.c sun4m.h sun4u.c versatilepb.c Log message: Add -drive parameter, by Laurent Vivier. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/monitor.c?cvsroot=qemur1=1.88r2=1.89 http://cvs.savannah.gnu.org/viewcvs/qemu/sysemu.h?cvsroot=qemur1=1.1r2=1.2 http://cvs.savannah.gnu.org/viewcvs/qemu/vl.c?cvsroot=qemur1=1.373r2=1.374 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/esp.c?cvsroot=qemur1=1.29r2=1.30 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/gumstix.c?cvsroot=qemur1=1.6r2=1.7 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/integratorcp.c?cvsroot=qemur1=1.26r2=1.27 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/lsi53c895a.c?cvsroot=qemur1=1.11r2=1.12 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/mainstone.c?cvsroot=qemur1=1.3r2=1.4 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/mips_malta.c?cvsroot=qemur1=1.52r2=1.53 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/mips_pica61.c?cvsroot=qemur1=1.14r2=1.15 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/mips_r4k.c?cvsroot=qemur1=1.55r2=1.56 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/nand.c?cvsroot=qemur1=1.5r2=1.6 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/omap.c?cvsroot=qemur1=1.26r2=1.27 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/pc.c?cvsroot=qemur1=1.95r2=1.96 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/pci.h?cvsroot=qemur1=1.1r2=1.2 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/ppc405_boards.c?cvsroot=qemur1=1.10r2=1.11 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/ppc_chrp.c?cvsroot=qemur1=1.54r2=1.55 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/ppc_oldworld.c?cvsroot=qemur1=1.12r2=1.13 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/ppc_prep.c?cvsroot=qemur1=1.58r2=1.59 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/pxa2xx.c?cvsroot=qemur1=1.23r2=1.24 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/realview.c?cvsroot=qemur1=1.16r2=1.17 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/spitz.c?cvsroot=qemur1=1.18r2=1.19 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/stellaris.c?cvsroot=qemur1=1.9r2=1.10 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/sun4m.c?cvsroot=qemur1=1.65r2=1.66 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/sun4m.h?cvsroot=qemur1=1.1r2=1.2 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/sun4u.c?cvsroot=qemur1=1.29r2=1.30 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/versatilepb.c?cvsroot=qemur1=1.22r2=1.23
Re: [Qemu-devel] [Patch][update] Mainstone re-org plus flash
Armin wrote: Hello, This includes the previous Mainstone re-org patch I sent earlier plus flash support. This adds two 32MiB flash devices. Mounts from mtdblock2 on flash device 0 fine at boot. I did some guesswork on the flash initialization to make it build with Laurent's -disk patch. Please check if it is still correct. Thiemo
[Qemu-devel] qemu block.c block.h block_int.h monitor.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/02 05:18:19 Modified files: . : block.c block.h block_int.h monitor.c Log message: Collecting block device statistics, by Richard W.M. Jones. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/block.c?cvsroot=qemur1=1.49r2=1.50 http://cvs.savannah.gnu.org/viewcvs/qemu/block.h?cvsroot=qemur1=1.2r2=1.3 http://cvs.savannah.gnu.org/viewcvs/qemu/block_int.h?cvsroot=qemur1=1.14r2=1.15 http://cvs.savannah.gnu.org/viewcvs/qemu/monitor.c?cvsroot=qemur1=1.89r2=1.90
[Qemu-devel] qemu cpu-exec.c translate-all.c target-sh4/cpu....
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/02 06:10:04 Modified files: . : cpu-exec.c translate-all.c target-sh4 : cpu.h op.c translate.c Log message: SH4 delay slot code update, by Magnus Damm. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/cpu-exec.c?cvsroot=qemur1=1.126r2=1.127 http://cvs.savannah.gnu.org/viewcvs/qemu/translate-all.c?cvsroot=qemur1=1.22r2=1.23 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sh4/cpu.h?cvsroot=qemur1=1.12r2=1.13 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sh4/op.c?cvsroot=qemur1=1.8r2=1.9 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sh4/translate.c?cvsroot=qemur1=1.20r2=1.21
[Qemu-devel] qemu cpu-exec.c hw/sh7750.c hw/sh_intc.c hw/sh_...
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/02 06:18:25 Modified files: . : cpu-exec.c hw : sh7750.c sh_intc.c sh_intc.h target-sh4 : cpu.h helper.c op.c Log message: SH4: system emulator interrupt update, by Magnus Damm. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/cpu-exec.c?cvsroot=qemur1=1.127r2=1.128 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/sh7750.c?cvsroot=qemur1=1.11r2=1.12 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/sh_intc.c?cvsroot=qemur1=1.2r2=1.3 http://cvs.savannah.gnu.org/viewcvs/qemu/hw/sh_intc.h?cvsroot=qemur1=1.1r2=1.2 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sh4/cpu.h?cvsroot=qemur1=1.13r2=1.14 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sh4/helper.c?cvsroot=qemur1=1.5r2=1.6 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sh4/op.c?cvsroot=qemur1=1.9r2=1.10
[Qemu-devel] qemu/linux-user syscall.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/02 06:28:09 Modified files: linux-user : syscall.c Log message: Fix for execve syscall, by Kirill A. Shutemov. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/syscall.c?cvsroot=qemur1=1.153r2=1.154
[Qemu-devel] qemu linux-user/main.c linux-user/signal.c linu...
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/02 06:31:25 Modified files: linux-user : main.c signal.c linux-user/sh4 : target_signal.h target-sh4 : helper.c Log message: SH4: Signal handling for the user space emulator, by Magnus Damm. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/main.c?cvsroot=qemur1=1.156r2=1.157 http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/signal.c?cvsroot=qemur1=1.54r2=1.55 http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/sh4/target_signal.h?cvsroot=qemur1=1.2r2=1.3 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sh4/helper.c?cvsroot=qemur1=1.6r2=1.7
Re: [Qemu-devel] fstat bug on armeb stll exists!
Claudio Scordino wrote: Hi all, more than one year ago we sent a patch on this mailing list to fix a problem of the fstat syscall for armeb. See http://lists.gnu.org/archive/html/qemu-devel/2006-09/msg00137.html We found the bug compiling a Linux kernel for armeb on scratchbox. Qemu seemed to ignore the fact that in big endian systems the fields st_blocks and its padding are swapped (to allow future expansion of the field,) so the fix consisted only in swapping the two fields (only in big endian systems, of course). The patch just changed qemu/linux-user/syscall_defs.h to #ifndef TARGET_WORDS_BIGENDIAN target_ulongst_blocks; target_ulong__pad4; #else target_ulong__pad4; target_ulongst_blocks; #endif AFAICS this assumption matches neither the glibc 2.6 nor the Linux 2.6.23 definitions. There is, however, an endianness difference in handling the st_dev and st_rdev fields which is not handled properly in QEMU. I think this needs a separate struct stat definition for (non-EABI) big endian ARM. Thiemo
[Qemu-devel] qemu/target-mips mips-defs.h
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/12/02 07:14:18 Modified files: target-mips: mips-defs.h Log message: Larger physical address space for 32-bit MIPS. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/mips-defs.h?cvsroot=qemur1=1.19r2=1.20
[Qemu-devel] sparc-linux-user fails to build on Linux/ppc
Some recent change broke compilation of sparc-linux-user on Linux/ppc. Thiemo make -C i386-linux-user all make[1]: Entering directory `/home/ths/qemu/qemu-work/i386-linux-user' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/home/ths/qemu/qemu-work/i386-linux-user' make -C arm-linux-user all make[1]: Entering directory `/home/ths/qemu/qemu-work/arm-linux-user' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/home/ths/qemu/qemu-work/arm-linux-user' make -C armeb-linux-user all make[1]: Entering directory `/home/ths/qemu/qemu-work/armeb-linux-user' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/home/ths/qemu/qemu-work/armeb-linux-user' make -C sparc-linux-user all make[1]: Entering directory `/home/ths/qemu/qemu-work/sparc-linux-user' gcc-3.4 -g -Wl,-T,/home/ths/qemu/qemu-work/ppc.ld -o qemu-sparc main.o syscall.o strace.o mmap.o signal.o path.o osdep.o thunk.o elfload.o linuxload.o uaccess.o libqemu.a gdbstub.o -lm -lrt -lpthread libqemu.a(translate-op.o): In function `dyngen_code': /home/ths/qemu/qemu-work/sparc-linux-user/./op.h:5035: undefined reference to `do_fitoq' /home/ths/qemu/qemu-work/sparc-linux-user/./op.h:5035: undefined reference to `do_fitoq' libqemu.a(op.o): In function `op_fitoq': /home/ths/qemu/qemu-work/target-sparc/op.c:1806: undefined reference to `do_fitoq' collect2: ld returned 1 exit status make[1]: *** [qemu-sparc] Error 1 make[1]: Leaving directory `/home/ths/qemu/qemu-work/sparc-linux-user' make: *** [subdir-sparc-linux-user] Error 2
[Qemu-devel] qemu/target-mips translate.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/11/26 09:01:34 Modified files: target-mips: translate.c Log message: Micro-optimize back-to-back store-load sequences. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/translate.c?cvsroot=qemur1=1.115r2=1.116
[Qemu-devel] qemu/hw mips_malta.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/11/26 14:52:02 Modified files: hw : mips_malta.c Log message: Add floppy support, tested to work with www.linux-mips.org GIT head. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/hw/mips_malta.c?cvsroot=qemur1=1.51r2=1.52
Re: [Qemu-devel] qemu hw/ppc_oldworld.c target-ppc/cpu.h target-...
Paul Brook wrote: I think what you mean is that they work the way that ppc64 is defined, to remain compatible with ppc32. IMHO this is entirely irrelevant as we're emulating a ppc32. You could replace the high bits with garbage and nothing would ever be able to tell the difference. PowerPC is a 64 bits architecture. PowerPC 32 on 32 bits host is optimized not to compute the 32 highest bits, the same way it's allowed to cut down the GPR when implementing a CPU that would not support the 64 bits mode (but this is a tolerance, this is not the architecture is defined). No. PowerPC is defined as a 64-bit archirecure. However there is a subset of this architecture (aka ppc32) that is a complete 32-bit architecture in its own right. By your own admission, we can get away with not calculating the high 32 bit of the register. If follows that the high bits are completely meaningless. This btw. also means that the ppc32 emulation on 32-bit hosts is needlessly inefficient if the high bits are carried around. The qemu ppc32 emulation is implemented in such a way that on 64-bit hosts it looks a lot like a ppc64 implementation. However this need not, and should not be exposed to the user. OK. Those are real bugs to be fixed. I'll take a look But I'll try not to break the GPR dump. In fact, GPR should always dumped as 64 bits, even when runnig on 32 bits hosts. This would be more consistent with the specification. I disagree. qemu is implementing ppc32. Showing more than 32 bits of register is completely bogus. Any differences between a 32-bit host and a 64-bit host are a qemu bug. If you display 64 bits, then those 64 bits had better be the same when run on 32-bit hosts. I strongly agree with Paul. Thiemo
Re: [Qemu-devel] qemu hw/ppc_oldworld.c target-ppc/cpu.h target-...
J. Mayer wrote: [snip] Showing more than 32 bits of register is completely bogus. No. It's showing the full CPU state, which can be more than what the application (or the OS, when running virtualized on a real CPU) could see. The OS cannot see the whole CPU state, but Qemu must implement more than the OS can see and is then able to dump it. 64 bits GPR is just a specific case of a general behavior. Any differences between a 32-bit host and a 64-bit host are a qemu bug. If you display 64 bits, then those 64 bits had better be the same when run on 32-bit hosts. Why ? The idea is that it costs too much to keep the whole state when running on a 32 bits host, then we act as a restricted embedded implementation. When the host CPU allows it without any extra cost, we act as the specification defines we should. This is a choice. Once again, this choice can be discussed and may be changed if I get convinced it would be better not to act this way. But this behavior is sure not bugged, it exactly follows (or may say should exactly if well implemented) the PowerPC specification. Degrading the emulation capabilities in dependence of the host capabilities with disregard of the user's requests sounds like a tremendously bad idea to me. So - If the high bits state is discoverable from guest software then it should always be emulated, independent of the host. - If the high bits state is software transparent, then it should never be emulated. Even on a 64-bit host it will reduce performance as it moves more state through the caches. Moreover, the emulation will stay architecturally correct WRT to software execution, which is, I believe, the part of the spec which actually counts for QEMU. Thiemo
Re: [Qemu-devel] wrong bios.bin file in Ubuntu Linux 7.10 causes blue screen on w2k guest
Soren Hansen wrote: On Thu, Nov 22, 2007 at 01:47:22PM -0500, Markus Schulz wrote: Thank you for your response; I think the file can be found here: http://cvs.savannah.nongnu.org/viewvc/qemu/pc-bios/?root=qemu As far as I understand Qemu uses the BIOS from the Bochs project and the diff is applied for Qemu and it becomes the Qemu BIOS. If that's really the case, I'm curious why it's distributed in its binary form rather than being built at runtime. Fabrice, can you shed some light on this? Onerous cross-compiler dependencies. I think every Qemu installation should use this Qemu BIOS, the BIOS that is made for this project and not the original Bochs BIOS. Are you able to fix this in Ubuntu? Debian and Ubuntu have fairly strict policies about stuff shipped in binary form in source packages, so unless qemu is changed to build this bios at build time, that's not going to happen. One way around that would be to build additional BIOS images which use the qemu patches in the bochs package, provide them via an Architecture:all data package, and then let the Qemu package depend on that data package. Thiemo
[Qemu-devel] qemu/target-mips translate.c
CVSROOT:/sources/qemu Module name:qemu Changes by: Thiemo Seufer ths 07/11/22 15:10:22 Modified files: target-mips: translate.c Log message: Optimize the conventional move operation. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-mips/translate.c?cvsroot=qemur1=1.114r2=1.115