diff options
author | Lennart Poettering <lennart@poettering.net> | 2017-07-20 16:19:18 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2017-07-20 20:27:24 +0200 |
commit | df0ff127758809a45105893772de76082d12a26d (patch) | |
tree | 9deb3a960cf26b54beae6a0b60d376c6ba8efe9a /src/libsystemd | |
parent | 5c30a6d2b805ae9b5dd0ad003b9ee86b8965bc47 (diff) | |
download | systemd-df0ff127758809a45105893772de76082d12a26d.tar.gz |
tree-wide: make use of getpid_cached() wherever we can
This moves pretty much all uses of getpid() over to getpid_raw(). I
didn't specifically check whether the optimization is worth it for each
replacement, but in order to keep things simple and systematic I
switched over everything at once.
Diffstat (limited to 'src/libsystemd')
-rw-r--r-- | src/libsystemd/sd-bus/bus-creds.c | 2 | ||||
-rw-r--r-- | src/libsystemd/sd-bus/sd-bus.c | 4 | ||||
-rw-r--r-- | src/libsystemd/sd-bus/test-bus-benchmark.c | 2 | ||||
-rw-r--r-- | src/libsystemd/sd-bus/test-bus-kernel-bloom.c | 2 | ||||
-rw-r--r-- | src/libsystemd/sd-bus/test-bus-kernel.c | 2 | ||||
-rw-r--r-- | src/libsystemd/sd-bus/test-bus-zero-copy.c | 2 | ||||
-rw-r--r-- | src/libsystemd/sd-daemon/sd-daemon.c | 6 | ||||
-rw-r--r-- | src/libsystemd/sd-event/sd-event.c | 4 | ||||
-rw-r--r-- | src/libsystemd/sd-event/test-event.c | 10 | ||||
-rw-r--r-- | src/libsystemd/sd-netlink/sd-netlink.c | 4 | ||||
-rw-r--r-- | src/libsystemd/sd-resolve/sd-resolve.c | 4 |
11 files changed, 21 insertions, 21 deletions
diff --git a/src/libsystemd/sd-bus/bus-creds.c b/src/libsystemd/sd-bus/bus-creds.c index 349fa57f2d..649fcdba44 100644 --- a/src/libsystemd/sd-bus/bus-creds.c +++ b/src/libsystemd/sd-bus/bus-creds.c @@ -165,7 +165,7 @@ _public_ int sd_bus_creds_new_from_pid(sd_bus_creds **ret, pid_t pid, uint64_t m assert_return(ret, -EINVAL); if (pid == 0) - pid = getpid(); + pid = getpid_cached(); c = bus_creds_new(); if (!c) diff --git a/src/libsystemd/sd-bus/sd-bus.c b/src/libsystemd/sd-bus/sd-bus.c index 2f065c2657..7059578eb4 100644 --- a/src/libsystemd/sd-bus/sd-bus.c +++ b/src/libsystemd/sd-bus/sd-bus.c @@ -187,7 +187,7 @@ _public_ int sd_bus_new(sd_bus **ret) { r->creds_mask |= SD_BUS_CREDS_WELL_KNOWN_NAMES|SD_BUS_CREDS_UNIQUE_NAME; r->hello_flags |= KDBUS_HELLO_ACCEPT_FD; r->attach_flags |= KDBUS_ATTACH_NAMES; - r->original_pid = getpid(); + r->original_pid = getpid_cached(); assert_se(pthread_mutex_init(&r->memfd_cache_mutex, NULL) == 0); @@ -3131,7 +3131,7 @@ bool bus_pid_changed(sd_bus *bus) { /* We don't support people creating a bus connection and * keeping it around over a fork(). Let's complain. */ - return bus->original_pid != getpid(); + return bus->original_pid != getpid_cached(); } static int io_callback(sd_event_source *s, int fd, uint32_t revents, void *userdata) { diff --git a/src/libsystemd/sd-bus/test-bus-benchmark.c b/src/libsystemd/sd-bus/test-bus-benchmark.c index 56ac2ab3dd..ef7abe4dd9 100644 --- a/src/libsystemd/sd-bus/test-bus-benchmark.c +++ b/src/libsystemd/sd-bus/test-bus-benchmark.c @@ -276,7 +276,7 @@ int main(int argc, char *argv[]) { assert_se(arg_loop_usec > 0); if (type == TYPE_KDBUS) { - assert_se(asprintf(&name, "deine-mutter-%u", (unsigned) getpid()) >= 0); + assert_se(asprintf(&name, "deine-mutter-%u", (unsigned) getpid_cached()) >= 0); bus_ref = bus_kernel_create_bus(name, false, &bus_name); if (bus_ref == -ENOENT) diff --git a/src/libsystemd/sd-bus/test-bus-kernel-bloom.c b/src/libsystemd/sd-bus/test-bus-kernel-bloom.c index eb6179d7d2..03d6f27d55 100644 --- a/src/libsystemd/sd-bus/test-bus-kernel-bloom.c +++ b/src/libsystemd/sd-bus/test-bus-kernel-bloom.c @@ -49,7 +49,7 @@ static void test_one( sd_bus *a, *b; int r, found = 0; - assert_se(asprintf(&name, "deine-mutter-%u", (unsigned) getpid()) >= 0); + assert_se(asprintf(&name, "deine-mutter-%u", (unsigned) getpid_cached()) >= 0); bus_ref = bus_kernel_create_bus(name, false, &bus_name); if (bus_ref == -ENOENT) diff --git a/src/libsystemd/sd-bus/test-bus-kernel.c b/src/libsystemd/sd-bus/test-bus-kernel.c index 2214817312..2fc22883e0 100644 --- a/src/libsystemd/sd-bus/test-bus-kernel.c +++ b/src/libsystemd/sd-bus/test-bus-kernel.c @@ -41,7 +41,7 @@ int main(int argc, char *argv[]) { log_set_max_level(LOG_DEBUG); - assert_se(asprintf(&name, "deine-mutter-%u", (unsigned) getpid()) >= 0); + assert_se(asprintf(&name, "deine-mutter-%u", (unsigned) getpid_cached()) >= 0); bus_ref = bus_kernel_create_bus(name, false, &bus_name); if (bus_ref == -ENOENT) diff --git a/src/libsystemd/sd-bus/test-bus-zero-copy.c b/src/libsystemd/sd-bus/test-bus-zero-copy.c index 3380e8500a..e599427ce6 100644 --- a/src/libsystemd/sd-bus/test-bus-zero-copy.c +++ b/src/libsystemd/sd-bus/test-bus-zero-copy.c @@ -52,7 +52,7 @@ int main(int argc, char *argv[]) { log_set_max_level(LOG_DEBUG); - assert_se(asprintf(&name, "deine-mutter-%u", (unsigned) getpid()) >= 0); + assert_se(asprintf(&name, "deine-mutter-%u", (unsigned) getpid_cached()) >= 0); bus_ref = bus_kernel_create_bus(name, false, &bus_name); if (bus_ref == -ENOENT) diff --git a/src/libsystemd/sd-daemon/sd-daemon.c b/src/libsystemd/sd-daemon/sd-daemon.c index a9a32dd5a2..be1f01112e 100644 --- a/src/libsystemd/sd-daemon/sd-daemon.c +++ b/src/libsystemd/sd-daemon/sd-daemon.c @@ -70,7 +70,7 @@ _public_ int sd_listen_fds(int unset_environment) { goto finish; /* Is this for us? */ - if (getpid() != pid) { + if (getpid_cached() != pid) { r = 0; goto finish; } @@ -518,7 +518,7 @@ _public_ int sd_pid_notify_with_fds(pid_t pid, int unset_environment, const char msghdr.msg_namelen = SOCKADDR_UN_LEN(sockaddr.un); - have_pid = pid != 0 && pid != getpid(); + have_pid = pid != 0 && pid != getpid_cached(); if (n_fds > 0 || have_pid) { /* CMSG_SPACE(0) may return value different than zero, which results in miscalculated controllen. */ @@ -659,7 +659,7 @@ _public_ int sd_watchdog_enabled(int unset_environment, uint64_t *usec) { goto finish; /* Is this for us? */ - if (getpid() != pid) { + if (getpid_cached() != pid) { r = 0; goto finish; } diff --git a/src/libsystemd/sd-event/sd-event.c b/src/libsystemd/sd-event/sd-event.c index b4686d0065..320a1ca5c0 100644 --- a/src/libsystemd/sd-event/sd-event.c +++ b/src/libsystemd/sd-event/sd-event.c @@ -436,7 +436,7 @@ _public_ int sd_event_new(sd_event** ret) { e->watchdog_fd = e->epoll_fd = e->realtime.fd = e->boottime.fd = e->monotonic.fd = e->realtime_alarm.fd = e->boottime_alarm.fd = -1; e->realtime.next = e->boottime.next = e->monotonic.next = e->realtime_alarm.next = e->boottime_alarm.next = USEC_INFINITY; e->realtime.wakeup = e->boottime.wakeup = e->monotonic.wakeup = e->realtime_alarm.wakeup = e->boottime_alarm.wakeup = WAKEUP_CLOCK_DATA; - e->original_pid = getpid(); + e->original_pid = getpid_cached(); e->perturb = USEC_INFINITY; r = prioq_ensure_allocated(&e->pending, pending_prioq_compare); @@ -493,7 +493,7 @@ static bool event_pid_changed(sd_event *e) { /* We don't support people creating an event loop and keeping * it around over a fork(). Let's complain. */ - return e->original_pid != getpid(); + return e->original_pid != getpid_cached(); } static void source_io_unregister(sd_event_source *s) { diff --git a/src/libsystemd/sd-event/test-event.c b/src/libsystemd/sd-event/test-event.c index 8425378f34..1a581ae23e 100644 --- a/src/libsystemd/sd-event/test-event.c +++ b/src/libsystemd/sd-event/test-event.c @@ -317,11 +317,11 @@ static void test_rtqueue(void) { assert_se(sd_event_source_set_priority(v, -10) >= 0); - assert(sigqueue(getpid(), SIGRTMIN+2, (union sigval) { .sival_int = 1 }) >= 0); - assert(sigqueue(getpid(), SIGRTMIN+3, (union sigval) { .sival_int = 2 }) >= 0); - assert(sigqueue(getpid(), SIGUSR2, (union sigval) { .sival_int = 3 }) >= 0); - assert(sigqueue(getpid(), SIGRTMIN+3, (union sigval) { .sival_int = 4 }) >= 0); - assert(sigqueue(getpid(), SIGUSR2, (union sigval) { .sival_int = 5 }) >= 0); + assert(sigqueue(getpid_cached(), SIGRTMIN+2, (union sigval) { .sival_int = 1 }) >= 0); + assert(sigqueue(getpid_cached(), SIGRTMIN+3, (union sigval) { .sival_int = 2 }) >= 0); + assert(sigqueue(getpid_cached(), SIGUSR2, (union sigval) { .sival_int = 3 }) >= 0); + assert(sigqueue(getpid_cached(), SIGRTMIN+3, (union sigval) { .sival_int = 4 }) >= 0); + assert(sigqueue(getpid_cached(), SIGUSR2, (union sigval) { .sival_int = 5 }) >= 0); assert_se(n_rtqueue == 0); assert_se(last_rtqueue_sigval == 0); diff --git a/src/libsystemd/sd-netlink/sd-netlink.c b/src/libsystemd/sd-netlink/sd-netlink.c index 68435564de..d67244676c 100644 --- a/src/libsystemd/sd-netlink/sd-netlink.c +++ b/src/libsystemd/sd-netlink/sd-netlink.c @@ -44,7 +44,7 @@ static int sd_netlink_new(sd_netlink **ret) { rtnl->n_ref = REFCNT_INIT; rtnl->fd = -1; rtnl->sockaddr.nl.nl_family = AF_NETLINK; - rtnl->original_pid = getpid(); + rtnl->original_pid = getpid_cached(); LIST_HEAD_INIT(rtnl->match_callbacks); @@ -99,7 +99,7 @@ static bool rtnl_pid_changed(sd_netlink *rtnl) { /* We don't support people creating an rtnl connection and * keeping it around over a fork(). Let's complain. */ - return rtnl->original_pid != getpid(); + return rtnl->original_pid != getpid_cached(); } int sd_netlink_open_fd(sd_netlink **ret, int fd) { diff --git a/src/libsystemd/sd-resolve/sd-resolve.c b/src/libsystemd/sd-resolve/sd-resolve.c index 60aa55de3b..12fae65e6b 100644 --- a/src/libsystemd/sd-resolve/sd-resolve.c +++ b/src/libsystemd/sd-resolve/sd-resolve.c @@ -459,7 +459,7 @@ static bool resolve_pid_changed(sd_resolve *r) { /* We don't support people creating a resolver and keeping it * around after fork(). Let's complain. */ - return r->original_pid != getpid(); + return r->original_pid != getpid_cached(); } _public_ int sd_resolve_new(sd_resolve **ret) { @@ -473,7 +473,7 @@ _public_ int sd_resolve_new(sd_resolve **ret) { return -ENOMEM; resolve->n_ref = 1; - resolve->original_pid = getpid(); + resolve->original_pid = getpid_cached(); for (i = 0; i < _FD_MAX; i++) resolve->fds[i] = -1; |