summary refs log tree commit diff stats
path: root/results/classifier/118/graphic/1757363
diff options
context:
space:
mode:
Diffstat (limited to 'results/classifier/118/graphic/1757363')
-rw-r--r--results/classifier/118/graphic/175736384
1 files changed, 84 insertions, 0 deletions
diff --git a/results/classifier/118/graphic/1757363 b/results/classifier/118/graphic/1757363
new file mode 100644
index 000000000..4d7b9e103
--- /dev/null
+++ b/results/classifier/118/graphic/1757363
@@ -0,0 +1,84 @@
+graphic: 0.958
+architecture: 0.873
+x86: 0.855
+performance: 0.819
+mistranslation: 0.808
+kernel: 0.807
+device: 0.779
+ppc: 0.769
+debug: 0.748
+user-level: 0.737
+network: 0.653
+permissions: 0.642
+semantic: 0.638
+peripherals: 0.620
+TCG: 0.612
+PID: 0.589
+files: 0.528
+register: 0.506
+boot: 0.490
+hypervisor: 0.487
+vnc: 0.434
+socket: 0.412
+risc-v: 0.378
+virtual: 0.373
+KVM: 0.371
+VMM: 0.335
+arm: 0.308
+i386: 0.264
+assembly: 0.263
+
+infinite loop due to improper deal with "eret" on mips32
+
+1.qemu 2.9.1 release on the official web build with tcg
+2.cmd: qemu-system-mips -kernel kernelfile
+3. host: ubuntu 16.04.1 with linux kernel 4.6.2 x86_64
+   guest: mips bigendian 32bit (tplink firmware)
+
+
+detail:
+
+static inline void exception_return(CPUMIPSState *env)
+{
+    debug_pre_eret(env);
+    if (env->CP0_Status & (1 << CP0St_ERL)) {
+        set_pc(env, env->CP0_ErrorEPC);
+        env->CP0_Status &= ~(1 << CP0St_ERL);
+    } else {
+        set_pc(env, env->CP0_EPC);
+        env->CP0_Status &= ~(1 << CP0St_EXL);====================> ISSUE????
+    }
+    compute_hflags(env);
+    debug_post_eret(env);
+}
+
+void helper_eret(CPUMIPSState *env)
+{
+    exception_return(env);
+    env->lladdr = 1;
+}
+
+
+In the Issue Line, there is no check CP0_Status whether int is disabled (should not enter int routine),
+that result in the cpu can not jump out the int routine.
+
+What model/cpu is your router? 
+
+Which MIPS guest CPU are you using? Are you sure it matches the CPU of your router?
+
+Is your tplink firmware publicly available? (to reproduce your problem).
+
+My guess is your router CPU doesn't match the ISA (likely your CPU has extensions to the 24Kf ISA).
+
+[Expired for QEMU because there has been no activity for 60 days.]
+
+This seems to affect me too; I have a loop on interrupt handler after the first interrupt called.
+
+The version of qemu is latest 3.1 from upstream, so this is not Ubuntu issue.
+
+However, have you done with it? Just commenting out
+
+env->CP0_Status &= ~(1 << CP0St_EXL);
+
+does not help.
+