From: jbeulich@novell.com
Subject: Xen: improve floppy behavior
Patch-mainline: n/a
References: bnc#584216

Timing is significantly different from native both because Xen traps
I/O port accesses and using DMA not being possible (without intrusive
changes). Due to the overhead of trapped port accesses, I/O is already
slow enough (and Xen doesn't run on very old hardware anyway), so the
situation can easily be improved by not enforcing REALLY_SLOW_IO.

This doesn't completely address the issue - Xen just cannot guarantee
scheduling of a particular vCPU with a maximum latency of about 80us
(needed for the default FIFO threshold value of 10). The only complete
solution would require making ISA DMA usable on Xen.

--- head-2010-03-24.orig/drivers/block/floppy.c	2010-03-24 13:43:18.000000000 +0100
+++ head-2010-03-24/drivers/block/floppy.c	2010-03-25 14:39:44.000000000 +0100
@@ -146,7 +146,9 @@
 
 #undef  FLOPPY_SILENT_DCL_CLEAR
 
+#ifndef CONFIG_XEN
 #define REALLY_SLOW_IO
+#endif
 
 #define DEBUGT 2
 
