Received: by 2002:a05:6a11:4021:0:0:0:0 with SMTP id ky33csp2353749pxb; Mon, 20 Sep 2021 19:52:29 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzFaXAygIfVkbmouBRw0dQ4lfAj9z86L1ehUqXpNzdOMy1JKvCWs4/bculBxFVnWlM1KeC0 X-Received: by 2002:a17:906:a14b:: with SMTP id bu11mr31870133ejb.260.1632192749183; Mon, 20 Sep 2021 19:52:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1632192749; cv=none; d=google.com; s=arc-20160816; b=XRcaJdiLX24pnROW4FxHiBV084aD0UVbYO6DS53ZfW+i1XJ2jp8m5qOlEQ13/56peY 2BwbBh1uD4w9LPF3JVCjIQv8oWb3GkBzDvbSWqnE8xN/0uTf+Jmb2AJPaE0jLdKPScXt PM5ibBU2rLWpbf7weQn59RN59HRSg8THdMksVcMCe5oMPA8UWU/LkxWG+a9iz7XWfRk2 tIZckH+bMb4wgPhiJeCEnv0eovTHPt2CNFOE4ITlXD7c0I6NPY0hSf/WSikzad5RWqmR 2a84BV2jXeFKgRAuE/T17hhJQxPNZKPvjMUL3Hrjawfgyi9Rh/PePXae6ed5McFzfESI CNtQ== 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=tYwBAD8b32GeOdx8Lvmv+kTGxapTJcN5/BLmUDll6wE=; b=zUl1FFFjskzXuhEjHr1R00aWVWb6QIgpWpfnMsob7IQ8LC+fbdUUR5Ik0fCURNp05e AWFD4xV27A1AyzaJ8IDizCbpxHXkYnUC3c2Dd40w06UU7R/k2gJ3wv7giQvZDIsUrCRm 0qS5cXt/nWj1NiW6lbn0u1b6PsD8tN5VuWOYFvUCUE+mPLgfjHn+XWWmTUcpyLDIIAI0 jxFsJQZgS1vsGKt5wxQkSVohseFLiNH7viAI4Zq9LOpRzW4sMIwmSCYQbp7OKWixjEvj v3ZM5jozPrIyA1OrUi7P968Chjv39Iqkzd1OONVF5iJrZNrR8gKzxO6sZ1ZADNo6uPb8 Zwtg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=dzTiI6bq; 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=pass (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 i4si17805181ejj.165.2021.09.20.19.52.05; Mon, 20 Sep 2021 19:52:29 -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=@linuxfoundation.org header.s=korg header.b=dzTiI6bq; 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=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1383263AbhITSoT (ORCPT + 99 others); Mon, 20 Sep 2021 14:44:19 -0400 Received: from mail.kernel.org ([198.145.29.99]:53068 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1381472AbhITSiR (ORCPT ); Mon, 20 Sep 2021 14:38:17 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 8CB0A61ABE; Mon, 20 Sep 2021 17:29:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1632158992; bh=geIhxnlDMNExVNqhRAGBupyL0IMQjiX5t5dE0dXsZpw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=dzTiI6bqYAS1SwrTq4jetHVNWCx56p3Q4+n/Gx7AwdKsazHttXDfwDGMxhKeIYfvO PyVKAJgzW6wp7eASQ09179olZz+W9y8wwlTjy2SviisRomimFnP2CgpWR37+iV0ekE iyZtTWIPelBfAwH9HZBdi4af/7fqn41Ssoc8rgVE= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Juergen Gross , Boris Ostrovsky Subject: [PATCH 5.14 004/168] xen: reset legacy rtc flag for PV domU Date: Mon, 20 Sep 2021 18:42:22 +0200 Message-Id: <20210920163921.788481310@linuxfoundation.org> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20210920163921.633181900@linuxfoundation.org> References: <20210920163921.633181900@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: Juergen Gross commit f68aa100d815b5b4467fd1c3abbe3b99d65fd028 upstream. A Xen PV guest doesn't have a legacy RTC device, so reset the legacy RTC flag. Otherwise the following WARN splat will occur at boot: [ 1.333404] WARNING: CPU: 1 PID: 1 at /home/gross/linux/head/drivers/rtc/rtc-mc146818-lib.c:25 mc146818_get_time+0x1be/0x210 [ 1.333404] Modules linked in: [ 1.333404] CPU: 1 PID: 1 Comm: swapper/0 Tainted: G W 5.14.0-rc7-default+ #282 [ 1.333404] RIP: e030:mc146818_get_time+0x1be/0x210 [ 1.333404] Code: c0 64 01 c5 83 fd 45 89 6b 14 7f 06 83 c5 64 89 6b 14 41 83 ec 01 b8 02 00 00 00 44 89 63 10 5b 5d 41 5c 41 5d 41 5e 41 5f c3 <0f> 0b 48 c7 c7 30 0e ef 82 4c 89 e6 e8 71 2a 24 00 48 c7 c0 ff ff [ 1.333404] RSP: e02b:ffffc90040093df8 EFLAGS: 00010002 [ 1.333404] RAX: 00000000000000ff RBX: ffffc90040093e34 RCX: 0000000000000000 [ 1.333404] RDX: 0000000000000001 RSI: 0000000000000000 RDI: 000000000000000d [ 1.333404] RBP: ffffffff82ef0e30 R08: ffff888005013e60 R09: 0000000000000000 [ 1.333404] R10: ffffffff82373e9b R11: 0000000000033080 R12: 0000000000000200 [ 1.333404] R13: 0000000000000000 R14: 0000000000000002 R15: ffffffff82cdc6d4 [ 1.333404] FS: 0000000000000000(0000) GS:ffff88807d440000(0000) knlGS:0000000000000000 [ 1.333404] CS: 10000e030 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 1.333404] CR2: 0000000000000000 CR3: 000000000260a000 CR4: 0000000000050660 [ 1.333404] Call Trace: [ 1.333404] ? wakeup_sources_sysfs_init+0x30/0x30 [ 1.333404] ? rdinit_setup+0x2b/0x2b [ 1.333404] early_resume_init+0x23/0xa4 [ 1.333404] ? cn_proc_init+0x36/0x36 [ 1.333404] do_one_initcall+0x3e/0x200 [ 1.333404] kernel_init_freeable+0x232/0x28e [ 1.333404] ? rest_init+0xd0/0xd0 [ 1.333404] kernel_init+0x16/0x120 [ 1.333404] ret_from_fork+0x1f/0x30 Cc: Fixes: 8d152e7a5c7537 ("x86/rtc: Replace paravirt rtc check with platform legacy quirk") Signed-off-by: Juergen Gross Reviewed-by: Boris Ostrovsky Link: https://lore.kernel.org/r/20210903084937.19392-3-jgross@suse.com Signed-off-by: Juergen Gross Signed-off-by: Greg Kroah-Hartman --- arch/x86/xen/enlighten_pv.c | 7 +++++++ 1 file changed, 7 insertions(+) --- a/arch/x86/xen/enlighten_pv.c +++ b/arch/x86/xen/enlighten_pv.c @@ -1215,6 +1215,11 @@ static void __init xen_dom0_set_legacy_f x86_platform.legacy.rtc = 1; } +static void __init xen_domu_set_legacy_features(void) +{ + x86_platform.legacy.rtc = 0; +} + /* First C function to be called on Xen boot */ asmlinkage __visible void __init xen_start_kernel(void) { @@ -1367,6 +1372,8 @@ asmlinkage __visible void __init xen_sta add_preferred_console("xenboot", 0, NULL); if (pci_xen) x86_init.pci.arch_init = pci_xen_init; + x86_platform.set_legacy_features = + xen_domu_set_legacy_features; } else { const struct dom0_vga_console_info *info = (void *)((char *)xen_start_info +