Messages in this thread | | | Subject | Re: [PATCH] Fix bound checking in do_mmap_pgoff() | From | Benjamin Herrenschmidt <> | Date | Sun, 19 Sep 2004 23:09:22 +1000 |
| |
On Sun, 2004-09-19 at 22:59, Hugh Dickins wrote: > On Sun, 19 Sep 2004, Benjamin Herrenschmidt wrote: > > > > A small issue has been forever in do_mmap_pgoff() in the boundary checking > > in the sense that it won't let you mmap with offset+len enclosing the last > > page of the "address space". For example, an mmap of /dev/mem won't let you > > map the last page of the physical address space (which I need for a ROM dump > > tool on pmac). This fixes it: > > - if ((pgoff + (len >> PAGE_SHIFT)) < pgoff) > > + if ((pgoff + (len >> PAGE_SHIFT) - 1) < pgoff) > > Your physical address space happens to be 16TB? Okay...
hrm... nope... my bad, the problem comes from elsewhere, sorry. I need to look at it again.
> I think you need to add in the patch below, to prevent mismerging of vmas. > There might be other places which would get confused by an end pgoff of 0.
Ok, that's becoming more tricky then, Andrew, of course drop the bogus patch for now, I'll look into more details later if I find time. In the meantime, we'll continue use a special kernel module for doing the ROM dump.
Ben.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |