Received: by 2002:a25:868d:0:0:0:0:0 with SMTP id z13csp2546309ybk; Tue, 12 May 2020 02:03:41 -0700 (PDT) X-Google-Smtp-Source: APiQypIsN+ONbHMkg8nFmLoHXsFmDl21ISd5DueQR+Uy/H8WDSuko6i1uX0Yg3zCE8/HpHWGKKxH X-Received: by 2002:a50:8165:: with SMTP id 92mr9264265edc.263.1589274221752; Tue, 12 May 2020 02:03:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1589274221; cv=none; d=google.com; s=arc-20160816; b=epk5N1MDlg1elWA6SelCObTvkUTSVmiTGuneH6pCM5kJodLsucZQhR3W8p7u3U/W4Y ku5s8v/dbC6MHpD4dZR1XugC2o42YDRQilkGDE6gbVjGfBxIbJC3z6cf+7CQ/XY+OTx0 YOW+T8TGGYBNTcisQdF4X72acm4jwkd7pWW0GqqqAWXeIlHG+w7hpUSWJ9l0Imtsf97m MMvBz2u+n0tgd6VRGrYvUJ7bM0qjmbE2ZPZskTFZHaRpuHDnwR/n04iNpUrIQal3bLSy Z23yK33n/tgToGJFfU+HPDds+9dWZh9q6cy4tLR5geLSRe6fG+d8e15NOqrrSldJMaLb V04g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=Z86jDMPjYosEVmpvz8g87itNg+tEFmiX7DLzwmjjruY=; b=XzveHcTGkiIm2NDydq3wzohq9a3neo9Kd4TirqqaeHujIjlg8G1o/BWfWRAn0INqa6 bQRBU2F+D9B3xFBp+PzPuLHxTrHHJRYUz/XzSQwO61tkR8cQAzIw2CPp12a0KFrNtlP7 tLkVQX99y0Sd474wfnGPamyF3P7EMgOQc0sZRpkfODxhaUJ38B73JMRLNdeGMbUBuc0a bNca+Rfw9PaJ2lwsj8c3nUP+4zKK99NkTo9GDLS507+GlKXNXeMGnLBQNGm7e8vQT9ov KbDDVqrdABLeiTeatM5qb7vCILQCQht+6xrooBDqbtTsqhabeARfCQNvbBxTtau67k2A /3sQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ffwll.ch header.s=google header.b=e347cRrT; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id y4si2336382edt.104.2020.05.12.02.03.18; Tue, 12 May 2020 02:03:41 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@ffwll.ch header.s=google header.b=e347cRrT; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729428AbgELJBK (ORCPT + 99 others); Tue, 12 May 2020 05:01:10 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42730 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1729358AbgELJAD (ORCPT ); Tue, 12 May 2020 05:00:03 -0400 Received: from mail-wm1-x343.google.com (mail-wm1-x343.google.com [IPv6:2a00:1450:4864:20::343]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 193A9C061A0E for ; Tue, 12 May 2020 02:00:02 -0700 (PDT) Received: by mail-wm1-x343.google.com with SMTP id m24so11242253wml.2 for ; Tue, 12 May 2020 02:00:02 -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 :mime-version:content-transfer-encoding; bh=Z86jDMPjYosEVmpvz8g87itNg+tEFmiX7DLzwmjjruY=; b=e347cRrTqkHcsmJyCgB3TVco449DVfioti3xt++37x7bJTFMigGg5EWlMaf/MjZpmR eYVFJlx9g9Vm+NEIhg3iXwKg86toJqtzlt+iCudluN0BiyTQqaBnCZJLIa0zEEFILrRP R3mU5I3uQHXrIj7OqeDSyBNZDBZCv72rxHs1Q= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=Z86jDMPjYosEVmpvz8g87itNg+tEFmiX7DLzwmjjruY=; b=SX02p5cRodxOx+JjSywq9A62+mke8657/IdQ9A8EinceRJ/e9zDRp/zNBXeIWZaAod kCHhPAh0qLSkKJiutXzuiuhG34GFevEz8zbqXMoy6ljq8lmKi/b9MikPsqCqf0hWtKPB VDpftbtxKIL2cNiFgSGFzsuwnKXOdV83BP9WuimNOKRBShtqTq1tqncubP8Bqj2ETWv+ 8ka88HntSGSRvBF2qXbGZkJ8/wWlOQ3cz08Ffwwyu/+l5M5jbPtZjL2qfxcohbi6b8Rc tqv+CpmCPEaJ1P6pZ3iNteUinaoXZAvAquozC7uEyPo+DVo22oFFlOi2dNsfxRV2LSnG bHtw== X-Gm-Message-State: AGi0PubpY6MyRth4mr/mK7wXERkcAG5yTwJx7OgsXFK02n3Q5e4yda9w mKt9l2ENDl6ARzIo0js/QUkoRw== X-Received: by 2002:a1c:6344:: with SMTP id x65mr19610953wmb.51.1589274000857; Tue, 12 May 2020 02:00:00 -0700 (PDT) Received: from phenom.ffwll.local ([2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa]) by smtp.gmail.com with ESMTPSA id y10sm18845457wrd.95.2020.05.12.01.59.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 12 May 2020 02:00:00 -0700 (PDT) From: Daniel Vetter To: DRI Development Cc: LKML , Daniel Vetter , linux-media@vger.kernel.org, linaro-mm-sig@lists.linaro.org, linux-rdma@vger.kernel.org, amd-gfx@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, Chris Wilson , Maarten Lankhorst , =?UTF-8?q?Christian=20K=C3=B6nig?= , Daniel Vetter , Rodrigo Siqueira , Haneen Mohammed , Daniel Vetter Subject: [RFC 04/17] drm/vkms: Annotate vblank timer Date: Tue, 12 May 2020 10:59:31 +0200 Message-Id: <20200512085944.222637-5-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200512085944.222637-1-daniel.vetter@ffwll.ch> References: <20200512085944.222637-1-daniel.vetter@ffwll.ch> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This is needed to signal the fences from page flips, annotate it accordingly. We need to annotate entire timer callback since if we get stuck anywhere in there, then the timer stops, and hence fences stop. Just annotating the top part that does the vblank handling isn't enough. Cc: linux-media@vger.kernel.org Cc: linaro-mm-sig@lists.linaro.org Cc: linux-rdma@vger.kernel.org Cc: amd-gfx@lists.freedesktop.org Cc: intel-gfx@lists.freedesktop.org Cc: Chris Wilson Cc: Maarten Lankhorst Cc: Christian König Signed-off-by: Daniel Vetter Cc: Rodrigo Siqueira Cc: Haneen Mohammed Cc: Daniel Vetter --- drivers/gpu/drm/vkms/vkms_crtc.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/vkms/vkms_crtc.c b/drivers/gpu/drm/vkms/vkms_crtc.c index ac85e17428f8..a53a40848a72 100644 --- a/drivers/gpu/drm/vkms/vkms_crtc.c +++ b/drivers/gpu/drm/vkms/vkms_crtc.c @@ -1,5 +1,7 @@ // SPDX-License-Identifier: GPL-2.0+ +#include + #include #include #include @@ -14,7 +16,9 @@ static enum hrtimer_restart vkms_vblank_simulate(struct hrtimer *timer) struct drm_crtc *crtc = &output->crtc; struct vkms_crtc_state *state; u64 ret_overrun; - bool ret; + bool ret, fence_cookie; + + fence_cookie = dma_fence_begin_signalling(); ret_overrun = hrtimer_forward_now(&output->vblank_hrtimer, output->period_ns); @@ -49,6 +53,8 @@ static enum hrtimer_restart vkms_vblank_simulate(struct hrtimer *timer) DRM_DEBUG_DRIVER("Composer worker already queued\n"); } + dma_fence_end_signalling(fence_cookie); + return HRTIMER_RESTART; } -- 2.26.2