Bug 200709
Summary: | QEMU's IDE hard disk device fails to work properly with 4.18 release candidates (regression vs. 4.17 and earlier) | ||
---|---|---|---|
Product: | IO/Storage | Reporter: | David H. Gutteridge (david) |
Component: | IDE | Assignee: | io_ide (io_ide) |
Status: | RESOLVED CODE_FIX | ||
Severity: | normal | CC: | hacking, nemoinis |
Priority: | P1 | ||
Hardware: | i386 | ||
OS: | Linux | ||
Kernel Version: | 4.18-rc7 | Subsystem: | |
Regression: | No | Bisected commit-id: | |
Attachments: |
Specific KVM/QEMU configuration that triggers the issue
Kernel config reproducer |
Description
David H. Gutteridge
2018-08-02 02:38:56 UTC
Created attachment 277657 [details]
Specific KVM/QEMU configuration that triggers the issue
Here's my configuration that can reproduce the issue.
I've found that I cannot reproduce this issue with the kernel config produced by "make defconfig" for the 4.18 series. It occurs with a specific config that I've been using across multiple kernel releases. Originally it was used for 4.15, and so on, changing only in terms of new options that have been added since. Until 4.18, it worked fine in this context. With the specific kernel config I've attached, I can still reproduce this with a more recent check out of tip (a.k.a. 4.18.0_rc8+). I haven't narrowed down the difference between the rather slimmed-down config generated by "make defconfig" and mine that causes the regression. Created attachment 277903 [details]
Kernel config reproducer
This is the kernel config I've been using to test with.
The dma_direct_map_sg: overflow error seems to affect 32-bit installations from kernel 4.18 on. See these reports: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=908924 https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1794922/ I'm using this kvm command-line: kvm -append "root=/dev/sda ro elevator=noop net.ifnames=0 console=ttyS0" -display none -drive file=kvmsid32.qcow2,cache=writeback,detect-zeroes=unmap,discard=unmap -initrd initrd.img -k de -kernel vmlinuz -m $MEM -monitor unix:/run/myutils/ckvm/3.monitor-socket,server,nowait,nodelay -name kvmsid32 -net nic,model=e1000 -net tap,ifname=tap3,script=/etc/qemu-ifup-with-mac -pidfile /run/myutils/ckvm/3.pid -runas nobody -serial stdio -smp 4 -snapshot -usbdevice tablet -vnc localhost:53 When using less than 3.5GiB of RAM (-m 3583) the issue doesn't get triggered. Specifying -m 3584 or more triggers the issue. git-bisect'ing lead me to https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=21e07dba9fb1179148089d611fc9e6e70d1887c3 - with this reverted, the issue disappears also when I start kvm with -m 3584 or more. This commit addresses the problem for me: https://lkml.org/lkml/2018/10/14/62 It was pulled into the tip tree a day ago. (https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/) I just built and tested a kernel from tip, and I'm no longer able to reproduce the issue. +1 Thanks, David! The fix has also been pulled into 4.18.18. I tested and confirmed that release addresses the issue for me as well. Closing ticket accordingly. |