From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.6 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EC4F5C11F68 for ; Tue, 29 Jun 2021 16:39:33 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 4F18261DD6 for ; Tue, 29 Jun 2021 16:39:33 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4F18261DD6 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=ffwll.ch Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id D07656E8C9; Tue, 29 Jun 2021 16:39:30 +0000 (UTC) Received: from mail-ot1-x335.google.com (mail-ot1-x335.google.com [IPv6:2607:f8b0:4864:20::335]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1171F6E8C9 for ; Tue, 29 Jun 2021 16:39:29 +0000 (UTC) Received: by mail-ot1-x335.google.com with SMTP id m6-20020a9d1d060000b029044e2d8e855eso21327040otm.8 for ; Tue, 29 Jun 2021 09:39:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=xZnZ+U4go1KfwiNZo+sk8ZQg5LcypnMWP2JzKM8ADxg=; b=X/iJFPSPU8YbBUQrwjpbkr2fsPqACSlQMr2hVz+mkBD+v33C1TaU0rl32msgvojTYy UxQ5l5qUzpRLYuFpKAyY83r4MkpRDpYIoKukKAEjyHvuScaYBvewZ3v4hg4kUg0f4Fe6 t6ctna9jdKfuZaCZyESakroC8DlphWtefIO6s= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=xZnZ+U4go1KfwiNZo+sk8ZQg5LcypnMWP2JzKM8ADxg=; b=B3TwOMwFEMS3fqbaZZ7cgXzm86IkhBZvHzbCYAzQDdVSoNAp/mbWOWBUuluyBnRzUZ UGyofHq/89cxQEg1AOHgLtKzDWaASzcbaz2XqndSpItAB6KZ5a2ZfQoPRQYBfHb87HlT 4oR3cgJAap+6lqycqywMX06V+rgLw+ZG7jbD3J2GqYCbjNoYN0M/qEN0+9uWPuJgGtOZ s+8klA6a0nEZ6D+zhCn1IlfdTKRFXYStRCNwf15H26+/c4WjFcAEBDxmzupbjD2Mb6TU 6G2Hr9Vls9NlJDhCszD3UFBv1OkZD/slWzZwv/BtZiOIyAMWlYoPpTY+55IVzWB3laqr RCPg== X-Gm-Message-State: AOAM532I33jcxBJ40rhnl9EHuVi2kp9rK8lLxO+38+58FeCu/PoeFee9 u2hH4842AtCzsb6xvaCXxG1LG5xssA6r+fJrE7szmA== X-Google-Smtp-Source: ABdhPJz+eWmuBZcpnYy5rLX2+bRyXE01xMzcDhXowktKtk5lTjpVjGOxnq70s6QTm0uR2dgKDiSXzK6BFS918drS4L8= X-Received: by 2002:a9d:2037:: with SMTP id n52mr5065798ota.303.1624984769145; Tue, 29 Jun 2021 09:39:29 -0700 (PDT) MIME-Version: 1.0 References: <20210625084740.1586-1-tzimmermann@suse.de> In-Reply-To: From: Daniel Vetter Date: Tue, 29 Jun 2021 18:39:18 +0200 Message-ID: Subject: Re: [PATCH] drm/i915: Drop all references to DRM IRQ midlayer To: =?UTF-8?B?VmlsbGUgU3lyasOkbMOk?= Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Matthew Brost , Dave Airlie , Mika Kuoppala , intel-gfx , "Wilson, Chris" , dri-devel , Thomas Zimmermann , Rodrigo Vivi , Lucas De Marchi Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" On Tue, Jun 29, 2021 at 6:11 PM Ville Syrj=C3=A4l=C3=A4 wrote: > > On Fri, Jun 25, 2021 at 10:47:40AM +0200, Thomas Zimmermann wrote: > > Remove all references to DRM's IRQ midlayer. > > > > The code in xcs_resume() probably didn't work as intended. It uses > > struct drm_device.irq, which is allocated to 0, but never initialized > > by i915 to the device's interrupt number. > > > > Signed-off-by: Thomas Zimmermann > > Fixes: 536f77b1caa0 ("drm/i915/gt: Call stop_ring() from ring resume, a= gain") > > Cc: Chris Wilson > > Cc: Mika Kuoppala > > Cc: Daniel Vetter > > Cc: Rodrigo Vivi > > Cc: Joonas Lahtinen > > Cc: Maarten Lankhorst > > Cc: Lucas De Marchi > > --- > > drivers/gpu/drm/i915/gt/intel_ring_submission.c | 3 ++- > > drivers/gpu/drm/i915/i915_drv.c | 1 - > > drivers/gpu/drm/i915/i915_irq.c | 1 - > > 3 files changed, 2 insertions(+), 3 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/gt/intel_ring_submission.c b/drivers/= gpu/drm/i915/gt/intel_ring_submission.c > > index 5d42a12ef3d6..d893aaaed74f 100644 > > --- a/drivers/gpu/drm/i915/gt/intel_ring_submission.c > > +++ b/drivers/gpu/drm/i915/gt/intel_ring_submission.c > > @@ -180,12 +180,13 @@ static bool stop_ring(struct intel_engine_cs *eng= ine) > > static int xcs_resume(struct intel_engine_cs *engine) > > { > > struct intel_ring *ring =3D engine->legacy.ring; > > + struct pci_dev *pdev =3D to_pci_dev(engine->i915->drm.dev); > > > > ENGINE_TRACE(engine, "ring:{HEAD:%04x, TAIL:%04x}\n", > > ring->head, ring->tail); > > > > /* Double check the ring is empty & disabled before we resume */ > > - synchronize_hardirq(engine->i915->drm.irq); > > + synchronize_hardirq(pdev->irq); > > We have intel_synchronize_irq() to hide all these mundane details. > Might want to add a matching intel_synchronize_hardirq(). Hm I wonder whether we shouldn't just use the normal synchronize_irq() here. We don't have a threaded irq handler, and this should be called from process context. intel-gfx-ci will catch if I'm wrong :-) -Daniel > > > if (!stop_ring(engine)) > > goto err; > > > > diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i91= 5_drv.c > > index 850b499c71c8..73de45472f60 100644 > > --- a/drivers/gpu/drm/i915/i915_drv.c > > +++ b/drivers/gpu/drm/i915/i915_drv.c > > @@ -42,7 +42,6 @@ > > #include > > #include > > #include > > -#include > > #include > > #include > > > > diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i91= 5_irq.c > > index a11bdb667241..eef616d96f12 100644 > > --- a/drivers/gpu/drm/i915/i915_irq.c > > +++ b/drivers/gpu/drm/i915/i915_irq.c > > @@ -33,7 +33,6 @@ > > #include > > > > #include > > -#include > > > > #include "display/intel_de.h" > > #include "display/intel_display_types.h" > > > > base-commit: 8c1323b422f8473421682ba783b5949ddd89a3f4 > > prerequisite-patch-id: c2b2f08f0eccc9f5df0c0da49fa1d36267deb11d > > prerequisite-patch-id: c67e5d886a47b7d0266d81100837557fda34cb24 > > -- > > 2.32.0 > > -- > Ville Syrj=C3=A4l=C3=A4 > Intel --=20 Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch