From patchwork Tue Jun 23 09:37:08 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Vetter X-Patchwork-Id: 6659331 Return-Path: X-Original-To: patchwork-dri-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 33083C05AD for ; Tue, 23 Jun 2015 09:34:33 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 593192065B for ; Tue, 23 Jun 2015 09:34:32 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id 7B71F2064E for ; Tue, 23 Jun 2015 09:34:31 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id D57EE7A0DD; Tue, 23 Jun 2015 02:34:29 -0700 (PDT) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-wi0-f171.google.com (mail-wi0-f171.google.com [209.85.212.171]) by gabe.freedesktop.org (Postfix) with ESMTP id D6D776E369 for ; Tue, 23 Jun 2015 02:34:28 -0700 (PDT) Received: by wibdq8 with SMTP id dq8so10730447wib.1 for ; Tue, 23 Jun 2015 02:34:28 -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=FzDFlXCbqNHIrfq7Z7l/Lz0vH/pDaIbpqgcoYvTb7mg=; b=ehp6AEmLggIIj+fkdmWq/URWlckAEUgXIS4eiDEVNQGPBsxmf62gfUw/ybCmmSMu+D PikF7GxZKieUbvAya+4wxLjB+LJQ6Ea3nZJEWZLg/M7uSeQFlIM2Z5sThgHYAjmeJsmU Q1CF+EfV7/Pr7B2P6OkRGeq00rJ7Dz8pmIAt4= 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=FzDFlXCbqNHIrfq7Z7l/Lz0vH/pDaIbpqgcoYvTb7mg=; b=gYRSXdG6xCQ41MCFJA6AfJG0nztinc7bgB0szabdK4ZmeZDTXuAB32bckBmE6QxJSU rQYFWR/26/Kn8bif70XB/6k2q+NFXbx79gp+wbW6QUZuIIKFU/huyfODmD0F8VLhyHto Sk6fesr5MDP96ep3JOCRnFJqjQpoeV+QPZh7dxoUQKcqMZgoGMwINzD44bUHeoESwzm/ HVkiilrnCU87GGVw8cCf7+P4efdYb1/ccrMIwlBhERcCOjFvod/g3zF+W0FrNa808SzY 23DG1U9gEsc2sU6ne6XuzpVJ8mDz1+Flo0VnaHSEJi0E6EXx5vYuJn1AK9mwFVeaoiZw 0Wuw== X-Gm-Message-State: ALoCoQn7TFjYtvbSCzun/uAwzwxnTquiOpQjZXShjOUOJwfCJQhSheazQAIT6O75jb6AxzDuPpSL X-Received: by 10.194.178.201 with SMTP id da9mr59263688wjc.139.1435052068267; Tue, 23 Jun 2015 02:34:28 -0700 (PDT) Received: from phenom.ffwll.local (212-51-149-109.fiber7.init7.net. [212.51.149.109]) by mx.google.com with ESMTPSA id n10sm4225902wiz.19.2015.06.23.02.34.26 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 23 Jun 2015 02:34:27 -0700 (PDT) From: Daniel Vetter To: DRI Development Subject: [PATCH 3/3] drm: Reject DRI1 hw lock ioctl functions for kms drivers Date: Tue, 23 Jun 2015 11:37:08 +0200 Message-Id: <1435052228-29710-3-git-send-email-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1435052228-29710-1-git-send-email-daniel.vetter@ffwll.ch> References: <1435052228-29710-1-git-send-email-daniel.vetter@ffwll.ch> Cc: Daniel Vetter , Intel Graphics Development , Peter Antoine , 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=-5.5 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 I've done some extensive history digging across libdrm, mesa and xf86-video-{intel,nouveau,ati}. The only potential user of this with kms drivers I could find was ttmtest, which once used drmGetLock still. But that mistake was quickly fixed up. Even the intel xvmc library (which otherwise was really good with using dri1 stuff in kms mode) managed to never take the hw lock for dri2 (and hence kms). Hence it should be save to unconditionally disallow this. Cc: Peter Antoine Signed-off-by: Daniel Vetter Reviewed-by: Peter Antoine --- drivers/gpu/drm/drm_lock.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/gpu/drm/drm_lock.c b/drivers/gpu/drm/drm_lock.c index f861361a635e..4924d381b664 100644 --- a/drivers/gpu/drm/drm_lock.c +++ b/drivers/gpu/drm/drm_lock.c @@ -61,6 +61,9 @@ int drm_legacy_lock(struct drm_device *dev, void *data, struct drm_master *master = file_priv->master; int ret = 0; + if (drm_core_check_feature(dev, DRIVER_MODESET)) + return -EINVAL; + ++file_priv->lock_count; if (lock->context == DRM_KERNEL_CONTEXT) { @@ -153,6 +156,9 @@ int drm_legacy_unlock(struct drm_device *dev, void *data, struct drm_file *file_ struct drm_lock *lock = data; struct drm_master *master = file_priv->master; + if (drm_core_check_feature(dev, DRIVER_MODESET)) + return -EINVAL; + if (lock->context == DRM_KERNEL_CONTEXT) { DRM_ERROR("Process %d using kernel context %d\n", task_pid_nr(current), lock->context);