From owner-freebsd-current@FreeBSD.ORG Thu Oct 16 23:03:29 2003 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8825816A4B3 for ; Thu, 16 Oct 2003 23:03:29 -0700 (PDT) Received: from lewis.lclark.edu (nedc.org [149.175.1.5]) by mx1.FreeBSD.org (Postfix) with SMTP id E940A43FD7 for ; Thu, 16 Oct 2003 23:03:28 -0700 (PDT) (envelope-from eta@lclark.edu) Received: from [149.175.34.27] ([149.175.34.27]) by lewis.lclark.edu (SAVSMTP 3.1.1.32) with SMTP id M2003101623032817383 for ; Thu, 16 Oct 2003 23:03:28 -0700 From: Eric Anholt To: current@FreeBSD.org Content-Type: text/plain Message-Id: <1066370607.644.220.camel@leguin> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.4.5 Date: Thu, 16 Oct 2003 23:03:28 -0700 Content-Transfer-Encoding: 7bit Subject: DRM SMPng locking for review X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 17 Oct 2003 06:03:29 -0000 I've been working on locking of the DRM, based off of the work that was already done for linux and ported to BSD. I think the current locking was wrong, including that it used lockmgr and simplelocks on -stable when as far as I know it was unnecessary. Also, I had marked the IRQ handlers MPSAFE without understanding the issue really, so IRQs could get missed. Here's a patch, which I hope someone can review because I don't trust myself at all. http://people.freebsd.org/~anholt/dri/files/drm-locking-2.diff It's against DRI CVS, as I haven't merged to FreeBSD in a while. You can get it using the instructions at: http://dri.sourceforge.net/cgi-bin/moin.cgi/CVS If you don't want to build the whole tree, you can just: cd xc patch -p0 < ~/drm-locking-2.diff cd programs/Xserver/hw/xfree86/os-support/bsd/drm/kernel ln -s ../../../shared/drm/kernel/*.[ch] ./ Quick question: If open returns an error, close doesn't get called, does it? -- Eric Anholt eta@lclark.edu http://people.freebsd.org/~anholt/ anholt@FreeBSD.org