Re: [RFC v2] x86-64: Allow emulated vsyscalls from user addresses

From: Pavel Machek
Date: Thu Aug 11 2011 - 09:16:24 EST


> They trace control flow through the vsyscall page and recompile that
> code somewhere else. Then they expect it to work. DynamoRIO
> ( and Pin ( are
> affected. They crash when tracing programs that use vsyscalls.
> Valgrind is smart enough not to cause problems. It crashes on the
> getcpu vsyscall, but that has nothing to do with emulation.
> This patch makes each of the three vsyscall entries use a different
> vector so that they can work when relocated. It assumes that the
> code that relocates them is okay with the int instruction acting
> like ret. DynamoRIO at least appears to work.

int acting as ret is seriously weird semantics. And no, invalid
syscall parameters will not cause segfault, just return of -EFAULT. So
... can this be changed?

(cesky, pictures)
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at