summary refs log tree commit diff stats
path: root/results/classifier/deepseek-2-tmp/output/permissions/1779955
diff options
context:
space:
mode:
Diffstat (limited to 'results/classifier/deepseek-2-tmp/output/permissions/1779955')
-rw-r--r--results/classifier/deepseek-2-tmp/output/permissions/177995531
1 files changed, 31 insertions, 0 deletions
diff --git a/results/classifier/deepseek-2-tmp/output/permissions/1779955 b/results/classifier/deepseek-2-tmp/output/permissions/1779955
new file mode 100644
index 000000000..bc711e54b
--- /dev/null
+++ b/results/classifier/deepseek-2-tmp/output/permissions/1779955
@@ -0,0 +1,31 @@
+
+qemu linux-user requires read permissions on memory passed to syscalls that should only need write access
+
+When read() function takes an mmap'ed address as output buffer, it returns EFAULT. The expected behavior is it should just work.
+
+The following code works for qemu-system-arm, but not for qemu-arm-static.
+
+
+
+Steps to reproduce (please substitute /path/to/qemu-arm-static with the path of the binary, and /tmp/a.cpp with the example source code attached):
+
+# First register binfmt_misc
+[hidden]$ docker run --rm --privileged multiarch/qemu-user-static:register --reset
+
+# Compile the code and run
+[hidden]$ docker run --rm -it -v /tmp/a.cpp:/tmp/a.cpp -v /path/to/qemu-arm-static:/usr/bin/qemu-arm-static arm32v7/ubuntu:18.04 bash -c '{ apt update -y && apt install -y g++; } >& /dev/null && g++ -std=c++14 /tmp/a.cpp -o /tmp/a.out && echo hehe > /tmp/haha.txt && /tmp/a.out'
+ofd=3
+ftruncate=0
+mmap=0xff3f5000
+fd=4
+0xff3f5023 -1 14
+
+
+
+The expected result in qemu-system-arm as well as natively on x86_64 host:
+hidden$ ./a.out                                                                                                                                                     
+ofd=3                                                                                                                
+ftruncate=0                                                                                                          
+mmap=0xb6fb7000                                                                                                          
+fd=4                                                                                                                                    
+0xb6fb7023 5 0
\ No newline at end of file