Messages in this thread | | | Subject | Re: Understanding Linux addr space, malloc, and heap | From | Arjan van de Ven <> | Date | Fri, 21 Oct 2005 17:47:36 +0200 |
| |
On Fri, 2005-10-21 at 16:37 +0100, Alex Bligh - linux-kernel wrote: > > --On 21 October 2005 17:22 +0200 Arjan van de Ven <arjan@infradead.org> > wrote: > > > Ok I meant in the "while adhering to the standard" :) > > More precisely, as per the man page: > > POSIX.1b says that mprotect can be used only on regions of memory > > obtained from mmap(2). > > But what is interesting (if anything) is this: > > ERRORS > > EINVAL addr is not a valid pointer, or not a multiple of > > PAGESIZE. > > So if he calls mprotect with memory allocated by malloc (which should > fail), why doesn't he get EINVAL? He says it returns 0 (meaning it > succeeded). Which it shouldn't (unless he is stupendously lucky in > malloc's allocation, in which case it should work).
it succeeds all right; it just does other things than you expect perhaps ;)
your alignment code had a bug, so it would align potentially to the wrong piece of memory
- 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/
| |