On Tue, Sep 29, 2020 at 04:44:25PM +0800, Sherry Sun wrote: > Mapping kernel space memory to user space as noncached, since user space > need check the updates of avail_idx and device page flags timely. > > Signed-off-by: Joakim Zhang <qiangqing.zhang@xxxxxxx> > Signed-off-by: Sherry Sun <sherry.sun@xxxxxxx> > --- > drivers/misc/mic/vop/vop_vringh.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/misc/mic/vop/vop_vringh.c b/drivers/misc/mic/vop/vop_vringh.c > index 4d5feb39aeb7..6e193bd64ef1 100644 > --- a/drivers/misc/mic/vop/vop_vringh.c > +++ b/drivers/misc/mic/vop/vop_vringh.c > @@ -1057,7 +1057,7 @@ static int vop_mmap(struct file *f, struct vm_area_struct *vma) > } > err = remap_pfn_range(vma, vma->vm_start + offset, > pa >> PAGE_SHIFT, size, > - vma->vm_page_prot); > + pgprot_noncached(vma->vm_page_prot)); You can't call remap_pfn_range on memory returned from dma_alloc_coherent (which btw is not marked uncached on many platforms). You need to use the dma_mmap_coherent helper instead. And this also needs to go into the first patch.