提交 8aabf0ed 编写于 作者: E Eric Farman 提交者: Cornelia Huck

vfio-ccw: Adjust the first IDAW outside of the nested loops

Now that pfn_array_table[] is always an array of 1, it seems silly to
check for the very first entry in an array in the middle of two nested
loops, since we know it'll only ever happen once.

Let's move this outside the loops to simplify things, even though
the "k" variable is still necessary.
Signed-off-by: NEric Farman <farman@linux.ibm.com>
Reviewed-by: NCornelia Huck <cohuck@redhat.com>
Message-Id: <20190606202831.44135-7-farman@linux.ibm.com>
Signed-off-by: NCornelia Huck <cohuck@redhat.com>
上级 cc06ee98
......@@ -201,11 +201,12 @@ static inline void pfn_array_table_idal_create_words(
pa = pat->pat_pa + i;
for (j = 0; j < pa->pa_nr; j++) {
idaws[k] = pa->pa_pfn[j] << PAGE_SHIFT;
if (k == 0)
idaws[k] += pa->pa_iova & (PAGE_SIZE - 1);
k++;
}
}
/* Adjust the first IDAW, since it may not start on a page boundary */
idaws[0] += pat->pat_pa->pa_iova & (PAGE_SIZE - 1);
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册