RE: [PATCH] point to right memory window index

From: Mehta, Sanju
Date: Wed Apr 10 2019 - 06:24:08 EST


Hi All,

Any comments on below patch?

Thanks & Regards,
Sanjay Mehta

-----Original Message-----
From: Mehta, Sanju <Sanju.Mehta@xxxxxxx>
Sent: Friday, March 29, 2019 5:03 PM
To: S-k, Shyam-sundar <Shyam-sundar.S-k@xxxxxxx>; jdmason@xxxxxxxx; dave.jiang@xxxxxxxxx; allenbh@xxxxxxxxx
Cc: linux-ntb@xxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Mehta, Sanju <Sanju.Mehta@xxxxxxx>
Subject: [PATCH] point to right memory window index

From: Sanjay R Mehta <sanju.mehta@xxxxxxx>

second parameter of ntb_peer_mw_get_addr is pointing to wrong memory window index by passing "peer gidx" instead of "local gidx".

For ex, "local gidx" value is '0' and "peer gidx" value is '1', then

on peer side ntb_mw_set_trans() api is used as below with gidx pointing to local side gidx which is '0', so memroy window '0' is chosen and XLAT '0'
will be programmed by peer side.

ntb_mw_set_trans(perf->ntb, peer->pidx, peer->gidx, peer->inbuf_xlat,
peer->inbuf_size);

Now, on local side ntb_peer_mw_get_addr() is been used as below with gidx pointing to "peer gidx" which is '1', so pointing to memory window '1'
instead of memory window '0'.

ntb_peer_mw_get_addr(perf->ntb, peer->gidx, &phys_addr,
&peer->outbuf_size);

So this patch pass "local gidx" as parameter to ntb_peer_mw_get_addr().

Signed-off-by: Sanjay R Mehta <sanju.mehta@xxxxxxx>
---
drivers/ntb/test/ntb_perf.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/ntb/test/ntb_perf.c b/drivers/ntb/test/ntb_perf.c index c7d1a48..08e18d7 100644
--- a/drivers/ntb/test/ntb_perf.c
+++ b/drivers/ntb/test/ntb_perf.c
@@ -1381,7 +1381,7 @@ static int perf_setup_peer_mw(struct perf_peer *peer)
int ret;

/* Get outbound MW parameters and map it */
- ret = ntb_peer_mw_get_addr(perf->ntb, peer->gidx, &phys_addr,
+ ret = ntb_peer_mw_get_addr(perf->ntb, perf->gidx, &phys_addr,
&peer->outbuf_size);
if (ret)
return ret;
--
2.7.4