On Wed, Jun 25, 2008 at 01:44:35PM +0300, Avi Kivity wrote: > Anthony Liguori wrote: >> A major source of performance loss for virtio-blk has been the fact that we >> split transfers into multiple requests. This is particularly harmful if you >> have striped storage beneath your virtual machine. >> >> This patch copies the request data into a single contiguous buffer to ensure >> that we don't split requests. This improves performance from about 80 MB/sec >> to about 155 MB/sec with my fibre channel link. 185 MB/sec is what we get on >> native so this gets us pretty darn close. >> >> > > If the guest issues a request for a terabyte of memory, the host will > try to allocate it and drop to swap/oom. So we need to either fragment > beyond some size, or to avoid copying and thus the need for allocation.
The maximum request size for Linux guests is 512K (after tuning virtio-blk guest driver, current max is 124K). I'm not sure what the max number of requests is, but I guess is between 128 and 1024, Anthony? So with the current configuration your concern is not an issue. BTW, what is maximum request size for the Windows driver? Point is that the guest is responsible for limiting the amount of data in-flight. A malicious guest can only hurt itself by attempting to DoS the host, with proper memory limits in place. IMO this issue should not be handled in the virtio-blk backend. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
