[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <1544803440-32755-1-git-send-email-ruxandra.radulescu@nxp.com>
Date: Fri, 14 Dec 2018 16:04:05 +0000
From: Ioana Ciocoi Radulescu <ruxandra.radulescu@....com>
To: Leo Li <leoyang.li@....com>, Roy Pledge <roy.pledge@....com>
CC: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
Ioana Ciornei <ioana.ciornei@....com>
Subject: [PATCH 1/2] soc: fsl: dpio: Add prefetch instruction
In dpaa2_io_store_next(), if the current dequeue entry is not
the last, prefetch the next one as most likely it will be
requested shortly by the consumer driver.
This brings a ~3% improvement for dpaa2 ethernet driver
IP forwarding with small size frames.
Signed-off-by: Ioana Radulescu <ruxandra.radulescu@....com>
---
drivers/soc/fsl/dpio/dpio-service.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/soc/fsl/dpio/dpio-service.c b/drivers/soc/fsl/dpio/dpio-service.c
index 5583d28..56a35c0 100644
--- a/drivers/soc/fsl/dpio/dpio-service.c
+++ b/drivers/soc/fsl/dpio/dpio-service.c
@@ -613,6 +613,7 @@ struct dpaa2_dq *dpaa2_io_store_next(struct dpaa2_io_store *s, int *is_last)
if (!(dpaa2_dq_flags(ret) & DPAA2_DQ_STAT_VALIDFRAME))
ret = NULL;
} else {
+ prefetch(&s->vaddr[s->idx]);
*is_last = 0;
}
--
2.7.4
Powered by blists - more mailing lists