Am 26.04.2017 17:53, schrieb Al Viro: > On Wed, Apr 26, 2017 at 12:35:08PM +0100, David Howells wrote: > >> AT_EMPTY_PATH wasn't there back in 2010. I could eliminate the: >> >> statx(fd, NULL, 0, ...); >> >> option in favour of: >> >> statx(fd, "", AT_EMPTY_PATH, ...); >> >> Any thoughts either way, Al? >> >> It would seem that AT_EMPTY_PATH should be redundant, though, since you can >> just set the pathname pointer to NULL. > > NULL pathname pointer means an error for a lot of existing syscalls, so > if you want to turn them into wrappers for ...at() ones at libc level, > you'd need to do special-casing of NULL both kernel-side and in libc wrappers. > > Requiring "" + AT_EMPTY_PATH means a single dereference of userland pointer. > OTOH, that's not a terrible burden... perhaps this is something the manpage should mention ? lately we had some changes in syscall: Re: [PATCH] syscall(2): note parisc handling of aligned register pairs I have no clue about NULL pointers in syscalls() but when we write that "General: pathname" (i assume: char *) "NULLpointer mean an error for existing syscalls". This sounds right, -- To unsubscribe from this list: send the line "unsubscribe linux-man" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html