Received: by 2002:a05:6a10:16a7:0:0:0:0 with SMTP id gp39csp844955pxb; Tue, 3 Nov 2020 14:12:55 -0800 (PST) X-Google-Smtp-Source: ABdhPJzE6Kgn8yL9L6RyjpLQJr/IL5GDvIebzmAAEmMLKxpOl51XpYWO3zxl+FqyBF4FJLSkyY54 X-Received: by 2002:a17:906:7c4a:: with SMTP id g10mr17899748ejp.545.1604441575423; Tue, 03 Nov 2020 14:12:55 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1604441575; cv=none; d=google.com; s=arc-20160816; b=UyTV5aUzbMOuPA+zBYxmsGWQvbj43XubkJcLp+3i7SCz1zlljxAGw9nVgYQ1Onz1V5 NStN/OO28TvHRvZoCZffQAhnMXMptBBxaWgOC+qv/BVMen02CAPMHxrO1x+Ybv0Mt2sb IqlCa8XDHKSPiSKUihziJuTKBJJWBkG9x8U1o8Vs2Jov2/oz41FtbsfXUxaOJWCmEncB uXtPBZqTW8m9sL4NyObgI++q2N+AJpWWyC36r73MpGOo9frgW+VMRkKhxItun8VVFygN ADLWdaGkElS2cMRkN93zfy1Wpwdn05qPQX/UsO1w2nnnLQSUmYyNP07rkdUri47WZ7Qw zqOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=c+cZ2GNGW8ZqMpEKHipNrbGjSOlOAAGM24pfMJ/La0c=; b=pll7HrOOzpeMjKTCQdU7NJ+l/PrtCbfGJnFZbVmykO2t3BFNkkAPioDdHSiQQ87blx SrXl3LtMOivJ9NmblMJPWFd8Urfmg133YzAzay7Oo3lveZ9+Jw9imAfI5sS8jns4z+Xv VcN5rb1sWN6A74Lc8zdtBiFibatM3Yjs0Qjp1FHjLwpGM0cH8n8gADFEd+v3BzUO3Rvk a5rWpfu1WFlRT/cf6ARZ06OsUf/001/fIHLjDscDScPVtZ2AZEjsB8k9E5gaYaW4gUGK he5tXAt3wK6zcxAlkM1UtMODyv5vvgADB8uCR3qxQI9NqhED9FqfZts9HJrL6fbmVClF 3jqA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=DX30Ck2x; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id b20si3736542edv.300.2020.11.03.14.12.32; Tue, 03 Nov 2020 14:12:55 -0800 (PST) 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=@kernel.org header.s=default header.b=DX30Ck2x; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730327AbgKCWJG (ORCPT + 99 others); Tue, 3 Nov 2020 17:09:06 -0500 Received: from mail.kernel.org ([198.145.29.99]:52932 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730330AbgKCUlO (ORCPT ); Tue, 3 Nov 2020 15:41:14 -0500 Received: from localhost (83-86-74-64.cable.dynamic.v4.ziggo.nl [83.86.74.64]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id BE3E322226; Tue, 3 Nov 2020 20:41:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1604436073; bh=a7xXpqNhIZ3lwhTLtUuoEjYDxkr8TOz5DoawQ1HEvNg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=DX30Ck2xawmBDigdaZJk62bu6i8MeYVDcif3VJQ9EYxyqdS+4eRmza04Wa1WmHHbE 5YwTQgspH6ifABeGFzxfrGeRnspFCHJaOpNd9uh4asLY99xUAwg4xf5E5B9XpovNKI 2ts9jQCYsh6gGZgCtRgoBFZe59WHuX01WDVG1H7c= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Daniel Vetter , Rodrigo Siqueira , Haneen Mohammed , Melissa Wen , Sidong Yang , Sasha Levin Subject: [PATCH 5.9 090/391] drm/vkms: avoid warning in vkms_get_vblank_timestamp Date: Tue, 3 Nov 2020 21:32:21 +0100 Message-Id: <20201103203353.039073913@linuxfoundation.org> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20201103203348.153465465@linuxfoundation.org> References: <20201103203348.153465465@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Sidong Yang [ Upstream commit 05ca530268a9d0ab3547e7b288635e35990a77c4 ] This patch avoid the warning in vkms_get_vblank_timestamp when vblanks aren't enabled. When running igt test kms_cursor_crc just after vkms module, the warning raised like below. Initial value of vblank time is zero and hrtimer.node.expires is also zero if vblank aren't enabled before. vkms module isn't real hardware but just virtual hardware module. so vkms can't generate a resonable timestamp when hrtimer is off. it's best to grab the current time. [106444.464503] [IGT] kms_cursor_crc: starting subtest pipe-A-cursor-size-change [106444.471475] WARNING: CPU: 0 PID: 10109 at vkms_get_vblank_timestamp+0x42/0x50 [vkms] [106444.471511] CPU: 0 PID: 10109 Comm: kms_cursor_crc Tainted: G W OE 5.9.0-rc1+ #6 [106444.471514] RIP: 0010:vkms_get_vblank_timestamp+0x42/0x50 [vkms] [106444.471528] Call Trace: [106444.471551] drm_get_last_vbltimestamp+0xb9/0xd0 [drm] [106444.471566] drm_reset_vblank_timestamp+0x63/0xe0 [drm] [106444.471579] drm_crtc_vblank_on+0x85/0x150 [drm] [106444.471582] vkms_crtc_atomic_enable+0xe/0x10 [vkms] [106444.471592] drm_atomic_helper_commit_modeset_enables+0x1db/0x230 [drm_kms_helper] [106444.471594] vkms_atomic_commit_tail+0x38/0xc0 [vkms] [106444.471601] commit_tail+0x97/0x130 [drm_kms_helper] [106444.471608] drm_atomic_helper_commit+0x117/0x140 [drm_kms_helper] [106444.471622] drm_atomic_commit+0x4a/0x50 [drm] [106444.471629] drm_atomic_helper_set_config+0x63/0xb0 [drm_kms_helper] [106444.471642] drm_mode_setcrtc+0x1d9/0x7b0 [drm] [106444.471654] ? drm_mode_getcrtc+0x1a0/0x1a0 [drm] [106444.471666] drm_ioctl_kernel+0xb6/0x100 [drm] [106444.471677] drm_ioctl+0x3ad/0x470 [drm] [106444.471688] ? drm_mode_getcrtc+0x1a0/0x1a0 [drm] [106444.471692] ? tomoyo_file_ioctl+0x19/0x20 [106444.471694] __x64_sys_ioctl+0x96/0xd0 [106444.471697] do_syscall_64+0x37/0x80 [106444.471699] entry_SYSCALL_64_after_hwframe+0x44/0xa9 Cc: Daniel Vetter Cc: Rodrigo Siqueira Cc: Haneen Mohammed Cc: Melissa Wen Signed-off-by: Sidong Yang Reviewed-by: Melissa Wen Signed-off-by: Rodrigo Siqueira Link: https://patchwork.freedesktop.org/patch/msgid/20200828124553.2178-1-realwakka@gmail.com Signed-off-by: Sasha Levin --- drivers/gpu/drm/vkms/vkms_crtc.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/gpu/drm/vkms/vkms_crtc.c b/drivers/gpu/drm/vkms/vkms_crtc.c index ac85e17428f88..09c012d54d58f 100644 --- a/drivers/gpu/drm/vkms/vkms_crtc.c +++ b/drivers/gpu/drm/vkms/vkms_crtc.c @@ -86,6 +86,11 @@ static bool vkms_get_vblank_timestamp(struct drm_crtc *crtc, struct vkms_output *output = &vkmsdev->output; struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; + if (!READ_ONCE(vblank->enabled)) { + *vblank_time = ktime_get(); + return true; + } + *vblank_time = READ_ONCE(output->vblank_hrtimer.node.expires); if (WARN_ON(*vblank_time == vblank->time)) -- 2.27.0