Red Hat Bugzilla – Bug 176932
NPTL: mmap error when memory area is bigger than the mmap'ed object
Last modified: 2007-11-30 17:07:22 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.7.8) Gecko/20050524 Fedora/1.0.4-4 Firefox/1.0.4
Description of problem:
Create an object, then mmap more memory than the object size.
Linux does not return an error.
Details are available at:
Browse: (TC2) 2xi686HT - RHAS4u2 Run 1,2,3
Version-Release number of selected component (if applicable):
Steps to Reproduce:
(Used version was: OPTS cvs repository on Nov 14, 2005)
Actual Results: See:
Use the 3 (correct !) URLS:
Click the "Browse" button of : (TC2) 2xi686HT - RHAS4u2 Run 3
You can also select 2 runs and click the "Compare Selected" button.
I think that this behavior is in keeping with The SUS standard. Quoting from the
SUS 3 standard:
The system shall always zero-fill any partial page at the end of an object.
Further, the system shall never write out any modified portions of the last page
of an object which are beyond its end. [MPR] [Option Start] References within
the address range starting at pa and continuing for len bytes to whole pages
following the end of an object shall result in delivery of a SIGBUS signal.
This seems to imply that one can map past the end of the end of the object. And
in fact, linux devlivers a SIGBUS in thish case.