NetBSD Problem Report #43224
From www@NetBSD.org Thu Apr 29 08:45:15 2010
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
by www.NetBSD.org (Postfix) with ESMTP id ADA0163C4F8
for <gnats-bugs@gnats.NetBSD.org>; Thu, 29 Apr 2010 08:45:15 +0000 (UTC)
Message-Id: <20100429084515.7BA6663C34A@www.NetBSD.org>
Date: Thu, 29 Apr 2010 08:45:15 +0000 (UTC)
From: vs@nifelheim.info
Reply-To: vs@nifelheim.info
To: gnats-bugs@NetBSD.org
Subject: sysutils/cvsreport: is_alive()-function needs to be patched to the correct /proc-path (linux-emulation)
X-Send-Pr-Version: www-1.0
>Number: 43224
>Category: pkg
>Synopsis: sysutils/cvsreport: is_alive()-function needs to be patched to the correct /proc-path (linux-emulation)
>Confidential: no
>Severity: serious
>Priority: low
>Responsible: pkg-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Thu Apr 29 08:50:00 +0000 2010
>Last-Modified: Thu Apr 29 09:15:02 +0000 2010
>Originator: Volkmar Seifert
>Release: NetBSD 5
>Organization:
>Environment:
NetBSD unknown.nifelheim.info 5.0_RC4 NetBSD 5.0_RC4 (GENERIC) #3: Wed Apr 22 11:23:42 CEST 2009 build@ymir:/usr/build/src/sys/arch/i386/compile/obj.i386/GENERIC i386
>Description:
After installing and configuring sysutils/cvsreport, I noticed that it did not work as it should. It stopped with the following error:
"is_alive has no implementation on this system"
Looking into the code I noticed that cvsreport had a "is_alive"-function, which tried to access /proc/1 as a check whether this approach of monitoring a process does work or not.
My system mounts /proc on start-up, but without content. /emul/linux/proc is mounted as well, since I have installed linux-emulation, and after changing the path to /emul/linux/proc, cvsreport finally worked.
This patching should probably be done during make install?
>How-To-Repeat:
Simply install sysutils/cvsreport, and run it from a CVSROOT/commitinfo upon commit of a file with --debug activated (There might be a simpler way, but this is how I discovered it), and then to a
cat /tmp/cvsreport.log
The error will be in that log.
>Fix:
Patch the "is_alive"-function upon install from "/proc" the system's linux-emulation-proc-path (most likely "/emul/linux/proc" unless someone has set up something extra-ordinary)
>Audit-Trail:
From: Joerg Sonnenberger <joerg@britannica.bec.de>
To: gnats-bugs@NetBSD.org
Cc:
Subject: Re: pkg/43224: sysutils/cvsreport: is_alive()-function needs to be
patched to the correct /proc-path (linux-emulation)
Date: Thu, 29 Apr 2010 10:55:05 +0200
On Thu, Apr 29, 2010 at 08:50:00AM +0000, vs@nifelheim.info wrote:
> My system mounts /proc on start-up, but without content.
> /emul/linux/proc is mounted as well, since I have installed
> linux-emulation, and after changing the path to /emul/linux/proc,
> cvsreport finally worked.
The normal recommendation is to just mount /proc with -o linux.
Joerg
From: "Volkmar Seifert" <vs@nifelheim.info>
To: gnats-bugs@NetBSD.org
Cc: pkg-manager@NetBSD.org, gnats-admin@NetBSD.org, pkgsrc-bugs@NetBSD.org,
vs@nifelheim.info
Subject: Re: pkg/43224: sysutils/cvsreport: is_alive()-function needs to be
patched to the correct /proc-path (linux-emulation)
Date: Thu, 29 Apr 2010 11:14:22 +0200
> > My system mounts /proc on start-up, but without content.
> > /emul/linux/proc is mounted as well, since I have installed
> > linux-emulation, and after changing the path to /emul/linux/proc,
> > cvsreport finally worked.
>
> The normal recommendation is to just mount /proc with -o linux.
>
The /proc settings are as set by the installation-defaults, as there was
no need for a change, so far. I can change that, of course, but then it
should be somehow mentioned in MESSAGES, shouldn't it?
It's always a bad surprise to find out these things "the hard way".
- Volkmar
--
http://blog.nifelheim.info/tech
(Contact us)
$NetBSD: query-full-pr,v 1.36 2007/11/24 03:27:39 kano Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.