Your message dated Sat, 07 Sep 2019 14:46:58 +0000
with message-id <[email protected]>
and subject line Bug#883780: fixed in fakeroot 1.24-1
has caused the Debian Bug report #883780,
regarding fakeroot: hangs if msgsnd gets interrupted by a signal
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
883780: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=883780
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: fakeroot
Version: 1.22-2
Severity: normal
Tags: patch

Dear Maintainer,

A number of Haskell packages[1][2][3] have been failing to build
reproducible lately with the following error:

  debian/hlibrary.setup copy --builddir=dist-ghc --destdir=debian/tmp-inst-ghc
  libfakeroot, when sending message: Interrupted system call

I have not been able to reproduce this, but looking at the code, it
seems that send_fakem() fails to send a message, and then fakeroot
hangs indefinetly waiting for an answer.

Attached, is a patch which retries the msgsnd() system call in case it
was interrupted by a signal.

Thanks,

[1] 
https://tests.reproducible-builds.org/debian/logs/buster/i386/haskell-abstract-par_0.3.3-7.build2.log.gz
[2] 
https://tests.reproducible-builds.org/debian/rbuild/unstable/amd64/cpphs_1.20.8-1.rbuild.log
[3] 
https://tests.reproducible-builds.org/debian/logs/buster/i386/haskell-abstract-par_0.3.3-7.build2.log.gz

-- 
Ilias
diff --git a/communicate.c b/communicate.c
index a9e3593..fd23027 100644
--- a/communicate.c
+++ b/communicate.c
@@ -505,8 +505,10 @@ void send_fakem(const struct fake_msg *buf)
 
   if(init_get_msg()!=-1){
     ((struct fake_msg *)buf)->mtype=1;
-    r=msgsnd(msg_snd, (struct fake_msg *)buf,
-	     sizeof(*buf)-sizeof(buf->mtype), 0);
+    do
+      r=msgsnd(msg_snd, (struct fake_msg *)buf,
+	       sizeof(*buf)-sizeof(buf->mtype), 0);
+    while((r==-1) && (errno==EINTR));
     if(r==-1)
       perror("libfakeroot, when sending message");
   }

--- End Message ---
--- Begin Message ---
Source: fakeroot
Source-Version: 1.24-1

We believe that the bug you reported is fixed in the latest version of
fakeroot, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Clint Adams <[email protected]> (supplier of updated fakeroot package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Fri, 06 Sep 2019 18:48:18 -0400
Source: fakeroot
Binary: fakeroot fakeroot-dbgsym libfakeroot libfakeroot-dbgsym
Architecture: source
Version: 1.24-1
Distribution: unstable
Urgency: medium
Maintainer: Clint Adams <[email protected]>
Changed-By: Clint Adams <[email protected]>
Description:
 fakeroot   - tool for simulating superuser privileges
 libfakeroot - tool for simulating superuser privileges - shared libraries
Closes: 856439 883780
Changes:
 fakeroot (1.24-1) unstable; urgency=medium
 .
   [ Danny Milosavljevic ]
   * Add test "t.cp-a".
 .
   [ Clint Adams ]
   * Patch from Ilias Tsitsimpis to retry msgsnd() if interrupted by
     a signal.  closes: #883780.
   * Patch from Martin Dorey to detect and handle message queue and
     semaphore id collision.  closes: #856439.
   * Drop patch glibc-xattr-types.
Checksums-Sha1:
 8144458d97e8955c430ab51b9fa46f3895f4e75c 1932 fakeroot_1.24-1.dsc
 bebe243d7f66bd016e7d1b28fad064586ecf7a15 522497 fakeroot_1.24.orig.tar.gz
 89f30f9facf9cf712867892395472d28f034545d 22680 fakeroot_1.24-1.debian.tar.xz
Checksums-Sha256:
 b89a3faa92f496a74d8ad4ece6a135262f69417bef804533103e52a50c31c502 1932 
fakeroot_1.24-1.dsc
 2e045b3160370b8ab4d44d1f8d267e5d1d555f1bb522d650e7167b09477266ed 522497 
fakeroot_1.24.orig.tar.gz
 b2f0523ff61d086e9ef8987b9560f21d584eb6fd4f114226ca1c3dd6b9de9b6f 22680 
fakeroot_1.24-1.debian.tar.xz
Files:
 8b37cd512858185fb22087e73d99f0f1 1932 utils optional fakeroot_1.24-1.dsc
 964e5f438f1951e5a515dd54edd50fa6 522497 utils optional 
fakeroot_1.24.orig.tar.gz
 ef8ccb4e564548ebe4c643627afde23d 22680 utils optional 
fakeroot_1.24-1.debian.tar.xz

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEdYHsh0BT5sgHeRubVZIzHhmdOKgFAl1ztsAACgkQVZIzHhmd
OKhHtw/8D5Re+LLI/3hGVQFDoX0lMFSwL1CW+t5TijJJg97DVimqXdPKKYNdZiuq
7/396oP7vD1PUMUEcG8W4iAMsEQ9iU1RCWXzVAdF5LIiQZGHVsPfR7bMGqiMA6+x
QA88a3eUDqot6Qqr1CeEhMYWvjY4i/emTSYUiTcd/aU1lpHRghQKipNixBb5V4cG
ESDrwMaULMfZeDwkpGYIggO++jSEQe40WqHWy6Y/wtItsWScK7jUJVS6Ec+KC3Dg
RY6ptWWkYNE1qCVxvYz5aR8gegVAadC8Qt6fdpJSvAHUUa8fLC1abh+LmLHVB42k
ZG24CKJL4juvxrKjKpn1J1hCvnp0UiulXShOfSPofkFi5TWT73enz2GWzP84113C
Xc5kxWc+nBRaflBNlCkEfnLrRhloumqwIBVG+ERj/a7EHdWD+T8aDrElsfJhJBon
JxozMtQDqds6rw1Gtx9Vm/yS0wg2XUILuq6dadUEzHsD4Nx6jAZfXY8nxxI6Cm+q
Q7ZBukhc8GXSHPbX4bVyCW8Y5M+cDI0ZwA+jgVIy3AnysPlAn1xC/0n3fI2Y5ecw
5lJoKX3IYoO0fsqxKDgOk6JvJeQEVUm3Q4eSom+JCkVpfhuFa8EotgJYYxXspi8x
vloOmj8MhPgmuOYgORP01eQzGiwvXj1sVUC/bhWoopkWOr/ScTE=
=6LKe
-----END PGP SIGNATURE-----

--- End Message ---

Reply via email to