title: How to map a specific physical address range of linux kernel, of size less than one page size(4Kb) to user space
body: <p>I am working on a solution similar to user-space input/output drivers(Linux kernel UIO).</p>
  
  <p><strong><a href="https://www.kernel.org/doc/html/v4.12/driver-api/uio-howto.html" rel="nofollow noreferrer">Linux kernel UIO</a></strong></p>
  
  <p>I intend to map a specific physical address range(<strong>starting at specific physical address</strong>) from kernel space to user-space of size 0x100, which is less than one page size(4 Kb). I tried to solve this via kernel UIO framework but it maps(via <strong>mmap</strong> file operation of file <em>/dev/uio</em>) minimum for one page. I want a solution so that I can map exact specific 0x100 physical memory to user-space. If the user-space tries to access beyond that 0x100 range, it should not be allowed. So far the solution I came across deal in page level mappings. </p>