Messages in this thread | | | Subject | Re: Is the address space of a process continous | From | Arjan van de Ven <> | Date | Sun, 04 Dec 2005 22:46:29 +0100 |
| |
On Sun, 2005-12-04 at 15:37 -0600, Mohamed El Dawy wrote: > Hi, > I have a question. In the vma_memory_address struct, there are 2 > fields "vm_start" and "vm_end". I was wondering, does the process > address space include all addresses between those 2 addresses? or > could there be holes inside this range? > > The main reason I am asking is because I tried to call __follow_page() > on some of those addresses and got NULL as a result. I am not sure if > this is a hole, or just a problem with my code!
the kernel does this on demand; eg user mmaps a range user touches (read or writes) part of that range
each time the user gets to a page that wasn't touched/used before, the kernel takes a fault and fills in the address.
if you get nulls it's just pages that haven't been used yet.
- 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/
| |