GNU bug report logs - #42448
readdir misbehaves when running 32-bit user space on a 64-bit-kernel - kernel/userspace interface mismatch in getdents64

Previous Next

Package: guix;

Reported by: Brett Gilio <brettg <at> gnu.org>

Date: Mon, 20 Jul 2020 19:45:01 UTC

Severity: critical

Merged with 43513

To reply to this bug, email your comments to 42448 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#42448; Package guix. (Mon, 20 Jul 2020 19:45:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Brett Gilio <brettg <at> gnu.org>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Mon, 20 Jul 2020 19:45:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Brett Gilio <brettg <at> gnu.org>
To: bug-guix <at> gnu.org
Subject: Issue with Qemu Binfmt and CMake not detecting compiler.
Date: Mon, 20 Jul 2020 14:44:15 -0500
Hey all,

Opening a bug report as per a request following this issue identified
at: https://lists.gnu.org/archive/html/guix-devel/2020-07/msg00124.html.

To recap, when running

--8<---------------cut here---------------start------------->8---
./pre-inst-env guix build --system=armhf-linux swi-prolog
--8<---------------cut here---------------end--------------->8---

the configure phase is failing to identify the C/CXX compiler
toolchains to compile a test CMake file. There is a variety of
CMakeError.log and other object outputs that populate the build
directory when ran with --keep-failed.

This seems to be reported before, but subsequently patched at
https://issues.guix.gnu.org/38454#3. This only occurs when using the
Qemu method of compiling on a foreign architecture, and is not present
when natively compiling on true hardware.

Thanks,
Brett Gilio




Information forwarded to bug-guix <at> gnu.org:
bug#42448; Package guix. (Mon, 20 Jul 2020 23:05:02 GMT) Full text and rfc822 format available.

Message #8 received at 42448 <at> debbugs.gnu.org (full text, mbox):

From: Brett Gilio <brettg <at> gnu.org>
To: 42448 <at> debbugs.gnu.org
Subject: A possible solution
Date: Mon, 20 Jul 2020 18:04:07 -0500
As Marius Bakke pointed out on IRC, this issue is related to a change in
CMake where after 3.15 they removed the explicit `#define
_FILE_OFFSET_BITS 64`. The solution solution to this is to add

--8<---------------cut here---------------start------------->8---
CFLAGS="-D_FILE_OFFSET_BITS=64"
CXXFLAGS="-D_FILE_OFFSET_BITS=64"
--8<---------------cut here---------------end--------------->8---

to CMakes compilation procedure. This is a core-updates change. I will
leave this issue open for now in case this needs more
investigation. Since I am just coming off of a haitus I think there are
changes to the core-updates and staging procedures so I dont think I am
comfortable making this change myself.

Brett Gilio




Merged 42448 43513. Request was from Ludovic Courtès <ludo <at> gnu.org> to control <at> debbugs.gnu.org. (Fri, 25 Sep 2020 09:58:02 GMT) Full text and rfc822 format available.

Changed bug title to ''getdents' misbehaves when emulating 32-bit code on a 64-bit-kernel host' from 'Issue with Qemu Binfmt and CMake not detecting compiler.' Request was from Ludovic Courtès <ludo <at> gnu.org> to control <at> debbugs.gnu.org. (Fri, 25 Sep 2020 10:15:02 GMT) Full text and rfc822 format available.

Severity set to 'important' from 'normal' Request was from Ludovic Courtès <ludo <at> gnu.org> to control <at> debbugs.gnu.org. (Fri, 25 Sep 2020 10:15:03 GMT) Full text and rfc822 format available.

Changed bug title to 'Kernel/userspace interface mismatch between 32 bit user space and 64 bit kernel - readdir' from ''getdents' misbehaves when emulating 32-bit code on a 64-bit-kernel host' Request was from Danny Milosavljevic <dannym <at> scratchpost.org> to control <at> debbugs.gnu.org. (Tue, 29 Sep 2020 14:35:03 GMT) Full text and rfc822 format available.

Severity set to 'critical' from 'important' Request was from Danny Milosavljevic <dannym <at> scratchpost.org> to control <at> debbugs.gnu.org. (Tue, 29 Sep 2020 14:35:03 GMT) Full text and rfc822 format available.

Changed bug title to 'readdir misbehaves when running 32-bit user space on a 64-bit-kernel - kernel/userspace interface mismatch in getdents' from 'Kernel/userspace interface mismatch between 32 bit user space and 64 bit kernel - readdir' Request was from Danny Milosavljevic <dannym <at> scratchpost.org> to control <at> debbugs.gnu.org. (Tue, 29 Sep 2020 14:38:02 GMT) Full text and rfc822 format available.

Changed bug title to 'readdir misbehaves when running 32-bit user space on a 64-bit-kernel - kernel/userspace interface mismatch in getdents64' from 'readdir misbehaves when running 32-bit user space on a 64-bit-kernel - kernel/userspace interface mismatch in getdents' Request was from Danny Milosavljevic <dannym <at> scratchpost.org> to control <at> debbugs.gnu.org. (Tue, 29 Sep 2020 14:41:02 GMT) Full text and rfc822 format available.

This bug report was last modified 4 years and 257 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.