Bug#1042018: qt6-declarative: FTBFS on hppa - Segmentation fault in /usr/lib/qt6/bin/qsb
On 2023-07-25 4:29 p.m., Patrick Franz wrote:
Due to the lack of resources, it's unlikely we'll even investigate this.
However, if you have a patch, I'm happy to apply it.
The attached change fixes the reported segmentation fault in qsb. The change is to
src/3rdparty/forkfd/forkfd_linux.c in the qt6-base package. The problem is the system_vforkfd
routine assumes the stack direction is down, but on hppa the stack grows up. This causes
the childFn argument to be clobbered on the stack and the segmentation fault.
With this change to qt6-base, qt6-declarative builds successfully on hppa. I believe it will also fix the
qt6-multimedia build as it appears to fail for the same reason.
Somehow, we need to get this installed in the 3rdparty forkfd source so all packages that use it
are fixed.
Regards,
Dave Anglin
--
John David Anglin dave.anglin@bell.net
--- ./src/3rdparty/forkfd/forkfd_linux.c.save 2023-07-27 12:04:02.940466337 +0000
+++ ./src/3rdparty/forkfd/forkfd_linux.c 2023-07-27 12:06:53.522077424 +0000
@@ -168,7 +168,12 @@
}
*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)
Reply to: