[PATCH 14/18] Removed nxt_always_inline from nxt_unit_process_release().
Alejandro Colomar
alx.manpages at gmail.com
Thu Jun 2 18:05:08 UTC 2022
In various cases it's being called in error handling code (slow
path), where we shouldn't be inlining.
See usage:
$ grep -rnB5 nxt_unit_process_release
src/nxt_unit.c-118-static void nxt_unit_awake_ctx(nxt_unit_ctx_t *ctx,
src/nxt_unit.c-119- nxt_unit_ctx_impl_t *ctx_impl);
src/nxt_unit.c-120-static void nxt_unit_mmaps_init(nxt_unit_mmaps_t *mmaps);
src/nxt_unit.c-121-nxt_always_inline static inline void nxt_unit_process_use(
src/nxt_unit.c-122- nxt_unit_process_t *process);
src/nxt_unit.c:123:nxt_always_inline static inline void nxt_unit_process_release(
--
src/nxt_unit.c-4129- nxt_atomic_fetch_add(&process->use_count, 1);
src/nxt_unit.c-4130-}
src/nxt_unit.c-4131-
src/nxt_unit.c-4132-
src/nxt_unit.c-4133-static inline void
src/nxt_unit.c:4134:nxt_unit_process_release(nxt_unit_process_t *process)
--
src/nxt_unit.c-5326- new_port.out_fd = port_sockets[1];
src/nxt_unit.c-5327- new_port.data = NULL;
src/nxt_unit.c-5328-
src/nxt_unit.c-5329- pthread_mutex_unlock(&lib->mutex);
src/nxt_unit.c-5330-
src/nxt_unit.c:5331: nxt_unit_process_release(process);
--
src/nxt_unit.c-5402- if (c == 1) {
src/nxt_unit.c-5403- nxt_unit_debug(NULL, "destroy port{%d,%d} in_fd %d out_fd %d",
src/nxt_unit.c-5404- (int) port->id.pid, (int) port->id.id,
src/nxt_unit.c-5405- port->in_fd, port->out_fd);
src/nxt_unit.c-5406-
src/nxt_unit.c:5407: nxt_unit_process_release(port_impl->process);
--
src/nxt_unit.c-5587-unlock:
src/nxt_unit.c-5588-
src/nxt_unit.c-5589- pthread_mutex_unlock(&lib->mutex);
src/nxt_unit.c-5590-
src/nxt_unit.c-5591- if (nxt_slow_path(process != NULL)) {
src/nxt_unit.c:5592: nxt_unit_process_release(process);
--
src/nxt_unit.c-5746-
src/nxt_unit.c-5747- nxt_unit_port_release(&port->port);
src/nxt_unit.c-5748-
src/nxt_unit.c-5749- } nxt_queue_loop;
src/nxt_unit.c-5750-
src/nxt_unit.c:5751: nxt_unit_process_release(process);
---
src/nxt_unit.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/src/nxt_unit.c b/src/nxt_unit.c
index cac913d..8b6a5b0 100644
--- a/src/nxt_unit.c
+++ b/src/nxt_unit.c
@@ -120,8 +120,7 @@ static void nxt_unit_awake_ctx(nxt_unit_ctx_t *ctx,
static void nxt_unit_mmaps_init(nxt_unit_mmaps_t *mmaps);
nxt_always_inline static inline void nxt_unit_process_use(
nxt_unit_process_t *process);
-nxt_always_inline static inline void nxt_unit_process_release(
- nxt_unit_process_t *process);
+static inline void nxt_unit_process_release(nxt_unit_process_t *process);
static void nxt_unit_mmaps_destroy(nxt_unit_mmaps_t *mmaps);
static int nxt_unit_check_rbuf_mmap(nxt_unit_ctx_t *ctx,
nxt_unit_mmaps_t *mmaps, pid_t pid, uint32_t id,
--
2.36.1
More information about the unit
mailing list