Received: by 2002:a05:6520:4d:b0:139:a872:a4c9 with SMTP id i13csp2563223lkm; Mon, 20 Sep 2021 18:48:38 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwECoZ+RPsIdOuehahkYysAcY83nxEsLtyd99hOx+k6TRiLzq6tl3iW86FBswQ0kieYb7FF X-Received: by 2002:a02:1688:: with SMTP id a130mr21974355jaa.79.1632188840997; Mon, 20 Sep 2021 18:47:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1632188840; cv=none; d=google.com; s=arc-20160816; b=sgrMnxTeh/EV7fGJXoO4c8Ksbxaiz+ExrXCDmV4eR8y3qCSaGV+QX9lucz76x0i4UF 5SY1UzIpCK+iVo4+cmUU1O7UXRbMqrY3AdH0RD3mHiPKhNa80zf659jXUV+5A5JDtffn 85sHbYNfqnl1q8mVwrjIcoYmrNGFXyZHgHR6PoYyh6oUC3ua/lAKJ7cO2kcLJ32+gdrw TiN+viK7KbX7JfCfiIQtbuX0DfIxWLYuM8c/IwU6zYQjBoM+92XbbZqijXEmeLDD9/WC EkGc86AnvMaeX8QUQ2vvswUwNFSKU2XOqnrjFh2tn62WMl9aovvNfi3cfyPAlJKqJ723 ywEA== 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=9vL2SehehHcZsFNfbZSBizdRCD2XYED/LgH+TpEmWsw=; b=rtIKnIoFn0W00ZsOCx0MH6m78r4GJiRqVoA3U1D2A0809PwI8UqDirS7SeT6aLqQ0e B5BlUFV7KwjBapvVwsgQr8eU/9J3cGP7B3DBmvoQaTxOTuWpm813mmH1iMA14/YcIcVQ cIJP1Gn3PnXCezoFJeboKeCLo9l9kezJR4GKqQd7bLFCtjycBjHLUKKh246HzZ1BJ/AX JGyjG7AadkjU2dhYq+IDVF0GVrC8MWehii+3PDC9P5jbNfpfO55zp9QwXm396h1fZjVc p9fUbVliUsMdgBAuRspwHTcSAU/oad2+ghIiiSgcS6CZnS0cnfciHRDoLLr0dX+AX2FE GkLQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=klE94abT; 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 s11si18232094ilu.95.2021.09.20.18.47.09; Mon, 20 Sep 2021 18:47:20 -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=klE94abT; 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 S1347853AbhITRa6 (ORCPT + 99 others); Mon, 20 Sep 2021 13:30:58 -0400 Received: from mail.kernel.org ([198.145.29.99]:56130 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1350321AbhITR2J (ORCPT ); Mon, 20 Sep 2021 13:28:09 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id BD7E261AAC; Mon, 20 Sep 2021 17:03:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1632157398; bh=R6JsaxzHS3n+4oKo8hy8SgXPN/CtAdobzGO7SI6r+Ek=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=klE94abTzzFXkDPBqec/IQXmMtUgglnhclGh+yRtPl2p4XDlEC3aNsp3uPiLti77H uTI2DH8gebpdRRUCFVr+ToeybFV+NOECR0bYuRNfrryJuNvsRZkM4ZVax5rdAJbuLM 2YZb7nPwrIYbWnBdF0sgAfMPpFlR5/co4aQIjcIQ= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Juergen Gross , Boris Ostrovsky Subject: [PATCH 4.14 191/217] xen: reset legacy rtc flag for PV domU Date: Mon, 20 Sep 2021 18:43:32 +0200 Message-Id: <20210920163931.107421685@linuxfoundation.org> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20210920163924.591371269@linuxfoundation.org> References: <20210920163924.591371269@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 @@ -1214,6 +1214,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) { @@ -1375,6 +1380,8 @@ asmlinkage __visible void __init xen_sta add_preferred_console("hvc", 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 +