Merge branch 'for-4.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata
[sfrench/cifs-2.6.git] / drivers / ata / libata-eh.c
index 50ee10db160f2bb3bebfbed5fb502d74157344a8..4e5bf36c5f4680fb079b7d4391d65e6a07cb0254 100644 (file)
@@ -2607,21 +2607,39 @@ static void ata_eh_link_report(struct ata_link *link)
                                [DMA_TO_DEVICE]         = "out",
                                [DMA_FROM_DEVICE]       = "in",
                        };
-                       static const char *prot_str[] = {
-                               [ATA_PROT_UNKNOWN]      = "unknown",
-                               [ATA_PROT_NODATA]       = "nodata",
-                               [ATA_PROT_PIO]          = "pio",
-                               [ATA_PROT_DMA]          = "dma",
-                               [ATA_PROT_NCQ]          = "ncq dma",
-                               [ATA_PROT_NCQ_NODATA]   = "ncq nodata",
-                               [ATAPI_PROT_NODATA]     = "nodata",
-                               [ATAPI_PROT_PIO]        = "pio",
-                               [ATAPI_PROT_DMA]        = "dma",
-                       };
+                       const char *prot_str = NULL;
 
+                       switch (qc->tf.protocol) {
+                       case ATA_PROT_UNKNOWN:
+                               prot_str = "unknown";
+                               break;
+                       case ATA_PROT_NODATA:
+                               prot_str = "nodata";
+                               break;
+                       case ATA_PROT_PIO:
+                               prot_str = "pio";
+                               break;
+                       case ATA_PROT_DMA:
+                               prot_str = "dma";
+                               break;
+                       case ATA_PROT_NCQ:
+                               prot_str = "ncq dma";
+                               break;
+                       case ATA_PROT_NCQ_NODATA:
+                               prot_str = "ncq nodata";
+                               break;
+                       case ATAPI_PROT_NODATA:
+                               prot_str = "nodata";
+                               break;
+                       case ATAPI_PROT_PIO:
+                               prot_str = "pio";
+                               break;
+                       case ATAPI_PROT_DMA:
+                               prot_str = "dma";
+                               break;
+                       }
                        snprintf(data_buf, sizeof(data_buf), " %s %u %s",
-                                prot_str[qc->tf.protocol], qc->nbytes,
-                                dma_str[qc->dma_dir]);
+                                prot_str, qc->nbytes, dma_str[qc->dma_dir]);
                }
 
                if (ata_is_atapi(qc->tf.protocol)) {