On Wed, Aug 18, 2021 at 07:08:24AM +0200, Miklos Szeredi wrote: > On Wed, 18 Aug 2021 at 05:40, JeffleXu <jefflexu@xxxxxxxxxxxxxxxxx> wrote: > > > I'm not sure if I fully understand your idea. Then in this case, host > > daemon only prepares 4KB while guest thinks that the whole DAX window > > (e.g., 2MB) has been fully mapped. Then when guest really accesses the > > remained part (2MB - 4KB), page fault is triggered, and now host daemon > > is responsible for downloading the remained part? > > Yes. Mapping an area just means setting up the page tables, it does > not result in actual data transfer. But daemon will not get the page fault (its the host kernel which will handle it). And host kernel does not know that file chunk needs to be downloaded. - Either we somehow figure out user fault handling and somehow qemu/virtiofsd get to handle the page fault then they can download file. - Or we download the 2MB chunk at the FUSE_SETUPMAPPING time so that later kernel fault can handle it. Am I missing something. Vivek _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/virtualization