From owner-freebsd-gnome@FreeBSD.ORG Fri Nov 5 17:30:14 2010 Return-Path: Delivered-To: gnome@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 354661065672 for ; Fri, 5 Nov 2010 17:30:14 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 08E578FC19 for ; Fri, 5 Nov 2010 17:30:14 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.4/8.14.4) with ESMTP id oA5HUDOH009266 for ; Fri, 5 Nov 2010 17:30:13 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.4/8.14.4/Submit) id oA5HUDWK009263; Fri, 5 Nov 2010 17:30:13 GMT (envelope-from gnats) Date: Fri, 5 Nov 2010 17:30:13 GMT Message-Id: <201011051730.oA5HUDWK009263@freefall.freebsd.org> To: gnome@FreeBSD.org From: Andriy Gapon Cc: Subject: Re: ports/151725: sysutils/hal: hald fails to start with dbus-1.4 X-BeenThere: freebsd-gnome@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Andriy Gapon List-Id: GNOME for FreeBSD -- porting and maintaining List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 05 Nov 2010 17:30:14 -0000 The following reply was made to PR ports/151725; it has been noted by GNATS. From: Andriy Gapon To: Kevin Oberman Cc: gnome@freebsd.org, bug-followup@freebsd.org Subject: Re: ports/151725: sysutils/hal: hald fails to start with dbus-1.4 Date: Fri, 05 Nov 2010 19:24:10 +0200 on 05/11/2010 18:34 Andriy Gapon said the following: > Run started hald-probe-scsi (20000) (0) > ! full path is '/usr/local/libexec/hald-probe-scsi', program_dir is > '/usr/local/libexec' > 18:30:33.136 [I] hald_runner.c:110: runner_server_message_handler: > destination=(null) obj_path=/org/freedesktop/DBus/Local > interface=org.freedesktop.DBus.Local method=Disconnected > 18:30:33.136 [I] hald_runner.c:151: runner process disconnected > *** [DIE] hald_runner.c:runner_died():204 : Runner died > Not sure what is the problem, perhaps someone who knows the code better can come up with an explanation, but the following informally specified patch seems to fix the issue for me (verified with 24 hald start-ups): In hald-runner/runner.c, function run_request_run(): g_free (program_dir); -if (r->input) { +if (r->input && strlen(r->input) > 0) { if (write(stdin_v, r->input, strlen(r->input)) != (ssize_t) strlen(r->input)) printf("Warning: Error while writing r->input (%s) to stdin_v.\n", r->input); close(stdin_v); } I hope that it's easy to apply this change by hand. I will have a proper patch once I clean out all my debugging modifications from the sources. It looked like the issue was caused by the above write() call after a sufficiently quick child process had already exited. -- Andriy Gapon