From patchwork Wed Jul 10 12:12:11 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Vetter X-Patchwork-Id: 2825700 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.19.201]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 8329B9F756 for ; Wed, 10 Jul 2013 12:43:43 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 6F8CE201B7 for ; Wed, 10 Jul 2013 12:43:42 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id ACD87201B5 for ; Wed, 10 Jul 2013 12:43:37 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 7DF4FE63A5 for ; Wed, 10 Jul 2013 05:43:37 -0700 (PDT) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-ea0-f169.google.com (mail-ea0-f169.google.com [209.85.215.169]) by gabe.freedesktop.org (Postfix) with ESMTP id 983FEE5FBB for ; Wed, 10 Jul 2013 05:13:15 -0700 (PDT) Received: by mail-ea0-f169.google.com with SMTP id h15so4986588eak.28 for ; Wed, 10 Jul 2013 05:13:14 -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:x-mailer:in-reply-to:references; bh=vXoJ2qX8UNvjyaswzRG+GyOLXFAIQstmOLUFkbpolDg=; b=URIx/Zyk73rGzgMCBbICuJd0m/kBa9WLIY6drUsuoxTZbr6DXcmJK4mgP41ZVExNQo c6FZbHAE7mcubEX26MAyfDy9kGp9DFmskBhdPHERLZFuhfOulTK8IESu6tVSTtQj/luA vU9n8EEPxxkVBouG022JDzw+UnroYAVLDDQiU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=from:to:cc:subject:date:message-id:x-mailer:in-reply-to:references :x-gm-message-state; bh=vXoJ2qX8UNvjyaswzRG+GyOLXFAIQstmOLUFkbpolDg=; b=MxFw3q+lkOoPEZLqce33Nh8ZMgkvCiZEWeQyKqBkV97KC+j26VtE4SrK9qjWnsKey4 iwkGWzK3BZl71j+aUpFDW6ZAqPJ6VYgg9EOg3fH/0XCG0XBzukenTP5rgqHNZaiMvZBa /X4Eha2sCHh/AK5tpzpqvFP9+UceUdxZOg4BZX1TT2nJlcIpgU2VPnG7XcxDTATG14pt QLPKUtEVjsp4nNgdxH0fEwOQBoG4P1cak3wjzxa0w2HKsMxvnSgiZ7Lg0uwR/D3eS6NZ ZKDjYepTQ2JlU8nEsgxfh/zgZdHaXn8Q3ygln/EwG5kENK/3KKs4tLU8i/somRdgRXEd i0mg== X-Received: by 10.15.41.196 with SMTP id s44mr35850679eev.138.1373458394841; Wed, 10 Jul 2013 05:13:14 -0700 (PDT) Received: from phenom.ffwll.local (178-83-130-250.dynamic.hispeed.ch. [178.83.130.250]) by mx.google.com with ESMTPSA id i2sm59527012eeu.4.2013.07.10.05.13.13 for (version=TLSv1.2 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 10 Jul 2013 05:13:14 -0700 (PDT) From: Daniel Vetter To: DRI Development Subject: [PATCH 37/39] drm: no-op out GET_STATS ioctl Date: Wed, 10 Jul 2013 14:12:11 +0200 Message-Id: <1373458333-5988-38-git-send-email-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 1.8.3.2 In-Reply-To: <1373458333-5988-1-git-send-email-daniel.vetter@ffwll.ch> References: <1373458333-5988-1-git-send-email-daniel.vetter@ffwll.ch> X-Gm-Message-State: ALoCoQl4N3Nj6MGS11mLGFviEu1hDbmVNQawH7FJURTUrbRJfFgHpE7nE2Wfq894Zzu1NiTLiQNl Cc: Daniel Vetter X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: dri-devel-bounces+patchwork-dri-devel=patchwork.kernel.org@lists.freedesktop.org Errors-To: dri-devel-bounces+patchwork-dri-devel=patchwork.kernel.org@lists.freedesktop.org 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 Again only used by a tests in libdrm and by dristat. Nowadays we have much better tracing tools to get detailed insights into what a drm driver is doing. And for a simple "does it work" kind of question that these stats could answer we have plenty of dmesg debug log spew. So I don't see any use for this stat gathering complexity at all. To be able to gradually drop things start with ripping out the interfaces to it, here the ioctl. To prevent dristat from eating its own stack garbage we can't use the drm_noop ioctl though, since we need to clear the return data with a memset. Cc: Eric Anholt Signed-off-by: Daniel Vetter --- drivers/gpu/drm/drm_ioctl.c | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c index 5159fa0..fbe9219 100644 --- a/drivers/gpu/drm/drm_ioctl.c +++ b/drivers/gpu/drm/drm_ioctl.c @@ -237,21 +237,10 @@ int drm_getstats(struct drm_device *dev, void *data, struct drm_file *file_priv) { struct drm_stats *stats = data; - int i; + /* Clear stats to prevent userspace from eating its stack garbage. */ memset(stats, 0, sizeof(*stats)); - for (i = 0; i < dev->counters; i++) { - if (dev->types[i] == _DRM_STAT_LOCK) - stats->data[i].value = - (file_priv->master->lock.hw_lock ? file_priv->master->lock.hw_lock->lock : 0); - else - stats->data[i].value = atomic_read(&dev->counts[i]); - stats->data[i].type = dev->types[i]; - } - - stats->count = dev->counters; - return 0; }