1
0
Fork 0

tcmu: fix page addr in tcmu_flush_dcache_range

The page addr should be update.

Signed-off-by: tangwenji <tang.wenji@zte.com.cn>
Signed-off-by: Mike Christie <mchristi@redhat.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
hifive-unleashed-5.1
tangwenji 2017-11-28 12:40:27 -06:00 committed by Nicholas Bellinger
parent 094bb5d766
commit 26d2b3106f
1 changed files with 3 additions and 2 deletions

View File

@ -455,12 +455,13 @@ static struct tcmu_cmd *tcmu_alloc_cmd(struct se_cmd *se_cmd)
static inline void tcmu_flush_dcache_range(void *vaddr, size_t size)
{
unsigned long offset = offset_in_page(vaddr);
void *start = vaddr - offset;
size = round_up(size+offset, PAGE_SIZE);
vaddr -= offset;
while (size) {
flush_dcache_page(virt_to_page(vaddr));
flush_dcache_page(virt_to_page(start));
start += PAGE_SIZE;
size -= PAGE_SIZE;
}
}