NetBSD Problem Report #55371

From ryo@tetera.org  Fri Jun 12 14:44:40 2020
Return-Path: <ryo@tetera.org>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
	by mollari.NetBSD.org (Postfix) with ESMTPS id 924F31A9219
	for <gnats-bugs@gnats.NetBSD.org>; Fri, 12 Jun 2020 14:44:40 +0000 (UTC)
Message-Id: <5ee394d5.1c69fb81.39f0b.60d4@mx.google.com>
Date: Fri, 12 Jun 2020 23:44:24 +0900
From: ryo@tetera.org
Reply-To: ryoon@NetBSD.org
To: gnats-bugs@NetBSD.org
Subject: If PKGSRC_LOCKTYPE={sleep,once}, make depends cannot progress
X-Send-Pr-Version: 3.95

>Number:         55371
>Category:       pkg
>Synopsis:       If PKGSRC_LOCKTYPE={sleep,once}, make depends cause dead lock
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Jun 12 14:45:00 +0000 2020
>Originator:     Ryo ONODERA
>Release:        NetBSD 9.99.65
>Organization:
Ryo ONODERA // ryo@tetera.org
PGP fingerprint = 82A2 DC91 76E0 A10A 8ABB  FD1B F404 27FA C7D1 15F3
>Environment:


System: NetBSD brownie 9.99.65 NetBSD 9.99.65 (DTRACE7) #3: Fri Jun 12 13:16:17 JST 2020 ryoon@brownie:/usr/world/9.99/amd64/obj/sys/arch/amd64/compile/DTRACE7 amd64
Architecture: x86_64
Machine: amd64
>Description:
If you have PKGSRC_LOCKTYPE=sleep or PKGSRC_LOCKTYPE=once in your /etc/mk.conf,
'make depends' causes dead lock.

In PKGSRC_LOCKTYPE=sleep case:
ryoon@brownie: /usr/pkgsrc/audio/pulseaudio
$ make depends
=> Lock /usr/tmp/pkgsrc/audio/pulseaudio/work/.lockfile acquired for ``depends'' on behalf of process 29838
=> Lock acquire-bootstrap-depends-lock is held by pid 29838
=> Lock acquire-bootstrap-depends-lock is held by pid 29838
(repeated)

In PKGSRC_LOCKTYPE=once case:
ryoon@brownie: /usr/pkgsrc/audio/pulseaudio
$ make depends PKGSRC_LOCKTYPE=once
=> Lock /usr/tmp/pkgsrc/audio/pulseaudio/work/.lockfile acquired for ``depends'' on behalf of process 5848
ERROR: Lock acquire-bootstrap-depends-lock is held by pid 5848
*** Error code 1

Stop.
make: stopped in /usr/pkgsrc/audio/pulseaudio

Anyway if PKGSRC_LOCKTYPE is defined as once or sleep,
'make depends' does not work at all.

>How-To-Repeat:

For example,
$ cd /usr/pkgsrc/audio/pulseaudio
$ make PKGSRC_LOCKTYPE=once depends

>Fix:

I have no idea.

>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.46 2020/01/03 16:35:01 leot Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2020 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.