summaryrefslogtreecommitdiff
path: root/.gitmodules
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2018-10-25 21:27:00 +0200
committerSven Eden <sven.eden@prydeworx.com>2018-10-29 10:18:40 +0100
commit85f97ad9e8578b5a9c2de75b7263bd67719a7fea (patch)
tree443278994056ca03ad2e43b8192d191705f8abf5 /.gitmodules
parent8894c11397f3b2a22cf163f1da9708bba30e4933 (diff)
fd-util: optimize fd_get_path() a bit
journald calls fd_get_path() a lot (it probably shouldn't, there's some room for improvement there, but I'll leave that for another time), hence it's worth optimizing the call a bit, in particular as it's easy. Previously we'd open the dir /proc/self/fd/ first, before reading the symlink inside it. This means the whole function requires three system calls: open(), readlinkat(), close(). The reason for doing it this way is to distinguish the case when we see ENOENT because /proc is not mounted and the case when the fd doesn't exist. With this change we'll directly go for the readlink(), and only if that fails do an access() to see if /proc is mounted at all. This optimizes the common case (where the fd is valid and /proc mounted), in favour of the uncommon case (where the fd doesn#t exist or /proc is not mounted). (cherry picked from commit f267719c389de57ceda433f6288a505e7eeb2f8f)
Diffstat (limited to '.gitmodules')
0 files changed, 0 insertions, 0 deletions