libata: add comment documenting PIO latency issues on UP
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Thu, 26 Nov 2009 16:11:16 +0000 (17:11 +0100)
committerJeff Garzik <jgarzik@redhat.com>
Thu, 3 Dec 2009 19:36:16 +0000 (14:36 -0500)
Based on:
http://lkml.indiana.edu/hypermail/linux/kernel/0908.2/01420.html

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/ata/libata-core.c

index dc72690ed5dbe5d140dd3348f2e408e57c7a7fc2..22ff51bdbc8a8517a8419858472a9fb6bc48b4fc 100644 (file)
@@ -6616,6 +6616,13 @@ static int __init ata_init(void)
 {
        ata_parse_force_param();
 
+       /*
+        * FIXME: In UP case, there is only one workqueue thread and if you
+        * have more than one PIO device, latency is bloody awful, with
+        * occasional multi-second "hiccups" as one PIO device waits for
+        * another.  It's an ugly wart that users DO occasionally complain
+        * about; luckily most users have at most one PIO polled device.
+        */
        ata_wq = create_workqueue("ata");
        if (!ata_wq)
                goto free_force_tbl;