From patchwork Mon Jan 25 21:16:44 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Vetter X-Patchwork-Id: 8115531 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 95504BEEE5 for ; Mon, 25 Jan 2016 21:17:05 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id A2B8120384 for ; Mon, 25 Jan 2016 21:17:04 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id 7F81A20389 for ; Mon, 25 Jan 2016 21:17:03 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 8995A6E191; Mon, 25 Jan 2016 13:17:02 -0800 (PST) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-wm0-f68.google.com (mail-wm0-f68.google.com [74.125.82.68]) by gabe.freedesktop.org (Postfix) with ESMTPS id 845946E18D for ; Mon, 25 Jan 2016 13:17:00 -0800 (PST) Received: by mail-wm0-f68.google.com with SMTP id b14so13693738wmb.1 for ; Mon, 25 Jan 2016 13:17:00 -0800 (PST) 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=SnbGteDVpwCCTkDtrDsvkfq4NvBuV6YK4XolzcC8DA8=; b=lYAw0lyKXQ81tnOd+kB/qaqNyNsC3THO77tmemxtdW+rAzPhgyJH3BpOzmgnw8IA6P k8L5bAXyYW+U5zm3bzD7qZ/WmMZCekfUoFLBo3qP3NL5IbOnZVEzcBHcr3HFbA6OM/fC CUHS8DfFfRfizu3e/t0RYcc6JkSHLDHG45CRM= 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=SnbGteDVpwCCTkDtrDsvkfq4NvBuV6YK4XolzcC8DA8=; b=PvhnBpx3uHtujrXTeSpBwxLeUyiWQ5FJ1B6jZEn3KeVA6BVpYGrhS7hX0PszV+U14v xcIJRB6XHPfpJXL8meoUS0dl+KwewF8NXjdomic9aGGqZeMMfkQ/cAtsa2nXsZ20Ti0w vOjKF41LN/9bkV5SZOEHG/1cBkw5Qpcn7tI1QYZ2tRlVBSplPJ3XT8CpvTh3sLYkK3Ng 4Qw5DClQmdDP/aN67gE+REwUPpS+0tZ8QNhsiGeAtyJeBY4D7xk8m0V2psq5g/bTKxmw afx49fTf5eNXgyMOyEuQDNB/H+A4MUHinkXE4lQvJYMB8shVzVA4MWjr+4vAB6FqVWiV ltzQ== X-Gm-Message-State: AG10YOSw5UjCqGSgqaF5u6iPz3lqqiESSgWgbBkMcRKfVvR0xVOm6PwIXdvLosIDvsJjBw== X-Received: by 10.194.115.164 with SMTP id jp4mr19906850wjb.26.1453756619325; Mon, 25 Jan 2016 13:16:59 -0800 (PST) Received: from phenom.ffwll.local ([2a02:168:56c9:0:22cf:30ff:fe4c:37d6]) by smtp.gmail.com with ESMTPSA id y124sm515441wmg.3.2016.01.25.13.16.58 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 25 Jan 2016 13:16:58 -0800 (PST) From: Daniel Vetter To: DRI Development , Intel Graphics Development Subject: [PATCH 03/15] drm: Nuke vblank event file cleanup code Date: Mon, 25 Jan 2016 22:16:44 +0100 Message-Id: <1453756616-28942-3-git-send-email-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 2.7.0.rc3 In-Reply-To: <1453756616-28942-1-git-send-email-daniel.vetter@ffwll.ch> References: <1453756616-28942-1-git-send-email-daniel.vetter@ffwll.ch> Cc: Daniel Vetter , Laurent Pinchart , 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.1 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 The core code now takes care of unlinking drm_events from the file in a generic way, so this code isn't needed any more. For those wondering where the drm_vblank_put went to: With the new logic events only get unlinked, but still exist. Hence any resources (like vblank counters) don't need to be released since the event user will still process the event normally. In this case this is the callsites of send_vblank_event, which of course already have a drm_vblank_put. Cc: Laurent Pinchart Acked-by: Daniel Stone Reviewed-by: Alex Deucher Reviewed-by: Laurent Pinchart Link: http://patchwork.freedesktop.org/patch/msgid/1452548477-15905-11-git-send-email-daniel.vetter@ffwll.ch Signed-off-by: Daniel Vetter --- drivers/gpu/drm/drm_fops.c | 9 --------- 1 file changed, 9 deletions(-) diff --git a/drivers/gpu/drm/drm_fops.c b/drivers/gpu/drm/drm_fops.c index afe8c53e5aad..aeef58ed359b 100644 --- a/drivers/gpu/drm/drm_fops.c +++ b/drivers/gpu/drm/drm_fops.c @@ -354,19 +354,10 @@ static void drm_events_release(struct drm_file *file_priv) { struct drm_device *dev = file_priv->minor->dev; struct drm_pending_event *e, *et; - struct drm_pending_vblank_event *v, *vt; unsigned long flags; spin_lock_irqsave(&dev->event_lock, flags); - /* Remove pending flips */ - list_for_each_entry_safe(v, vt, &dev->vblank_event_list, base.link) - if (v->base.file_priv == file_priv) { - list_del(&v->base.link); - drm_vblank_put(dev, v->pipe); - v->base.destroy(&v->base); - } - /* Unlink pending events */ list_for_each_entry_safe(e, et, &file_priv->pending_event_list, pending_link) {