1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-23 17:34:34 +03:00

lib/util: make use of tevent_cached_getpid() in performance critical code

This avoids wasting getpid() calls in a lot of places...

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
This commit is contained in:
Stefan Metzmacher 2022-07-25 14:29:35 +02:00 committed by Jeremy Allison
parent 94e130fb86
commit 0f544f3363
2 changed files with 4 additions and 2 deletions

View File

@ -21,6 +21,7 @@
#include "replace.h" #include "replace.h"
#include "system/locale.h" #include "system/locale.h"
#include <tevent.h>
#include "lib/util/samba_util.h" #include "lib/util/samba_util.h"
#include "lib/util/debug.h" #include "lib/util/debug.h"
@ -56,7 +57,7 @@ _PUBLIC_ uint64_t generate_unique_u64(uint64_t veto_value)
int pid; int pid;
} generate_unique_u64_state; } generate_unique_u64_state;
int pid = getpid(); int pid = tevent_cached_getpid();
if (unlikely(pid != generate_unique_u64_state.pid)) { if (unlikely(pid != generate_unique_u64_state.pid)) {
generate_unique_u64_state = (struct generate_unique_u64_state) { generate_unique_u64_state = (struct generate_unique_u64_state) {

View File

@ -25,6 +25,7 @@
#include "replace.h" #include "replace.h"
#include <talloc.h> #include <talloc.h>
#include <tevent.h>
#include "system/network.h" #include "system/network.h"
#include "system/filesys.h" #include "system/filesys.h"
#include "system/locale.h" #include "system/locale.h"
@ -422,7 +423,7 @@ _PUBLIC_ bool fcntl_lock(int fd, int op, off_t offset, off_t count, int type)
if ((ret != -1) && if ((ret != -1) &&
(lock.l_type != F_UNLCK) && (lock.l_type != F_UNLCK) &&
(lock.l_pid != 0) && (lock.l_pid != 0) &&
(lock.l_pid != getpid())) { (lock.l_pid != tevent_cached_getpid())) {
DEBUG(3,("fcntl_lock: fd %d is locked by pid %d\n",fd,(int)lock.l_pid)); DEBUG(3,("fcntl_lock: fd %d is locked by pid %d\n",fd,(int)lock.l_pid));
return true; return true;
} }