Re: [PATCH] point to right memory window index

From: Jon Mason
Date: Tue Sep 10 2019 - 12:42:24 EST


On Wed, Apr 10, 2019 at 11:24 AM Mehta, Sanju <Sanju.Mehta@xxxxxxx> wrote:
>
> Hi All,
>
> Any comments on below patch?

I wasn't cc'ed, so this one missed my inbox. Applied to ntb-next, thanks.

>
> 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
>