Re: [Qemu-devel] USB Tablet Emulation + VNC patch..

2006-04-26 Thread Brad Campbell

Troy Benjegerdes wrote:

Now, does anyone have instructions on how to get Win2k installed and
updated to the latest set of security patches? I can get service pack 4
installed, but running windowsupdate seems to never work right.

If I run it up with -win2k-hack then windowsupdate works fine..
Here is what I did though (although variants have worked)

Install win2k-sp4
run windowsupdate and ignore the warning about ie6, let it install the 
updated windows-update component. Reboot, install ie6, reboot, then run 
windows-update and install all the patches.


All of this with win2k-hack enabled or it won't work.. and the updated 
win2k-hack from Leo so it works with dma..


I'm still stuck with windowsupdate not working.. 


I am finding now that after I go through installing win2k, and running
ie5, I can see it has 56 bit encryption. But after installing service
pack 3 and service pack 4, IE says '0-bit encryption'.


Better to download SP4 complete.. don't use windows update to install the service packs, just 
install and load SP4 without interracting with the net at all.. sp3 does strange things..



--
"Human beings, who are almost unique in having the ability
to learn from the experience of others, are also remarkable
for their apparent disinclination to do so." -- Douglas Adams


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] gnu-c99-math.h file

2006-04-26 Thread Ben Taylor

 Chris Bagwell <[EMAIL PROTECTED]> wrote: 
> I just upgraded to current CVS to get all the changes submitted today.  
> The solaris port commits seems to have added a #include "gnu-c99-math.h" 
> file to fpu/softfloat-native.h.

Apologies.  That should have been isolated with a 

#ifdef __sun__
#include "gnu-c99-math.h"
#endif

> 
> This file doesn't exist on my Fedora Core 5 system with gcc32 installed 
> for compatibility.  The mailing archive mentions something about this 
> missing file being a custom file for the solaris port. Should that file 
> only be referenced under solaris?

correct.  I rechecked the patch  I sent to Fabrice and the gnu-c99-math.h 
file is there.  

> Qemu appears to compile fine on linux if I just comment that line out.
> 
> Chris

The following patch and file will correct the issue for solaris and non-solaris
system alike.

Fabrice - can we get this added to CVS?

Regards,

Ben

fpu-softfloat-patch.diff
Description: Binary data


gnu-c99-math.h
Description: Binary data
___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] [PATCH] fpu/softfloat-native.h incorrectly includes missing header (gnu-c99-math.h) in latest CVS

2006-04-26 Thread Ben Taylor

 Damien Mascord <[EMAIL PROTECTED]> wrote: 
> Hi,
> 
> Seems as though a missing header is being included in this file.
> 
> Removing it enables qemu to compile cleanly,

but is not the correct fix.  I have reposted the missing file (for Solaris
users) and the fix to fpu/softfloat-native.h to isolate that file for
Solaris only.

Ben


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] Patch for kqemu-1.3.0pre5 on Fedora Core 4 x86_64

2006-04-26 Thread Brad Campbell

Troy Benjegerdes wrote:

On Wed, Apr 26, 2006 at 12:50:16AM +0200, Fabrice Bellard wrote:

Well, there is a change log in the archive and here it is:

version 1.3.0pre6:

- compile fix for Linux kernel version >= 2.6.16
- better null LDT handling (aka Plan9 and ReactOS bug)
- moved monitor code to another address (aka win2k 256 MB bug)
 
FYI, the windows 2000 install blows up right away with -kernel-kqemu on 
an x86_64 host with qemu-system-x86_64 .


an install with kqemu-user seems to be going okay so far


This is a known issue.. if you do the 1st part of the install (the blue screen text mode bit) with 
usermode kqemu.. then when it does its first reboot, shut down the vm and boot it up with 
-kernel-kemu it works fine..


Oh and of course -win2k-hack

--
"Human beings, who are almost unique in having the ability
to learn from the experience of others, are also remarkable
for their apparent disinclination to do so." -- Douglas Adams


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] gnu-c99-math.h file

2006-04-26 Thread Sylvain Petreolle

--- Ben Taylor <[EMAIL PROTECTED]> a écrit :
> 
> Apologies.  That should have been isolated with a 
> 
> #ifdef __sun__
> #include "gnu-c99-math.h"
> #endif
> 
> correct.  I rechecked the patch  I sent to Fabrice and the gnu-c99-math.h 
> file is there.  
please make sure if you use underscores or hyphens.
softfloat-native.h includes gnu-c99-math.h,
but the file attached to this mail was gnu_c99_math.h


Kind regards,
Sylvain Petreolle (aka Usurp)
--- --- --- --- --- --- --- --- --- --- --- --- ---
Listen to free Music: http://www.jamendo.com
Windows is proprietary, use free ReactOS instead : http://www.reactos.org



___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] gnu-c99-math.h file

2006-04-26 Thread Ben Taylor

 Sylvain Petreolle <[EMAIL PROTECTED]> wrote: 
> 
> --- Ben Taylor <[EMAIL PROTECTED]> a écrit :
> > 
> > Apologies.  That should have been isolated with a 
> > 
> > #ifdef __sun__
> > #include "gnu-c99-math.h"
> > #endif
> > 
> > correct.  I rechecked the patch  I sent to Fabrice and the gnu-c99-math.h 
> > file is there.  
> please make sure if you use underscores or hyphens.
> softfloat-native.h includes gnu-c99-math.h,
> but the file attached to this mail was gnu_c99_math.h

I have no explaination.  It has hypens on my source system, and on my 
M$ laptop.  The only possible way the name changed was that the new 
webmail interface provided by my cable company  modified the filename 
when I attached the diff and and gnu-c99-math.h file. 
 
But a good catch, and hopefully everyone will know to change the 
file name. 
 
Regards, 
 
Ben


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] [PATCH] Timer/clock for Linux

2006-04-26 Thread Jamie Lokier
Paul Brook wrote:
> One solution (which is also desirable for other reasons) is to
> implement some form of guest cycle counting based on the
> instructions actually executed.  Then use that as the high-precision
> timesource, and use some for of adaptive method to keep host and
> guest clocks in sync.

That's what I meant, expressed more clearly, except that I meant to
count guest time based on the real time spent executing guest code,
rather than counting individual instructions.  Thanks!

-- Jamie


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] [PATCH] Timer/clock for Linux

2006-04-26 Thread Paul Brook
On Wednesday 26 April 2006 14:01, Jamie Lokier wrote:
> Paul Brook wrote:
> > One solution (which is also desirable for other reasons) is to
> > implement some form of guest cycle counting based on the
> > instructions actually executed.  Then use that as the high-precision
> > timesource, and use some for of adaptive method to keep host and
> > guest clocks in sync.
>
> That's what I meant, expressed more clearly, except that I meant to
> count guest time based on the real time spent executing guest code,
> rather than counting individual instructions.  Thanks!

How do you propose doing that? It implies you have some way of interrupting 
the guest after it has executed a small amount of guest code, where "small" 
is less than the resolution+latency of host timer interrupts.

Paul


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] [PATCH][MIPS] Enforce aligned pc

2006-04-26 Thread Marius Groeger

Hi,

this patch makes qemu throw an exception when the PC is not aligned to 
a word boundary.


--
Marius--- target-mips/translate.c 23 Apr 2006 15:21:24 -  1.12
+++ target-mips/translate.c 26 Apr 2006 14:02:19 -
@@ -1320,6 +1707,12 @@
 uint16_t op, op1;
 int16_t imm;
 
+   /* make sure instructions are on a word boundary */
+   if (ctx->pc & 0x3) {
+   generate_exception(ctx, EXCP_AdEL);
+   return;
+   }
+
 if ((ctx->hflags & MIPS_HFLAG_BMASK) == MIPS_HFLAG_BL) {
 /* Handle blikely not taken case */
 MIPS_DEBUG("blikely condition (%08x)", ctx->pc + 4);
___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] [PATCH][MIPS] FPU support for MIPS

2006-04-26 Thread Marius Groeger

Hi All,

a new version of my FPU patch, now actually doing some math. Known 
issues include, but may not be limited to:


- only support .d format, that is IEEE 64bit
- no proper float exception handling. If someone gets CONFIG_SOFTFLOAT
  to compile, this should be quite easy to improve. Most of
  the infrastructure required is in place.

Feedback welcome!

Cheers,
Marius

--
Marius Groeger <[EMAIL PROTECTED]>
SYSGO AG  Embedded and Real-Time Software
Voice: +49 6136 9948 0  FAX: +49 6136 9948 10
www.sysgo.com | www.elinos.com | www.osek.de | www.pikeos.comIndex: target-mips/cpu.h
===
RCS file: /sources/qemu/qemu/target-mips/cpu.h,v
retrieving revision 1.6
diff -u -u -r1.6 cpu.h
--- target-mips/cpu.h   11 Mar 2006 16:23:39 -  1.6
+++ target-mips/cpu.h   26 Apr 2006 14:02:18 -
@@ -9,10 +9,13 @@
 #include "softfloat.h"
 
 typedef union fpr_t fpr_t;
+
 union fpr_t {
-double d;
-float  f;
-uint32_t u[2];
+float64 fd; /* ieee double precision */
+   float32 fs; /* ieee single precision */
+int64_t d; /* binary single fixed-point */
+int32_t w; /* binary single fixed-point */
+uint32_t u32[2];
 };
 
 #if defined(MIPS_USES_R4K_TLB)
@@ -43,16 +46,48 @@
 uint32_t DCR; /* ? */
 #if defined(MIPS_USES_FPU)
 /* Floating point registers */
-fpr_t fpr[16];
-/* Floating point special purpose registers */
+   uint32_t fpr[2*32]; 
+#define FPR(cpu, n, fmt) \
+   (((cpu)->CP0_Status & (1fpr[(n) & 0x1e]) : \
+   ((fpr_t*)&(cpu)->fpr[(n) & 0x1f]) \
+   )\
+   )
+
+#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;
+/* set condition, "c" must be 0 or 1 */
+#define SET_FP_COND(reg, c) do { \
+   /*assert(c == 0 || c == 1);*/ \
+   (reg) = ((reg) & ~(1<<23)) | ((c)<<23); \
+   } while(0)
+#define IS_FP_COND_SET(reg)  (((reg) & (1<<23)) != 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];
+tlb_t tlb[MIPS_TLB_NB];
 #endif
 uint32_t CP0_index;
 uint32_t CP0_random;
@@ -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
diff -u -u -r1.7 exec.h
--- target-mips/exec.h  11 Mar 2006 15:00:08 -  1.7
+++ target-mips/exec.h  26 Apr 2006 14:02:18 -
@@ -21,13 +21,20 @@
 register host_uint_t T2 asm(AREG3);
 
 #if defined (USE_HOST_FLOAT_REGS)
-register double FT0 asm(FREG0);
-register double FT1 asm(FREG1);
-register double FT2 asm(FREG2);
+#error "implement me."
 #else
-#define FT0 (env->ft0.d)
-#define FT1 (env->ft1.d)
-#define FT2 (env->ft2.d)
+#define FDT0 (env->ft0.fd)
+#define FDT1 (env->ft1.fd)
+#define FDT2 (env->ft2.fd)
+#define FST0 (env->ft0.fs)
+#define FST1 (env->ft1.fs)
+#define FST2 (env->ft2.fs)
+#define DT0 (env->ft0.d)
+#define DT1 (env->ft1.d)
+#define DT2 (env->ft2.d)
+#define WT0 (env->ft0.w)
+#define WT1 (env->ft1.w)
+#define WT2 (env->ft2.w)
 #endif
 
 #if defined (DEBUG_OP)
@@ -65,6 +72,14 @@
 void do_tlbwr (void);
 void do_tlbp (void);
 void do_tlbr (void);
+#ifdef MIPS_USES_FPU
+int do_cmp_d(void);
+void dump_fpu(void);
+void fpu_dump_state(CPUState *env, FILE *f, 
+int (*fpu_fprintf)(FILE *f, const char *fmt, ...),
+int flags);
+#endif
+void dump_sc (void);
 void do_lwl_raw (uint32_t);
 void do_lwr_raw (uint32_t);
 uin

[Qemu-devel] updated fpu/softfloat-native.h patch

2006-04-26 Thread Ben Taylor

The ammended version of fpu/softfloat-native.h patch.  botched the flags when 
I posted it last night (no more 3am patching for me).  This should be the 
correct
fix.

Ben


--- softfloat-native.h.ORIG 2006-04-26 10:58:51.426224000 -0400
+++ softfloat-native.h  2006-04-26 10:59:01.255441000 -0400
@@ -7,7 +7,9 @@
 #include 
 #endif
 #endif
+#ifdef __sun__
 #include "gnu-c99-math.h"
+#endif

 typedef float float32;
 typedef double float64;



___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] qemu/fpu softfloat-native.h

2006-04-26 Thread Paul Brook
CVSROOT:/sources/qemu
Module name:qemu
Branch: 
Changes by: Paul Brook <[EMAIL PROTECTED]>  06/04/26 15:55:55

Modified files:
fpu: softfloat-native.h 

Log message:
Remove missing include.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/qemu/qemu/fpu/softfloat-native.h.diff?tr1=1.3&tr2=1.4&r1=text&r2=text


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] qemu configure

2006-04-26 Thread Paul Brook
CVSROOT:/sources/qemu
Module name:qemu
Branch: 
Changes by: Paul Brook <[EMAIL PROTECTED]>  06/04/26 16:07:35

Modified files:
.  : configure 

Log message:
Solaris configure hacks.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/qemu/qemu/configure.diff?tr1=1.95&tr2=1.96&r1=text&r2=text


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] Large USB-Patch Documentation and todays CVS patch

2006-04-26 Thread nix . wie . weg
Hello,

As Fabrice pointed out to me yesterday, it takes time to understand the
new usb api. To make this process easier I have assembled a small
documentation.
You will find it here:
http://217.20.126.200/tino/usb_api.pdf
http://217.20.126.200/tino/usb_api.odg

the patch which applies cleanly against todays cvs version is here,
(which includes some small naming changes, as I discovered that I have
used two times the same name for different functions. This was not a
problem as this were local functions, but it was not so good for
understanding the new api):
http://217.20.126.200/tino/usb-2006-04-26.patch

With kind regards,
Tino H. Seifert




___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] [PATCH] Timer/clock for Linux

2006-04-26 Thread Jamie Lokier
Paul Brook wrote:
> On Wednesday 26 April 2006 14:01, Jamie Lokier wrote:
> > Paul Brook wrote:
> > > One solution (which is also desirable for other reasons) is to
> > > implement some form of guest cycle counting based on the
> > > instructions actually executed.  Then use that as the high-precision
> > > timesource, and use some for of adaptive method to keep host and
> > > guest clocks in sync.
> >
> > That's what I meant, expressed more clearly, except that I meant to
> > count guest time based on the real time spent executing guest code,
> > rather than counting individual instructions.  Thanks!
> 
> How do you propose doing that? It implies you have some way of interrupting 
> the guest after it has executed a small amount of guest code, where "small" 
> is less than the resolution+latency of host timer interrupts.

Hmm.  I hadn't thought that through, but it still works.

It doesn't matter if the guest runs, say, for 20ms before its next
emulated 1kHz interrupt - so long as it's not dependent on values from
the emulated timer chip after 1ms (or any other emulated device which
reveals the time).

If the guest does read a device which depends on the time, that's an
opportunity to interrupt it.  Otherwise, from the guest's view, it's
just as if the emulated CPU got faster for a while with the interrupts
perfectly timed.

-- Jamie


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] qemu, kqemu-1.3.0pre6 & freebsd

2006-04-26 Thread Bakul Shah
First, thanks to Fabrice for releasing a new kqemu and
Juergen Lock for a prompt freebsd port update!  I did some
testing and have the following to report:

The good news:
- plan 9 works with kernel-kqemu and user-kqemu.
- user mode time in user/kernel kqemu mode is 1/3 of
  -no-kqemu case for plan 9 (I used "mk clean all" in
  /sys/src/9/pc dir as a benchmark).

Not so good news:
- compared to freebsd and other guests where we get over 10
  times performance improvement for usermode code, plan9 only
  gets about 3 times.
- elapsed time in user-kqemu is 2/3 of -no-kqemu for plan 9.
- elapsed time in kernel-kqemu is *six* times that of
  -no-kqemu.  system time in kernel-kqemu mode is *11* times
  that of -no-kqemu.

Bad news:
- FreeBSD4 guest image dies during boot in init when
  user/kernel kqemu is used.  It works in -no-kqemu mode as
  before.

- mouse scrolling is broken.  The mouse seems to think it
  is at a boundary while still in the middle of the qemu
  window.  You have to scroll it in the opposite direction
  beyond the qemu window boundary to fix this.

Win2k seems to work about as well as before (which is pretty
darn good!).

I wonder if the qemu port needs to be updated -- does the new
kqemu depend on changes made in qemu since 4/14 (the date of
freebsd port of qemu)?


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


RE: [Qemu-devel] qemu/fpu softfloat-native.h

2006-04-26 Thread Sylvain Petreolle
please revert this.
Ben Taylor posted the correct fix on the list and the missing include file.

--- Paul Brook <[EMAIL PROTECTED]> a écrit :

> CVSROOT:  /sources/qemu
> Module name:  qemu
> Branch:   
> Changes by:   Paul Brook <[EMAIL PROTECTED]>  06/04/26 15:55:55
> 
> Modified files:
>   fpu: softfloat-native.h 
> 
> Log message:
>   Remove missing include.
> 
> CVSWeb URLs:
>
http://cvs.savannah.gnu.org/viewcvs/qemu/qemu/fpu/softfloat-native.h.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
> 
> 
> ___
> Qemu-devel mailing list
> Qemu-devel@nongnu.org
> http://lists.nongnu.org/mailman/listinfo/qemu-devel
> 


Kind regards,
Sylvain Petreolle (aka Usurp)
--- --- --- --- --- --- --- --- --- --- --- --- ---
Listen to free Music: http://www.jamendo.com
Windows is proprietary, use free ReactOS instead : http://www.reactos.org



___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] qemu/fpu softfloat-native.h

2006-04-26 Thread Paul Brook
On Wednesday 26 April 2006 19:30, Sylvain Petreolle wrote:
> please revert this.
> Ben Taylor posted the correct fix on the list and the missing include file.

The patch posted was not correct (the #ifdef is redundant with the one inside 
the include file), and wasn't sufficient to make qemu work on my Solaris 
systems either.

Paul


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] Where is this change coming from?

2006-04-26 Thread Ben Taylor
Compile environment - Solaris 9/Ultra 10 workstation


this is code generated by a 0.7.2-solaris port of dyngen for i386-softmmu/op.h 
for the function

case INDEX_op_imulb_AL_T0: {
extern void op_imulb_AL_T0();
extern char __dot_umul __asm__(".umul");
memcpy(gen_code_ptr, (void *)((char *)&op_imulb_AL_T0+4), 76);
*(uint32_t *)(gen_code_ptr + 16) = ((*(uint32_t *)(gen_code_ptr + 16))  & 
~0x3fff)  | (long)(&__dot_umul) + 0) - (long)(gen_code_ptr + 16))>>2)   
  & 0x3fff);
gen_code_ptr += 76;
}
break;


this is the function generated by the 0.8.0-cvs code

case INDEX_op_imulb_AL_T0: {
extern void op_imulb_AL_T0();
extern char __dot_umul __asm__(".umul");
memcpy(gen_code_ptr, (void *)((char *)&op_imulb_AL_T0+4), 76);
*(uint32_t *)(gen_code_ptr + 16) = ((*(uint32_t *)(gen_code_ptr + 16))  & 
~0x3fff)  | (lo + 0) - (long)(gen_code_ptr + 16))>>2)
  & 0x3fff);
gen_code_ptr += 76;
}
break;

This is the compile sequence for the 0.8.0-cvs with the error message:

gcc -Wall -O2 -g -fno-strict-aliasing -m32 -ffixed-g2 -ffixed-g3 -I. -I.. 
-I/export/src/qemu/qemu-solaris-9/target-i386 -I/export/src/qemu/qemu-solaris-9 
-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE 
-I/export/src/qemu/qemu-solaris-9/fpu -DHAS_AUDIO 
-I/export/src/qemu/qemu-solaris-9/slirp -c -o translate-op.o 
/export/src/qemu/qemu-solaris-9/translate-op.c
In file included from /export/src/qemu/qemu-solaris-9/translate-op.c:36:
./op.h: In function `dyngen_code':
./op.h:896: error: `lo' undeclared (first use in this function)
./op.h:896: error: (Each undeclared identifier is reported only once
./op.h:896: error: for each function it appears in.)
./op.h:896: error: syntax error before ';' token
./op.h:904: error: `op_cmpneqsd' undeclared (first use in this function)
./op.h:905: error: `param1' undeclared (first use in this function)
./op.h:906: error: `param2' undeclared (first use in this function)
./op.h:894: warning: unused variable `__dot_umul'


looking carefully between the two generated functions, I see that they are 
slightly
different.  The first one (0.7.2) compiles cleanly and runs.  The second one 
(0.8.0-cvs)
does not compiile cleanly, and it appears that the function call has been
left off the line of code.

*(uint32_t *)(gen_code_ptr + 16) = ((*(uint32_t *)(gen_code_ptr + 16))  & 
~0x3fff)  | (long)(&__dot_umul) + 0) - (long)(gen_code_ptr + 16))>>2)   
  & 0x3fff);

 *(uint32_t *)(gen_code_ptr + 16) = ((*(uint32_t *)(gen_code_ptr + 16))  & 
~0x3fff)  | (lo + 0) - (long)(gen_code_ptr + 16))>>2)

The specific difference in the working copy has

(long)(&__dot_umul) + 0)

while the compile failling copy has 

(lo + 0)

Am I missing something?  There are many cascading errors due to "lo not defined"
in this environment, and I'm not really sure if it's a bug, or some problem in 
my
environment.

Ideas?

Thanks,

Ben


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] qemu hw/sun4u.c hw/sun4m.c ./vl.h ./loader.c ./...

2006-04-26 Thread Fabrice Bellard
CVSROOT:/sources/qemu
Module name:qemu
Branch: 
Changes by: Fabrice Bellard <[EMAIL PROTECTED]> 06/04/26 22:05:26

Modified files:
hw : sun4u.c sun4m.c 
.  : vl.h loader.c elf_ops.h 

Log message:
added entry parameter to ELF loader

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/qemu/qemu/hw/sun4u.c.diff?tr1=1.7&tr2=1.8&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/qemu/qemu/hw/sun4m.c.diff?tr1=1.15&tr2=1.16&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/qemu/qemu/vl.h.diff?tr1=1.111&tr2=1.112&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/qemu/qemu/loader.c.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/qemu/qemu/elf_ops.h.diff?tr1=1.1&tr2=1.2&r1=text&r2=text


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] qemu/hw mips_r4k.c

2006-04-26 Thread Fabrice Bellard
CVSROOT:/sources/qemu
Module name:qemu
Branch: 
Changes by: Fabrice Bellard <[EMAIL PROTECTED]> 06/04/26 22:06:56

Modified files:
hw : mips_r4k.c 

Log message:
ELF loader (Thiemo Seufer)

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/qemu/qemu/hw/mips_r4k.c.diff?tr1=1.14&tr2=1.15&r1=text&r2=text


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] [PATCH][MIPS] Enforce aligned pc

2006-04-26 Thread Fabrice Bellard

Is it possible that the pc gets unaligned ?

Fabrice.

Marius Groeger wrote:

Hi,

this patch makes qemu throw an exception when the PC is not aligned to a 
word boundary.



___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] [PATCH][MIPS] FPU support for MIPS

2006-04-26 Thread Fabrice Bellard

A few remarks:

1) Why do you use 3 temporaries ? Maybe two suffice in most cases.

2) do_cmp_d() should be completely decoded at translation time.

3) I suspect the macro FPR() does too many things at runtime which gives 
an important performance loss. CP0St_FR should be known at translation time.


You should use CONFIG_SOFTFLOAT to validate your code. The ARM target 
does it, so it works (see the configure script).


Fabrice.

Marius Groeger wrote:

Hi All,

a new version of my FPU patch, now actually doing some math. Known 
issues include, but may not be limited to:


- only support .d format, that is IEEE 64bit
- no proper float exception handling. If someone gets CONFIG_SOFTFLOAT
  to compile, this should be quite easy to improve. Most of
  the infrastructure required is in place.

Feedback welcome!

Cheers,
Marius



___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] Large USB-Patch Documentation and todays CVS patch

2006-04-26 Thread Johannes Schindelin
> As Fabrice pointed out to me yesterday, it takes time to understand the
> new usb api. To make this process easier I have assembled a small
> documentation.
> You will find it here:
> http://217.20.126.200/tino/usb_api.pdf
> http://217.20.126.200/tino/usb_api.odg

That is a nice description.

> the patch which applies cleanly against todays cvs version is here,
> (which includes some small naming changes, as I discovered that I have
> used two times the same name for different functions. This was not a
> problem as this were local functions, but it was not so good for
> understanding the new api):
> http://217.20.126.200/tino/usb-2006-04-26.patch

I am quite sure you put a lot of work into this patch, but you sure make it
hard to appreciate, too.

First note that applying such a huge patch is bad. Let me help you (a little
more than last time) to understand that: You are almost guaranteed to
introduce bugs, and what's worse, regressions. Because it is so huge, you
are further guaranteed to have a real hard time tracking that regression.

Also, you make it really, really awkward to pick the changes which are
unquestionable, and skip the questionable ones.

For example, your patch "fixes" a few white spaces. This does not hurt, but
has no meaning either, and slows down patch reading.

Also, you rename some things when it has no apparent use to rename them,
such as usb_device_add, or product_name.

Parts of the patch are plainly unreadable, because you move code around. I
suppose you not only moved them around, but made subtle changes --
hard-to-notice-because-moved changes.

As of now, no files in CVS that I am aware of contain "chagelog" lines.

However, these reveal that you made changes as early as 20th April of 2005?
Plenty of time feeding small patches since then ;-)

Continuing with comments: you change the comment "QEMU USB HUB emulation" in
usb-hub.c to "QEMU PC System Emulator" and backdate Fabrice's copyright from
2005 to 2003-2004? Why?

In the patch, you made plenty of white-space changes which make it very
difficult to spot real changes.

Again, I think you did some very valuable work. However, I'd be so much
happier if you split the patch up into meaningful patches, not a rollup
which is hard to understand *and* huge.

I now spent about one hour trying to understand your fixes, and I know
almost as much as when I started about your fixes.

Hope this helps,
Dscho


-- 
Echte DSL-Flatrate dauerhaft für 0,- Euro*!
"Feel free" mit GMX DSL! http://www.gmx.net/de/go/dsl


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] [PATCH][MIPS] Enforce aligned pc

2006-04-26 Thread Thiemo Seufer
Fabrice Bellard wrote:
> Is it possible that the pc gets unaligned ?

Yes, e.g. due to stack corruption which overwrites the return address.


Thiemo


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] Large USB-Patch Documentation and todays CVS patch

2006-04-26 Thread nix . wie . weg
Hello Johannes,

Thanks for your comments.

Johannes Schindelin wrote:
> I am quite sure you put a lot of work into this patch, but you sure make it
> hard to appreciate, too.
>
> First note that applying such a huge patch is bad. Let me help you (a little
> more than last time) 
Sorry I dont know why, but I have no other message from you in my Inbox,
so I can't tell what you have written last time.
> to understand that: You are almost guaranteed to
> introduce bugs, and what's worse, regressions. Because it is so huge, you
> are further guaranteed to have a real hard time tracking that regression.
>   
I agree with you on that. But I have a reason for doing it and I have no
one heard complaining, this or that has been broken, which worked
before. On the other side, I can say for sure, that with that patch a
lot more things do work. So even if something may be broken and cvs
changes will with great probability break things (see softfloat-native.h
today), it does not mean the patch is bad. The only question which has
to be asked is, could it be done with smaller patches. And on that point
I disagree with you. I claim that it could not be done.
> Also, you make it really, really awkward to pick the changes which are
> unquestionable, and skip the questionable ones.
>
> For example, your patch "fixes" a few white spaces. This does not hurt, but
> has no meaning either, and slows down patch reading.
> Also, you rename some things when it has no apparent use to rename them,
> such as usb_device_add, or product_name.
>   
Sorry but on that point you say things which are in no case provable by
any study. The contrary is true, good readable code, many comments, good
structered function names, which follow a pattern, help to write good
and error free code. When I got my hands on the usb code, there were as
many as almost none comments. I needed more than one hour to even get a
glue what is going on in usb.h (which is apparently not the reason for
having header files). The usb code as I obtained it, was in a state
which you can describe in the words "quick and dirty". If you find such
conditions you have to change without mercy. If you don't do it and the
person, which has applied the first changes to cvs, has done a quick and
dirty job, you will always have a patch work software, without any
structure and without any consistent interface.  So maybe that the
person, who wants to commit the patch to cvs, has more work to do. But
this persons work is absolutly nonrelevant in compare to the many people
who will read the (then better) code, and understand it faster and
deeper. I'm absolutly sure, that you will find examples where I have not
choosen the best solution, but if I would look into any code which you
have written the same would be valid and that is not a problem as long
as the changes which are good outweigh the bad ones.
> Parts of the patch are plainly unreadable, because you move code around. I
> suppose you not only moved them around, but made subtle changes --
> hard-to-notice-because-moved changes.
>
> As of now, no files in CVS that I am aware of contain "chagelog" lines.
Until the 19th century it was not common that a doctor has washed his
hands when he had evaluated a patient. This doesn't mean it is a bad
idea to do so. My experiences with other projects have shown, that it is
in most cases a good idea to have these changelog lines even if you use
cvs. But if the majority of the people here is against them, I will take
them out - that is not a problem. It is sometimes not so easy to find
the person who had developed a portion of source code after lets say 5
years. In the cvs you will normaly find only the person who has applied
the patch and not the person who has developed the code. If you then
want to contact the original developer it can be a hard job to find him.
So thats the reason for making these short changelog lines. Some
opensource licenses (not the one for qemu) even require such changelog
lines and I personaly believe, it is good to have them.
> However, these reveal that you made changes as early as 20th April of 2005?
> Plenty of time feeding small patches since then ;-)
>
> Continuing with comments: you change the comment "QEMU USB HUB emulation" in
> usb-hub.c to "QEMU PC System Emulator" and backdate Fabrice's copyright from
> 2005 to 2003-2004? Why?
>   
Yes sorry about that, it was not my intention to do so. Let me explain
how that was happening. As you may have noticed, Fabrice has added
usb-hub.c earlier this week, after I had already submitted my patch. As
I had updated my local cvs version this changes were rejected. And for
one or the other reason I had not noticed, the difference in the
comment. I haved changed it now.
> In the patch, you made plenty of white-space changes which make it very
> difficult to spot real changes.
>
> Again, I think you did some very valuable work. However, I'd be so much
> happier if you split the patch up into meaningful patches, not a rollup
> w

[Qemu-devel] Re: [PATCH] Don't install HTML if its not generated

2006-04-26 Thread Chris Bagwell

I included a context diff this time to make it easier to see the problem.

Chris

--- Makefile23 Apr 2006 17:57:59 -  1.97
+++ Makefile27 Apr 2006 02:09:07 -
@@ -56,7 +56,9 @@
   $(INSTALL) -m 644 $(SRC_PATH)/pc-bios/$$x 
"$(DESTDIR)$(datadir)"; \

   done
+ifdef BUILD_DOCS
   mkdir -p "$(DESTDIR)$(docdir)"
   $(INSTALL) -m 644 qemu-doc.html  qemu-tech.html 
"$(DESTDIR)$(docdir)"

+endif
ifndef CONFIG_WIN32
   mkdir -p "$(DESTDIR)$(mandir)/man1"
   $(INSTALL) qemu.1 qemu-img.1 "$(DESTDIR)$(mandir)/man1"



___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] Large USB-Patch Documentation and todays CVS patch

2006-04-26 Thread Lonnie Mendez

Johannes Schindelin wrote:


I am quite sure you put a lot of work into this patch, but you sure make it
hard to appreciate, too.

First note that applying such a huge patch is bad. Let me help you (a little
more than last time) to understand that: You are almost guaranteed to
introduce bugs, and what's worse, regressions. Because it is so huge, you
are further guaranteed to have a real hard time tracking that regression.
 

  Seeing as there is a release coming up this is most definitely not a 
good thing.  Initial testing yielded lots of this. 

  I'd like to see my all-in-one patch stripped out.  Then simply 
modifying the linux redirector to support the improved error handling 
(have it clear endpoint halt/etc) and other improvements.  Later, the 
new redirectors can be merged in and modified as necessary.


  The purpose of modifying the user interface to the usb layer also 
confuses me.  What was the reasoning behind changing host:busaddr.addr 
to host:busaddr:addr and host:VID:PID to host:VIDxPID?  This is 
something that should be abstracted in the layer and not handed down to 
the user.  Why display the bcdUSB revision and not the connected speed 
to the user (as is already done)?


  To argue that this must all go in at once or none at all is silly.  
I've seen the changes and know that my redirectors aren't necessary for 
this to function.  I'm not trying to get anyone down on this but am just 
saying this needs more discussion and thought.



___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel