Gilles Chanteperdrix wrote: > Hi Jan, > > I have just commited a modification of the nucleus heap which allows > faulting newly mapped pages. However, I noticed that we should modify > rtdm_mmap_to_user as in the attached patch.
No general concerns, please just provide an empty xnarch_fault_range as default to avoid the #ifdefs. Is this an ARM-only issue? > > At this chance, I also noticed that there is no way to ask for uncached > memory to rtdm_mmap_to_user, how do you think we should change > rtdm_mmap_to_user to allow this? Look like we would have to introduce a 'flags' argument to rtdm_mmap_to_user. That's 2.5 material, where we'll change a few RTDM APIs anyway. Jan > > Regards. > > Index: ksrc/skins/rtdm/drvlib.c > =================================================================== > --- ksrc/skins/rtdm/drvlib.c (revision 4390) > +++ ksrc/skins/rtdm/drvlib.c (working copy) > @@ -1781,6 +1781,7 @@ static int rtdm_mmap_buffer(struct file > { > struct rtdm_mmap_data *mmap_data = filp->private_data; > unsigned long vaddr, paddr, maddr, size; > + int ret; > > vma->vm_ops = mmap_data->vm_ops; > vma->vm_private_data = mmap_data->vm_private_data; > @@ -1810,15 +1811,25 @@ static int rtdm_mmap_buffer(struct file > vaddr += PAGE_SIZE; > mapped_size += PAGE_SIZE; > } > - return 0; > +#ifdef xnarch_fault_range > + xnarch_fault_range(vma); > +#endif /* xnarch_fault_range */ > + ret = 0; > } else > #endif /* CONFIG_MMU */ > if (mmap_data->src_paddr) > - return xnarch_remap_io_page_range(filp, vma, maddr, paddr, > - size, PAGE_SHARED); > - else > - return xnarch_remap_kmem_page_range(vma, maddr, paddr, > - size, PAGE_SHARED); > + ret = xnarch_remap_io_page_range(filp, vma, maddr, paddr, > + size, PAGE_SHARED); > + else { > + ret = xnarch_remap_kmem_page_range(vma, maddr, paddr, > + size, PAGE_SHARED); > +#ifdef xnarch_fault_range > + if (!ret) > + xnarch_fault_range(vma); > +#endif /* xnarch_fault_range */ > + } > + > + return ret; > } > > static struct file_operations rtdm_mmap_fops = { > >
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Xenomai-core mailing list Xenomai-core@gna.org https://mail.gna.org/listinfo/xenomai-core