IB/hfi1: Remove redundant pageidx variable

In hfi1_user_exp_rcv_setup(), variable pageidx mirrors
variable tididx.  Remove pageidx and its use as an argument
to program_rcvarray().

Signed-off-by: Dean Luick <dean.luick@cornelisnetworks.com>
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com>
Link: https://lore.kernel.org/r/167329104365.1472990.14264918308557487946.stgit@awfm-02.cornelisnetworks.com
Signed-off-by: Leon Romanovsky <leon@kernel.org>
This commit is contained in:
Dean Luick 2023-01-09 14:04:03 -05:00 committed by Leon Romanovsky
parent ccae0447af
commit 3c49eef389
1 changed files with 9 additions and 13 deletions

View File

@ -24,8 +24,7 @@ static bool tid_rb_invalidate(struct mmu_interval_notifier *mni,
const struct mmu_notifier_range *range, const struct mmu_notifier_range *range,
unsigned long cur_seq); unsigned long cur_seq);
static int program_rcvarray(struct hfi1_filedata *fd, struct tid_user_buf *, static int program_rcvarray(struct hfi1_filedata *fd, struct tid_user_buf *,
struct tid_group *grp, struct tid_group *grp, u16 count,
unsigned int start, u16 count,
u32 *tidlist, unsigned int *tididx, u32 *tidlist, unsigned int *tididx,
unsigned int *pmapped); unsigned int *pmapped);
static int unprogram_rcvarray(struct hfi1_filedata *fd, u32 tidinfo, static int unprogram_rcvarray(struct hfi1_filedata *fd, u32 tidinfo,
@ -249,7 +248,7 @@ int hfi1_user_exp_rcv_setup(struct hfi1_filedata *fd,
int ret = 0, need_group = 0, pinned; int ret = 0, need_group = 0, pinned;
struct hfi1_ctxtdata *uctxt = fd->uctxt; struct hfi1_ctxtdata *uctxt = fd->uctxt;
struct hfi1_devdata *dd = uctxt->dd; struct hfi1_devdata *dd = uctxt->dd;
unsigned int ngroups, pageidx = 0, pageset_count, unsigned int ngroups, pageset_count,
tididx = 0, mapped, mapped_pages = 0; tididx = 0, mapped, mapped_pages = 0;
u32 *tidlist = NULL; u32 *tidlist = NULL;
struct tid_user_buf *tidbuf; struct tid_user_buf *tidbuf;
@ -318,7 +317,7 @@ int hfi1_user_exp_rcv_setup(struct hfi1_filedata *fd,
tid_group_pop(&uctxt->tid_group_list); tid_group_pop(&uctxt->tid_group_list);
ret = program_rcvarray(fd, tidbuf, grp, ret = program_rcvarray(fd, tidbuf, grp,
pageidx, dd->rcv_entries.group_size, dd->rcv_entries.group_size,
tidlist, &tididx, &mapped); tidlist, &tididx, &mapped);
/* /*
* If there was a failure to program the RcvArray * If there was a failure to program the RcvArray
@ -334,11 +333,10 @@ int hfi1_user_exp_rcv_setup(struct hfi1_filedata *fd,
tid_group_add_tail(grp, &uctxt->tid_full_list); tid_group_add_tail(grp, &uctxt->tid_full_list);
ngroups--; ngroups--;
pageidx += ret;
mapped_pages += mapped; mapped_pages += mapped;
} }
while (pageidx < pageset_count) { while (tididx < pageset_count) {
struct tid_group *grp, *ptr; struct tid_group *grp, *ptr;
/* /*
* If we don't have any partially used tid groups, check * If we don't have any partially used tid groups, check
@ -360,11 +358,11 @@ int hfi1_user_exp_rcv_setup(struct hfi1_filedata *fd,
*/ */
list_for_each_entry_safe(grp, ptr, &uctxt->tid_used_list.list, list_for_each_entry_safe(grp, ptr, &uctxt->tid_used_list.list,
list) { list) {
unsigned use = min_t(unsigned, pageset_count - pageidx, unsigned use = min_t(unsigned, pageset_count - tididx,
grp->size - grp->used); grp->size - grp->used);
ret = program_rcvarray(fd, tidbuf, grp, ret = program_rcvarray(fd, tidbuf, grp,
pageidx, use, tidlist, use, tidlist,
&tididx, &mapped); &tididx, &mapped);
if (ret < 0) { if (ret < 0) {
hfi1_cdbg(TID, hfi1_cdbg(TID,
@ -376,11 +374,10 @@ int hfi1_user_exp_rcv_setup(struct hfi1_filedata *fd,
tid_group_move(grp, tid_group_move(grp,
&uctxt->tid_used_list, &uctxt->tid_used_list,
&uctxt->tid_full_list); &uctxt->tid_full_list);
pageidx += ret;
mapped_pages += mapped; mapped_pages += mapped;
need_group = 0; need_group = 0;
/* Check if we are done so we break out early */ /* Check if we are done so we break out early */
if (pageidx >= pageset_count) if (tididx >= pageset_count)
break; break;
} else if (WARN_ON(ret == 0)) { } else if (WARN_ON(ret == 0)) {
/* /*
@ -589,7 +586,6 @@ static u32 find_phys_blocks(struct tid_user_buf *tidbuf, unsigned int npages)
* struct tid_pageset holding information on physically contiguous * struct tid_pageset holding information on physically contiguous
* chunks from the user buffer), and other fields. * chunks from the user buffer), and other fields.
* @grp: RcvArray group * @grp: RcvArray group
* @start: starting index into sets array
* @count: number of struct tid_pageset's to program * @count: number of struct tid_pageset's to program
* @tidlist: the array of u32 elements when the information about the * @tidlist: the array of u32 elements when the information about the
* programmed RcvArray entries is to be encoded. * programmed RcvArray entries is to be encoded.
@ -609,14 +605,14 @@ static u32 find_phys_blocks(struct tid_user_buf *tidbuf, unsigned int npages)
* number of RcvArray entries programmed. * number of RcvArray entries programmed.
*/ */
static int program_rcvarray(struct hfi1_filedata *fd, struct tid_user_buf *tbuf, static int program_rcvarray(struct hfi1_filedata *fd, struct tid_user_buf *tbuf,
struct tid_group *grp, struct tid_group *grp, u16 count,
unsigned int start, u16 count,
u32 *tidlist, unsigned int *tididx, u32 *tidlist, unsigned int *tididx,
unsigned int *pmapped) unsigned int *pmapped)
{ {
struct hfi1_ctxtdata *uctxt = fd->uctxt; struct hfi1_ctxtdata *uctxt = fd->uctxt;
struct hfi1_devdata *dd = uctxt->dd; struct hfi1_devdata *dd = uctxt->dd;
u16 idx; u16 idx;
unsigned int start = *tididx;
u32 tidinfo = 0, rcventry, useidx = 0; u32 tidinfo = 0, rcventry, useidx = 0;
int mapped = 0; int mapped = 0;