That's right, but what I want to demonstrate is that the address returned by mmap() is invalid and the dereference crashes the program, while it shouldn't. I could equally omit this statement, in which case mbind() would fail with EFAULT. On 06/18/2011 09:12 PM, Andi Kleen wrote: >> for (i = 0; i < NR_ITER; i++) { >> addr = mmap(0, PAGE_SIZE, PROT_READ | PROT_WRITE, >> MAP_ANONYMOUS | MAP_PRIVATE, 0, 0); >> if (addr == (void *) -1) { >> assert(0 && "mmap failed"); >> } >> *addr = 0; >> >> err = mbind(addr, PAGE_SIZE, MPOL_BIND, &node, sizeof(node), 0); > > mbind() can be only done before the first touch. you're not actually testing > numa policy. > > -andi -- V.K.
Attachment:
signature.asc
Description: OpenPGP digital signature