From owner-freebsd-fs@FreeBSD.ORG Sat May 11 21:09:03 2013 Return-Path: Delivered-To: freebsd-fs@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id D9C36C4C; Sat, 11 May 2013 21:09:03 +0000 (UTC) (envelope-from mckusick@mckusick.com) Received: from chez.mckusick.com (chez.mckusick.com [IPv6:2001:5a8:4:7e72:4a5b:39ff:fe12:452]) by mx1.freebsd.org (Postfix) with ESMTP id B62A2905; Sat, 11 May 2013 21:09:03 +0000 (UTC) Received: from chez.mckusick.com (localhost [127.0.0.1]) by chez.mckusick.com (8.14.3/8.14.3) with ESMTP id r4BL8w5S027367; Sat, 11 May 2013 14:08:59 -0700 (PDT) (envelope-from mckusick@chez.mckusick.com) Message-Id: <201305112108.r4BL8w5S027367@chez.mckusick.com> To: Marcel Moolenaar Subject: Re: svn commit: r250411 - in head/sys: conf kern sys In-reply-to: <6CBEB766-087B-41F4-B549-2D60F4FD2701@xcllnt.net> Date: Sat, 11 May 2013 14:08:58 -0700 From: Kirk McKusick X-Spam-Status: No, score=0.0 required=5.0 tests=MISSING_MID, UNPARSEABLE_RELAY autolearn=failed version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on chez.mckusick.com Cc: attilio@FreeBSD.org, Marcel Moolenaar , freebsd-fs@FreeBSD.org X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 11 May 2013 21:09:03 -0000 As a filesystem developer, I am very dependent on being able to get vnode lock order reversal LORs. While I have long wanted the ability to individually identify the benign ones (such as vnode + dirhash which your fix will not eliminate since dirhash is not a vnode), that facility exists only for mutexes at the moment. This latest flurry of emails on your change may hasten the day when Attilio's extension gets added to make the identity for other types of locks available. In the meantime, I do understand your need to silence the offending benign messages. But I would like to suggest that instead of making it a compile time option, that you change it to be conditional using a sysctl such as debug.witness.novnodes (you would need to add the witness debug subclass as I don't think that it currently exists). You can set the default to be enabled (e.g., suppressed vnode warnings). This way if I get a filesystem deadlock bug reported to me, I can ask the user to reenable vnode witness warnings without having to have them build a whole new kernel. Kirk McKusick