gentoo/dev-qt/qtbase/files/qtbase-6.5.2-hppa-forkfd-grow-stack.patch
Ionen Wolkens 7f6c7b9be9
dev-qt/qtbase: import hppa forkfd fix from debian
Some of bug #914371's issues could (ideally) still need looking
into/attention, but believe reasonable to close for now and allow
keywording assuming did not overlook anything.

Closes: https://bugs.gentoo.org/914371
Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
2023-09-18 22:59:48 -04:00

29 lines
1001 B
Diff

Patch taken from Debian[1], largely broken on HPPA without and several
tests give segmentation faults[2].
Needs upstreaming if someone familiar with HPPA wants to give this
attention. Note forkfd is essentially maintained in qtbase's repo[3]
rather than truly third party.
[1] https://bugs.debian.org/1042018
[2] https://bugs.gentoo.org/914371
[3] https://code.qt.io/cgit/qt/qtbase.git/tree/src/3rdparty/forkfd
Description: Change how stack grows on HPPA.
On HPPA stack grows upwards. This patch introduces this change for
this 3rd party code.
Author: John David Anglin <dave.anglin@bell.net>
--- a/src/3rdparty/forkfd/forkfd_linux.c
+++ b/src/3rdparty/forkfd/forkfd_linux.c
@@ -170,5 +170,10 @@
*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;