]> Pileus Git - ~andy/linux/blobdiff - drivers/net/ethernet/marvell/mvneta.c
net: mvneta: prefetch next rx descriptor instead of current one
[~andy/linux] / drivers / net / ethernet / marvell / mvneta.c
index aa3a4f7c3f7c121062c5a8c253830bf92ae38000..c7b37e07f870ed105cd54458370db3572eeb4923 100644 (file)
@@ -611,6 +611,7 @@ mvneta_rxq_next_desc_get(struct mvneta_rx_queue *rxq)
        int rx_desc = rxq->next_desc_to_proc;
 
        rxq->next_desc_to_proc = MVNETA_QUEUE_NEXT_DESC(rxq, rx_desc);
+       prefetch(rxq->descs + rxq->next_desc_to_proc);
        return rxq->descs + rx_desc;
 }
 
@@ -1442,7 +1443,6 @@ static int mvneta_rx(struct mvneta_port *pp, int rx_todo,
                u32 rx_status;
                int rx_bytes, err;
 
-               prefetch(rx_desc);
                rx_done++;
                rx_filled++;
                rx_status = rx_desc->status;