Messages in this thread | | | From | "Ray Bryant" <> | Subject | Re: [PATCH/RFC] Shared page tables | Date | Wed, 25 Jan 2006 18:16:14 -0600 |
| |
Dave,
Here's another one to keep you awake at night:
mmap a shared, anonymous region of 8MB (2MB aligned), and fork off some children (4 is good enough for me). In each child, munmap() a 2 MB portion of the shared region (starting at offset 2MB in the shared region) and then mmap() a private, anonymous region in its place. Have each child store some unique data in that region, sleep for a bit and then go look to see if its data is still there.
Under 2.6.15, this works just fine. Under 2.6.15 + shpt patch, each child still points at the shared region and steps on the data of the other children.
I imagine the above gets even more interesting if the offset or length of the unmapped region is not a multiple of the 2MB alignment.
All of these test cases are for Opteron. Your alignment may vary.
(Sorry about this... )
-- Ray Bryant AMD Performance Labs Austin, Tx 512-602-0038 (o) 512-507-7807 (c)
- 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/
| |