Change how stack grows on HPPA.
authorJohn David Anglin <dave.anglin@bell.net>
Wed, 7 Feb 2024 11:12:42 +0000 (11:12 +0000)
committerRaspbian forward porter <root@raspbian.org>
Wed, 7 Feb 2024 11:12:42 +0000 (11:12 +0000)
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1042018
Reviewed-by: Lisandro Damián Nicanor Pérez Meyer <lisandro@debian.org>
Last-Update: 2023-07-28

On HPPA stack grows upwards. This patch introduces this change for
this 3rd party code.

Gbp-Pq: Name forkfd_grow_stack_upwards_on_hppa.patch

src/3rdparty/forkfd/forkfd_linux.c

index 23a2f352389d14e7c419fe4c4dbe9026302ee466..fea80b0e3b933a755593330e883bd86dd1ea4972 100644 (file)
@@ -168,7 +168,12 @@ int system_vforkfd(int flags, pid_t *ppid, int (*childFn)(void *), void *token,
     }
     *system = 1;
 
+#if defined(__hppa__)
+    /* Stack grows up */
+    pid = clone(childFn, childStack, cloneflags, token, &pidfd, NULL, NULL);
+#else
     pid = clone(childFn, childStack + sizeof(childStack), cloneflags, token, &pidfd, NULL, NULL);
+#endif
     if (pid < 0)
         return pid;
     if (ppid)