From mboxrd@z Thu Jan 1 00:00:00 1970 From: Danny Milosavljevic Subject: bug#33362: System tests stuck in "shepherd[1]: waiting for udevd..." Date: Fri, 30 Nov 2018 00:19:08 +0100 Message-ID: <20181130001908.45041457@scratchpost.org> References: <871s7pu6k1.fsf@netris.org> <87wopgpunx.fsf@netris.org> <87woovpk2v.fsf@netris.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; boundary="Sig_/TUToJu1lStByNsZDgpOVm.K"; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:60183) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gSVbL-0005Pv-QS for bug-guix@gnu.org; Thu, 29 Nov 2018 18:20:08 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gSVbG-0005cn-RQ for bug-guix@gnu.org; Thu, 29 Nov 2018 18:20:07 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:51030) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gSVbG-0005cJ-Mm for bug-guix@gnu.org; Thu, 29 Nov 2018 18:20:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1gSVbG-0000Ty-EX for bug-guix@gnu.org; Thu, 29 Nov 2018 18:20:02 -0500 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87woovpk2v.fsf@netris.org> List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Mark H Weaver Cc: 33362@debbugs.gnu.org --Sig_/TUToJu1lStByNsZDgpOVm.K Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Hmm, I wonder whether it might make sense to add "--debug" to udevd in gnu/= services/base.scm in order to track down this problem. The loop looks rather harmless and only checks whether the actual udev sock= et is available - which it must be for udevd to work. It does the following right now: (start #~(lambda () (define udevd ;; 'udevd' from eudev. #$(file-append udev "/sbin/udevd")) ; TODO: Add ' "--= debug"' here (define (wait-for-udevd) ;; Wait until someone's listening on udevd's control ;; socket. (let ((sock (socket AF_UNIX SOCK_SEQPACKET 0))) (let try () (catch 'system-error (lambda () (connect sock PF_UNIX "/run/udev/control") (close-port sock)) (lambda args (format #t "waiting for udevd...~%") (usleep 500000) (try)))))) [...] (let ((pid (fork+exec-command (list udevd)))) ;; Wait until udevd is up and running. This appears = to ;; be needed so that the events triggered below are ;; actually handled. (wait-for-udevd) --Sig_/TUToJu1lStByNsZDgpOVm.K Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAlwAc+wACgkQ5xo1VCww uqW+owf+KhLwqkdHf09ZLJC6MdNUCgZKDFv3Ag9EfjWDPFNQLffv3UPdMTo6ausA IjB2fWG1whJO16jQco6WyNoFJ2p86bKiNXeMGZOwJgF3w6e4aFaiO//mN4oBFaeK cwY6WpPmfeh7jXU2+sy0HH45YQrA0m5Z2lkP5A7CRLHhXmEUcaQgUjfLHjcVDrL3 Bc3YT/iGdqGQQbgtDxrX8dNxQUbX3OyI9zu1dAhpXvoqk1/edwym0oR8dNJptxfb LbyfDjUU0ig/LuGYiAFUJASPnhbCvlU63yt7esX+sKK3vkkPSqZq7g6PPgn9VuND Ds1iq0/2rIii/YAt46wV4zpGJ9wUEA== =63vA -----END PGP SIGNATURE----- --Sig_/TUToJu1lStByNsZDgpOVm.K--