From owner-freebsd-multimedia@FreeBSD.ORG Wed Feb 22 18:11:46 2006 Return-Path: X-Original-To: multimedia@freebsd.org Delivered-To: freebsd-multimedia@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5F01816A420; Wed, 22 Feb 2006 18:11:46 +0000 (GMT) (envelope-from bright@elvis.mu.org) Received: from elvis.mu.org (elvis.mu.org [192.203.228.196]) by mx1.FreeBSD.org (Postfix) with ESMTP id 40E6643D45; Wed, 22 Feb 2006 18:11:46 +0000 (GMT) (envelope-from bright@elvis.mu.org) Received: by elvis.mu.org (Postfix, from userid 1192) id 2FC071A3C25; Wed, 22 Feb 2006 10:11:46 -0800 (PST) Date: Wed, 22 Feb 2006 10:11:46 -0800 From: Alfred Perlstein To: anholt@freebsd.org, multimedia@freebsd.org Message-ID: <20060222181146.GB73389@elvis.mu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4.2.1i Cc: Subject: radeon lockups with drm/dri X-BeenThere: freebsd-multimedia@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Multimedia discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 22 Feb 2006 18:11:46 -0000 I've had a couple of times where my X server went bonkers and wouldn't respond to "kill -9" I think this has to do with the hardware going for a nap. Basically the X server gets stuck in "rdnrel". This is in: dev/drm/radeon_cp.c:radeon_do_release() if (dev_priv->cp_running) { /* Stop the cp */ while ((ret = radeon_do_cp_idle(dev_priv)) != 0) { DRM_DEBUG("radeon_do_cp_idle %d\n", ret); #ifdef __linux__ schedule(); #else #if defined(__FreeBSD__) && __FreeBSD_version > 500000 msleep(&ret, &dev->dev_lock, PZERO, "rdnrel", 1); #else tsleep(&ret, PZERO, "rdnrel", 1); #endif #endif } radeon_do_cp_stop(dev_priv); radeon_do_engine_reset(dev); } It appears that "radeon_do_cp_idle" fails over and over leading to an unkillable X server. Can this loop be changed to abort after a number of retries? Is a way to force a reset of the device when this happens? thank you! -- - Alfred Perlstein - CTO Okcupid.com / FreeBSD Hacker / All that jazz -