maybe the kernel should use something like this to validate pointers to null terminated strings? (this assumes that validaddr for a byte will also be valid for the whole page) void validstraddr(char *p) { char *x; for(;;){ validaddr((ulong)p, 1, 0); x = (char*)(((ulong)p & ~(BY2PG-1))+BY2PG); for(; p < x; p++){ if(*p == 0) return; } } } -- cinap