diff options
Diffstat (limited to 'gitlab/issues_text/target_missing/host_missing/accel_missing/1638')
| -rw-r--r-- | gitlab/issues_text/target_missing/host_missing/accel_missing/1638 | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/gitlab/issues_text/target_missing/host_missing/accel_missing/1638 b/gitlab/issues_text/target_missing/host_missing/accel_missing/1638 new file mode 100644 index 000000000..50c0fdb1f --- /dev/null +++ b/gitlab/issues_text/target_missing/host_missing/accel_missing/1638 @@ -0,0 +1,19 @@ +BUG: Segmentation fault when -object memory-backend-file use readonly=on, prealloc=on together +Description of problem: +Segmentation Fault while booting VM. +Steps to reproduce: +1. set qemu boot params to `-object memory-backend-file,id=mem1,readonly=on,prealloc=on,mem-path=<any-img-file>,size=4G` +2. +3. +Additional information: +It might not be a bug, probably a feature. +The reason of this segfault is: +readonly would mmap the backend file using PROT_READ, make it readonly, +but the prealloc=on would touch_pages the memory mmaped by the file. +SO the segfault happens. + +But there is no docs about this segfault condition (the readonly and prealloc cannot be used together.) + +And maybe there is a way to solve this problem, I think. +Use mmap the memory backend file to PROT_READ|PROT_WRITE at the beginnning, after touch_pages, then mprotect the memory. +change the prot to readonly if required. |