diff --git a/include/types/global.h b/include/types/global.h
index b3aa29c..48b6f9d 100644
--- a/include/types/global.h
+++ b/include/types/global.h
@@ -176,6 +176,7 @@
 extern struct global global;
 extern int  pid;                /* current process id */
 extern int  relative_pid;       /* process id starting at 1 */
+extern unsigned long pid_bit;   /* bit corresponding to the process id */
 extern int  actconn;            /* # of active sessions */
 extern int  listeners;
 extern int  jobs;               /* # of active jobs (listeners, sessions, open devices) */
diff --git a/src/haproxy.c b/src/haproxy.c
index 8993b89..a22ed32 100644
--- a/src/haproxy.c
+++ b/src/haproxy.c
@@ -118,6 +118,7 @@
 static struct list cfg_cfgfiles = LIST_HEAD_INIT(cfg_cfgfiles);
 int  pid;			/* current process id */
 int  relative_pid = 1;		/* process id starting at 1 */
+unsigned long pid_bit = 1;      /* bit corresponding to the process id */
 
 /* global options */
 struct global global = {
@@ -2655,6 +2656,7 @@
 				shut_your_big_mouth_gcc(write(pidfd, pidstr, strlen(pidstr)));
 			}
 			relative_pid++; /* each child will get a different one */
+			pid_bit <<= 1;
 		}
 
 #ifdef USE_CPU_AFFINITY
diff --git a/src/listener.c b/src/listener.c
index 2ac25fd..a6bd449 100644
--- a/src/listener.c
+++ b/src/listener.c
@@ -64,7 +64,7 @@
 	if (listener->state == LI_LISTEN) {
 		if ((global.mode & (MODE_DAEMON | MODE_MWORKER)) &&
 		    listener->bind_conf->bind_proc &&
-		    !(listener->bind_conf->bind_proc & (1UL << (relative_pid - 1)))) {
+		    !(listener->bind_conf->bind_proc & pid_bit)) {
 			/* we don't want to enable this listener and don't
 			 * want any fd event to reach it.
 			 */
@@ -168,7 +168,7 @@
 
 	if ((global.mode & (MODE_DAEMON | MODE_MWORKER)) &&
 	    l->bind_conf->bind_proc &&
-	    !(l->bind_conf->bind_proc & (1UL << (relative_pid - 1))))
+	    !(l->bind_conf->bind_proc & pid_bit))
 		goto end;
 
 	if (l->state == LI_ASSIGNED) {
diff --git a/src/proxy.c b/src/proxy.c
index 3af01ef..ccbc7b2 100644
--- a/src/proxy.c
+++ b/src/proxy.c
@@ -1431,7 +1431,7 @@
 	int bk_f_forced_id, srv_f_forced_id;
 
 	/* we don't want to report any state if the backend is not enabled on this process */
-	if (px->bind_proc && !(px->bind_proc & (1UL << (relative_pid - 1))))
+	if (px->bind_proc && !(px->bind_proc & pid_bit))
 		return 1;
 
 	if (!appctx->ctx.cli.p1)
@@ -1546,7 +1546,7 @@
 			continue;
 
 		/* we don't want to list a backend which is bound to this process */
-		if (curproxy->bind_proc && !(curproxy->bind_proc & (1UL << (relative_pid - 1))))
+		if (curproxy->bind_proc && !(curproxy->bind_proc & pid_bit))
 			continue;
 
 		chunk_appendf(&trash, "%s\n", curproxy->id);
