From owner-svn-src-all@FreeBSD.ORG Thu May 9 16:46:28 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 2FE3A59B; Thu, 9 May 2013 16:46:28 +0000 (UTC) (envelope-from asmrookie@gmail.com) Received: from mail-ie0-x22d.google.com (mail-ie0-x22d.google.com [IPv6:2607:f8b0:4001:c03::22d]) by mx1.freebsd.org (Postfix) with ESMTP id DE9162C1; Thu, 9 May 2013 16:46:27 +0000 (UTC) Received: by mail-ie0-f173.google.com with SMTP id k5so5959752iea.4 for ; Thu, 09 May 2013 09:46:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:reply-to:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=kwpbDvQEZZIxx2l5a35KZAnDjKkq4ZkS5LKOhgBklw4=; b=Y5NCVcfNSx2E5EibaRvE5qHRNh1WoaFKVAMEn4EzIlJnw0U+e8ZpxA4fkhOxWK44jZ MJ6PEejhAH0N6yy6uBFb+zHWdoUHWqXwbiigGXhiE1DcM0OdyCWATvUT4bxrGjLC/2M5 5SvEvcndzWtCjZmPwXeQbrUgop1SSEHEZyoFGbZoAwqPj4/PETDD814Eg9fgqX1zMEem P6x42gP/LUKC/tej26Kk3jp6C8PX3qG3sSq59gWHP4nSDE6+vVmmF0YlWb7IzshsKg0o P2s+VexPdqSo3eV1J1zV3b3h9IBROQYLRlHtjzSAs/WQhyZuhIzm81JGMs3wszeGlqyv /gIA== MIME-Version: 1.0 X-Received: by 10.50.17.8 with SMTP id k8mr10412677igd.1.1368117987625; Thu, 09 May 2013 09:46:27 -0700 (PDT) Sender: asmrookie@gmail.com Received: by 10.42.117.134 with HTTP; Thu, 9 May 2013 09:46:27 -0700 (PDT) In-Reply-To: <201305091628.r49GSI33039873@svn.freebsd.org> References: <201305091628.r49GSI33039873@svn.freebsd.org> Date: Thu, 9 May 2013 18:46:27 +0200 X-Google-Sender-Auth: VMga2UBSSWjXg6MxcJmqIBIq4zc Message-ID: Subject: Re: svn commit: r250411 - in head/sys: conf kern sys From: Attilio Rao To: Marcel Moolenaar Content-Type: text/plain; charset=UTF-8 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: attilio@FreeBSD.org List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 09 May 2013 16:46:28 -0000 On Thu, May 9, 2013 at 6:28 PM, Marcel Moolenaar wrote: > Author: marcel > Date: Thu May 9 16:28:18 2013 > New Revision: 250411 > URL: http://svnweb.freebsd.org/changeset/base/250411 > > Log: > Add option WITNESS_NO_VNODE to suppress printing LORs between VNODE > locks. To support this, VNODE locks are created with the LK_IS_VNODE > flag. This flag is propagated down using the LO_IS_VNODE flag. > > Note that WITNESS still records the LOR. Only the printing and the > optional entering into the kernel debugger is bypassed with the > WITNESS_NO_VNODE option. This is the wrong way to deal with such problem and I avoided to do something like that on purpose. The way to fix this is to implement LK_NOWITNESS on a per-lock basis into lockmgr, propagate the same concept to the vn_lock() (which should be basically done automatically) and finally identify the false-positive case and commit for them explicitely LK_NOWITNESS on a per-call basis, explaining in detail why the single case reported is a false-positive. Please revert this patch asap. Attilio -- Peace can only be achieved by understanding - A. Einstein