new kqemu win98 hack affects FreeBSD

[ Available lists | Index of freebsd-emulation | Month of Aug 2005 | Week of 8 Aug 2005 | Raw email | View thread | Wrap long lines | Reply | Tag ]
From
Juergen Lock <nox@jelal.kn-bremen.de>
Date
8 Aug 2005 23:02:10
Subject
new kqemu win98 hack affects FreeBSD
Message-ID
20050808225748.GA86305@saturn.kn-bremen.de

Replies
Referenced by

[ Hide this part ]
Hi!

I got a report that kqemu doesnt speed up FreeBSD guests anymore,
and found out that the win98 hack stops kqemu from being used.
If i disable it and add this to cpu-exec.c,

Index: cpu-exec.c
@@ -232,6 +232,13 @@
#ifdef USE_KQEMU
if (kqemu_is_ok(env) && env->interrupt_request == 0) {
int ret;
+#if 1
+ static uint32_t lastldtlimit = 0;
+ if (env->ldt.limit != lastldtlimit) {
+ lastldtlimit = env->ldt.limit;
+ printf("new ldt limit 0x%x\n", (int)lastldtlimit);
+ }
+#endif
env->eflags = env->eflags | cc_table[CC_OP].compute_all() | (DF & DF_MASK);
ret = kqemu_cpu_exec(env);
/* put eflags in CPU temporary format */


then a short run with FreeSBIE gives this:

new ldt limit 0xffff
new ldt limit 0xfff
new ldt limit 0x1fff
new ldt limit 0xfff
new ldt limit 0x1fff
new ldt limit 0xfff
new ldt limit 0x1fff
new ldt limit 0x87
new ldt limit 0x1fff
new ldt limit 0x87
new ldt limit 0x1fff
new ldt limit 0xfff
new ldt limit 0x2fff
new ldt limit 0x87
new ldt limit 0xfff
new ldt limit 0x87
new ldt limit 0xfff
new ldt limit 0x87
new ldt limit 0xfff

So maybe we need a new switch -win98-hack... :)

Juergen


Elapsed time: 0.053 seconds