Messages in this thread | ![/](/images/icornerl.gif) | | From | Dan Williams <> | Date | Mon, 10 Dec 2018 16:10:31 -0800 | Subject | Re: [PATCH V2 1/1] device-dax: check for vma range while dax_mmap. |
| |
On Tue, Aug 21, 2018 at 12:38 AM Yi Zhang <yi.z.zhang@linux.intel.com> wrote: > > On 2018-08-20 at 12:50:31 -0700, Dave Jiang wrote: > > > > > > On 08/20/2018 10:53 AM, Verma, Vishal L wrote: > > > > > > On Mon, 2018-08-13 at 20:02 +0800, Zhang Yi wrote: > > >> This patch prevents a user mapping an illegal vma range that is larger > > >> than a dax device physical resource. > > >> > > >> When qemu maps the dax device for virtual nvdimm's backend device, the > > >> v-nvdimm label area is defined at the end of mapped range. By using an > > >> illegal size that exceeds the range of the device dax, it will trigger a > > >> fault with qemu. > > >> > > >> Signed-off-by: Zhang Yi <yi.z.zhang@linux.intel.com> > > >> --- > > >> drivers/dax/device.c | 29 +++++++++++++++++++++++++++++ > > >> 1 file changed, 29 insertions(+) > > >> > > > > > > Looks good to me: > > > Reviewed-by: Vishal Verma <vishal.l.verma@intel.com> > > > > Applied. > Thanks Dava and Vishal's kindly review. Thank you.
So, it turns out this patch did not get merged for 4.20. I fumbled it when returning from vacation. However, I'm not sure it is needed. As long as attempts to access the out-of-range capacity results in SIGBUS then the implementation is correct. This is similar to the case where a file is truncated after the vma is established. That size is validated at fault time.
Could you be clearer about why this is a problem? The fault sounds like the correct result.
| ![\](/images/icornerr.gif) |