"lazy" mmap for a device driver ?

From: Luigi Rizzo <rizzo_at_iet.unipi.it>
Date: Tue, 31 May 2011 22:21:42 +0200
hi,
i have a kernel module implementing a memory mapped special device
which exports a large block of memory to the process.
I see that when the process calls mmap(), my routine foo_mmap()
is called immediately once per page, even though the process is
not actually touching the pages. I believe this happens
through dev_pager_alloc().

Right now i can live with that because all the memory is allocated
at module load time, but i might want to have a sparse memory
region which is populated dynamically, so i was wondering if
there is a way to achieve this. I see there are two other
device routines, d_mmap2 and d_mmap_single, any pointer to
documentation or comments on how they differ ?

thanks
luigi
Received on Tue May 31 2011 - 18:24:23 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:14 UTC