[systemd-devel] fchmod_opath() - why is this not in the kernel?

Lennart Poettering lennart at poettering.net
Tue Dec 4 11:30:20 UTC 2018


On Mo, 03.12.18 21:06, Mike Gilbert (floppym at gentoo.org) wrote:

> The fchmod_opath() function in systemd seems like a hacky workaround
> for a limitation in the kernel -- you can't call fchmod() on an fd
> opened with O_PATH, and fchmodat() doesn't support the AT_EMPTY_PATH
> flag.
>
> Has any attempt been made to add this functionality in the kernel? If
> someone has already tried and failed, I will refrain from making an
> attempt myself.

They opened up a couple of syscalls to O_PATH over time. Hence maybe
this actually does work on current kernels, it's worth checking
again. But even if, this wouldn't be good enough for us, since we need
to support older kernels for a while again.

And no, I have not heard of or was involved in any attempt to fix the
kernel in this regard.

Lennart

--
Lennart Poettering, Red Hat


More information about the systemd-devel mailing list