-----Original Message----- From: Kevin O'Connor [mailto:kevin@koconnor.net] Sent: 11 May 2015 14:41 To: Paul Durrant Cc: seabios@seabios.org; xen-devel@lists.xenproject.org Subject: Re: [SeaBIOS] [PATCH] Make CONFIG_ATA_DMA and CONFIG_ATA_PIO32 default on
On Mon, May 11, 2015 at 01:47:57PM +0100, Paul Durrant wrote:
Currently running make defconfig will leave the above turned off which, at least for the Xen/QEMU use-case, means VMs will boot very slowly. There seems to have been some concern over non-QEMU use of
ATA_DMA about
five years ago, but I can find no particular concern over ATA_PIO32. Given the increased use of QEMU and Xen in that period it would seem like a good idea to default both of these on now. This patch does that.
The DMA support is known to be not correct for real hardware - correct code would negotiate the DMA rate with the drive (and also do things like detecting a 66Mhz PATA cable). The code is only really useful on emulators and when one knows that the drive is really a SATA drive connected to a controller that is doing PATA emulation.
That tends to suggest it should be removed then, if there are now alternatives when using emulation?
The 32bit PIO mode has a minimal speed improvement and it is known to not work on some real hardware controllers.
Ok.
If one is concerned about VM boot speed, why not just use AHCI or virtio?
I was looking for a quick fix for the Xen use-case where the toolstack does not set up AHCI or virtio. Maybe teaching libxl to use AHCI by default might be a better thing to do.
Paul
-Kevin