From owner-freebsd-current@FreeBSD.ORG Thu Sep 4 17:02:09 2008 Return-Path: Delivered-To: freebsd-current@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 096A61065685; Thu, 4 Sep 2008 17:02:09 +0000 (UTC) (envelope-from sgk@troutmask.apl.washington.edu) Received: from troutmask.apl.washington.edu (troutmask.apl.washington.edu [128.208.78.105]) by mx1.freebsd.org (Postfix) with ESMTP id DAC9D8FC12; Thu, 4 Sep 2008 17:02:08 +0000 (UTC) (envelope-from sgk@troutmask.apl.washington.edu) Received: from troutmask.apl.washington.edu (localhost.apl.washington.edu [127.0.0.1]) by troutmask.apl.washington.edu (8.14.3/8.14.3) with ESMTP id m84H28Cu001482; Thu, 4 Sep 2008 10:02:08 -0700 (PDT) (envelope-from sgk@troutmask.apl.washington.edu) Received: (from sgk@localhost) by troutmask.apl.washington.edu (8.14.3/8.14.3/Submit) id m84H285l001481; Thu, 4 Sep 2008 10:02:08 -0700 (PDT) (envelope-from sgk) Date: Thu, 4 Sep 2008 10:02:08 -0700 From: Steve Kargl To: Robert Noland Message-ID: <20080904170208.GA1463@troutmask.apl.washington.edu> References: <20080903011612.GA1242@troutmask.apl.washington.edu> <1220416793.1848.1.camel@wombat.2hip.net> <20080903051228.GA2475@troutmask.apl.washington.edu> <1220471512.11763.9.camel@squirrel.corp.cox.com> <20080903195845.GA1370@troutmask.apl.washington.edu> <1220493627.2467.6.camel@wombat.2hip.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1220493627.2467.6.camel@wombat.2hip.net> User-Agent: Mutt/1.4.2.3i Cc: freebsd-current@FreeBSD.org Subject: Re: drm causes kernel panic X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 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: Thu, 04 Sep 2008 17:02:09 -0000 On Wed, Sep 03, 2008 at 10:00:27PM -0400, Robert Noland wrote: > > Ok, please try the attached patch. I talked it over with another drm > developer and it should be safe to drop all the locks while calling > drm_pci_alloc(). I think I have fixed this for all drivers / paths that > call it. It will log an error now if it is called with either of the > two locks that I found being held. I have tested this on my intel 965gm > so far and all is well. I also had to touch mach64 and radeon, so I > need someone to validate those. (This is a different path from the > panic you received previously) > Your patch fixes the problem. With a new kernel and Xorg's dri module loaded, I now see in /var/log/Xorg.0.log (II) MACH64(0): [drm] SAREA 2200+1208: 3408 drmOpenDevice: node name is /dev/dri/card0 drmOpenDevice: open result is 9, (OK) drmOpenDevice: node name is /dev/dri/card0 drmOpenDevice: open result is 9, (OK) drmOpenByBusid: Searching for BusID pci:0000:03:06.0 drmOpenDevice: node name is /dev/dri/card0 drmOpenDevice: open result is 9, (OK) drmOpenByBusid: drmOpenMinor returns 9 drmOpenByBusid: drmGetBusid reports pci:0000:03:06.0 (II) [drm] DRM interface version 1.2 (II) [drm] DRM open master succeeded. (II) MACH64(0): [drm] Using the DRM lock SAREA also for drawables. (II) MACH64(0): [drm] framebuffer handle = 0xfd000000 (II) MACH64(0): [drm] added 1 reserved context for kernel (II) MACH64(0): X context handle = 0x1 (II) MACH64(0): [drm] installed DRM signal handler (II) MACH64(0): [drm] Will request asynchronous DMA mode (==) MACH64(0): [drm] Using 2 MB for DMA buffers (II) MACH64(0): [pci] ring handle = 0x64a34000 (II) MACH64(0): [pci] Ring mapped at 0x2006d4000 (II) MACH64(0): [drm] register handle = 0xfeaff000 (II) MACH64(0): [dri] Visual configs initialized (II) MACH64(0): [dri] Block 0 base at 0xfeaff400 (WW) MACH64(0): Not enough memory for local textures, disabling DRI (II) MACH64(0): [drm] removed 1 reserved context for kernel (II) MACH64(0): [drm] unmapping 8192 bytes of SAREA 0xfffffffe40962000 at 0x2006d2000 (II) MACH64(0): [drm] Closed DRM master. -- Steve