summary refs log tree commit diff stats
path: root/results/classifier/zero-shot/105/instruction/2647
diff options
context:
space:
mode:
Diffstat (limited to 'results/classifier/zero-shot/105/instruction/2647')
-rw-r--r--results/classifier/zero-shot/105/instruction/264760
1 files changed, 60 insertions, 0 deletions
diff --git a/results/classifier/zero-shot/105/instruction/2647 b/results/classifier/zero-shot/105/instruction/2647
new file mode 100644
index 000000000..83b2e82e2
--- /dev/null
+++ b/results/classifier/zero-shot/105/instruction/2647
@@ -0,0 +1,60 @@
+instruction: 0.844
+graphic: 0.799
+mistranslation: 0.733
+device: 0.552
+semantic: 0.419
+assembly: 0.408
+other: 0.342
+network: 0.333
+socket: 0.311
+vnc: 0.281
+boot: 0.243
+KVM: 0.218
+
+A code error in accel/tcg/user-exec.c
+Description of problem:
+accel/tcg/user-exec.c:
+```
+static int probe_access_internal(CPUArchState *env, vaddr addr,
+                                 int fault_size, MMUAccessType access_type,
+                                 bool nonfault, uintptr_t ra)
+{
+    int acc_flag;
+    bool maperr;
+
+    switch (access_type) {
+    case MMU_DATA_STORE:
+        acc_flag = PAGE_WRITE_ORG;
+        break;
+    case MMU_DATA_LOAD:
+        acc_flag = PAGE_READ;
+        break;
+    case MMU_INST_FETCH:
+        acc_flag = PAGE_EXEC;
+        break;
+    default:
+        g_assert_not_reached();
+    }
+
+    if (guest_addr_valid_untagged(addr)) {
+        int page_flags = page_get_flags(addr);
+        if (page_flags & acc_flag) {
+            if ((acc_flag == PAGE_READ || acc_flag == PAGE_WRITE)
+                && cpu_plugin_mem_cbs_enabled(env_cpu(env))) {
+                return TLB_MMIO;
+            }
+            return 0; /* success */
+        }
+        maperr = !(page_flags & PAGE_VALID);
+    } else {
+        maperr = true;
+    }
+
+    if (nonfault) {
+        return TLB_INVALID_MASK;
+    }
+
+    cpu_loop_exit_sigsegv(env_cpu(env), addr, access_type, maperr, ra);
+}
+```
+The conditional judgment "acc_flag == PAGE_WRITE" seems to have an issue, because acc_flag can only be PAGE_WRITE_ORG, PAGE_READ or PAGE_EXEC from the previous code.