From patchwork Thu Jul 9 21:32:46 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Vetter X-Patchwork-Id: 6760051 Return-Path: X-Original-To: patchwork-dri-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id B7DBD9F46B for ; Thu, 9 Jul 2015 21:30:41 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id E401C207A1 for ; Thu, 9 Jul 2015 21:30:40 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id 0BDE220790 for ; Thu, 9 Jul 2015 21:30:40 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 699DB7A094; Thu, 9 Jul 2015 14:30:38 -0700 (PDT) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-wg0-f51.google.com (mail-wg0-f51.google.com [74.125.82.51]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7A9097A095 for ; Thu, 9 Jul 2015 14:30:35 -0700 (PDT) Received: by wgov12 with SMTP id v12so49495920wgo.1 for ; Thu, 09 Jul 2015 14:30:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=LUHt1ll7UjvVBuyJn+viCH/Ck++O5e0073vRDIfIbbs=; b=MqtP8wudH/Zf4Y4bTfrP4ad1vpX/THZG4OYOkrNFjpAEwdAo6pQmK1uk7z0Dyb1/dT kjV9eHL61O3jHemYjiJ1M7yqhVDektrWV5Ow1/jstgQjjoJmwGxrwt8zdH3WZr5cvZyo vFnhVQ1o41nOc9E+NYR4BuDhk9YMzjUXCvgxI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=LUHt1ll7UjvVBuyJn+viCH/Ck++O5e0073vRDIfIbbs=; b=hrVDXsFczGXlY9rx77GhxtTlqxR1XY9Uo7JhGnzTHC55xZX/6zOHpb+4nIsK9ozeE/ VTMZxm1N8azRmDeH8s1Q9nC/CoGh+3Typ5ZJXFJTZwfDxkyjc8Ew1q23b5S1tTs9iQMf KCM66LRkGSZyUgp+eGveVyn2e7bSP+7+rbh/BHVEygmwY6WoCvcA9IqxONUW4dCT8Hxc ziA/YzJqFY5znmvfwDx8Fj/H9pUCqeLiQqdo4UxUurbcBjcsUrLU3uFGEsCbGRp8qfjx bHebdv4AcM0Xt4jHh7JSIMUfUpz5BZ1GXStaJGRlYxvXH1lw0O37S72Hx4l8YKNR26QL 9bhA== X-Gm-Message-State: ALoCoQkaL/WlqyA3mHhr2jfWLxvd+xcvbBux+pLH7DVg7Qr6WPLjMFWeZ1mHl1YJRzwRv0Ew2k9e X-Received: by 10.194.23.167 with SMTP id n7mr10248802wjf.112.1436477434305; Thu, 09 Jul 2015 14:30:34 -0700 (PDT) Received: from phenom.ffwll.local (212-51-149-109.fiber7.init7.net. [212.51.149.109]) by smtp.gmail.com with ESMTPSA id j6sm3004128wix.5.2015.07.09.14.30.33 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 09 Jul 2015 14:30:33 -0700 (PDT) From: Daniel Vetter To: DRI Development Subject: [PATCH 14/18] drm/qxl: Don't take dev->struct_mutex in bo_force_delete Date: Thu, 9 Jul 2015 23:32:46 +0200 Message-Id: <1436477570-4936-15-git-send-email-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1436477570-4936-1-git-send-email-daniel.vetter@ffwll.ch> References: <1436477570-4936-1-git-send-email-daniel.vetter@ffwll.ch> Cc: Daniel Vetter , Intel Graphics Development , Daniel Vetter X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_MED,RP_MATCHES_RCVD,T_DKIM_INVALID,UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP It really doesn't protect anything which doesn't have other locks already. It also doesn't seem to be wired up into the driver unload code fwiw, but that's a different issue. Signed-off-by: Daniel Vetter Reviewed-by: Thierry Reding --- drivers/gpu/drm/qxl/qxl_object.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/gpu/drm/qxl/qxl_object.c b/drivers/gpu/drm/qxl/qxl_object.c index 6d6f33de48f4..b28370e014c6 100644 --- a/drivers/gpu/drm/qxl/qxl_object.c +++ b/drivers/gpu/drm/qxl/qxl_object.c @@ -272,7 +272,6 @@ void qxl_bo_force_delete(struct qxl_device *qdev) return; dev_err(qdev->dev, "Userspace still has active objects !\n"); list_for_each_entry_safe(bo, n, &qdev->gem.objects, list) { - mutex_lock(&qdev->ddev->struct_mutex); dev_err(qdev->dev, "%p %p %lu %lu force free\n", &bo->gem_base, bo, (unsigned long)bo->gem_base.size, *((unsigned long *)&bo->gem_base.refcount)); @@ -280,8 +279,7 @@ void qxl_bo_force_delete(struct qxl_device *qdev) list_del_init(&bo->list); mutex_unlock(&qdev->gem.mutex); /* this should unref the ttm bo */ - drm_gem_object_unreference(&bo->gem_base); - mutex_unlock(&qdev->ddev->struct_mutex); + drm_gem_object_unreference_unlocked(&bo->gem_base); } }