On Tue, Nov 10, Boris Ostrovsky wrote: > Doing so will cause the grant to be unmapped and then, during > fault handling, the fault to be mistakenly treated as NUMA hint > fault. > > In addition, even if those maps could partcipate in NUMA > balancing, it wouldn't provide any benefit since we are unable > to determine physical page's node (even if/when VNUMA is > implemented). > > Marking grant maps' VMAs as VM_IO will exclude them from being > part of NUMA balancing. This breaks qdisk+aio because now such pages are rejected with -EFAULT: check_vma_flags __get_user_pages __get_user_pages_locked __get_user_pages_unlocked get_user_pages_fast iov_iter_get_pages dio_refill_pages do_direct_IO do_blockdev_direct_IO do_blockdev_direct_IO ext4_direct_IO_read generic_file_read_iter aio_run_iocb domU.cfg: builder=hvm disk=['vdev=xvda, direct-io-safe, backendtype=qdisk, target=img.raw'] > @@ -802,7 +802,7 @@ static int gntdev_mmap(struct file *flip, struct vm_area_struct *vma) > - vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP; > + vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP | VM_IO; Olaf
Attachment:
signature.asc
Description: PGP signature