[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v10 02/13] xen/arm: gic-v2: Implement GIC suspend/resume functions
- To: Mykola Kvach <xakep.amatop@xxxxxxxxx>
- From: Luca Fancellu <Luca.Fancellu@xxxxxxx>
- Date: Thu, 28 May 2026 10:27:59 +0000
- Accept-language: en-GB, en-US
- Arc-authentication-results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=gmail.com smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com])
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none
- Arc-message-signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=fLJHdgtBPP5p5Su7M3tbMnf/2rHNHjwaKDLqNNThezA=; b=gEfXSOFMwHttACYU06Oz6g0B8HvETTRfmagsxwVLCVwP5SLyyA3OzlEokKuCyU+BaDREmyNrdIwn2Mnx9hwzUjc7g2QugX8fq3wFQWs6tB814uktDnqQ9xcrrrCfo6DKVwwxdBvIM1mthTRaWL6PoMaw3YqAvXxOh6hAnjnPNSyvma6YpoUYWScdchXVqcDA6EtLjDB1GdqCqCi9njNnpj29MgduXWH+/BC4XOp/t85cwYEW2PTAZVlTajT06mwCpT5j6KW5D44BdFH5HzIFUObPD6lMfx4RLzGVavbGUKBwYxc4bILF5l0Gq/YZW07Rt/cuBgbgUoKc4+HYI+E4Jg==
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=fLJHdgtBPP5p5Su7M3tbMnf/2rHNHjwaKDLqNNThezA=; b=V3BK55hmpFMrgQBpSNbPa2bT/He9hQVJvqfQ66OkYtbqjSo3bFPUqFDM4TyW7hCjSPpZnNieagPoK+SeifjXCXEAJg3Hnf0zZOsmJq2AjJAt0kL2wb6kgpjlq3qzJX2aqIVT+LglOi+0QloTr/qVdn+BsaOckb/diMT8Nxd2o4Klmi1umgPIOzj4iCGVcBiQx2UCWx07WdUt6xeZQDEIQOc+PYf2SNROaWsvzUkd22OtoK8sYAie4zDQORC9Hw7kRR6sU3lmCYMRzh4dA8Hcyo+rPi45k/74nlRlju0gt30TOlsLoHiBjqjFGeE+j8fdXnV3GCa6tZjYGnCAF33ZYQ==
- Arc-seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=f3WXVKrwNM7p2lwJof5uXEd9QmAER9YWPWIHrnWKmLzi8LWP0EWm3cVbT3gthiQWYc/qAQiFmiRGgTi99qoXr5Gn5Irid3rM3VNNA+BFktO6BFoR+wCWc9zKY0KSXdLOiroz41vXnJDqVnajCJuDMRm3L0GMAhhaaijoKZiil3+HBErRLty8oR4Pv7jVCr/D9cxsXdYLnfjvnCCW/WqmRLk/BMLkTRpz0I5oZ9CsFdKXvYNbxTzsMUWfDYwc21uG91nAw03YCccH/DWebrELbifcRANql+M6GUbYk/ae02g0YLk28E9qvDwX0ZLqtMn8hbGaWnpT17RIqjkPJvNmOQ==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ZghzT3y69586wzbTvWIy1syUGoqKWqNYBPjBFig58ZAZWTEBk8GWVBo42FnJhCoV1Xc7BZ6st1L8xZUAHsLluAD7KRoOHDPoZUuUgk6JMW9SAjY/kl+0JeLkkgX/9DMROD9NOInKOilVmmxR4gafDmZaZm9Yq3NP9pgO7Os/LbefLTAem9pWXp5f3XM0NBLIyaOuDyQcPIxxNf4NcktIJuH5QCH2cLLqrlAHa1eCSSgsaMh086acTTMYbsDIncCTYKUz7ApLOeuwCwXZ1mGdDjDfukeewHIjss4zDOf2tfmhC9SoLsznbcSHzBlw14YD3Kh7u1TmOW9uCtp2z3U5GQ==
- Authentication-results: eu.smtp.expurgate.cloud; dkim=pass header.s=selector1 header.d=arm.com header.i="@arm.com" header.h="From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck"; dkim=pass header.s=selector1 header.d=arm.com header.i="@arm.com" header.h="From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck"
- Authentication-results-original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com;
- Cc: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Mykola Kvach <mykola_kvach@xxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Bertrand Marquis <Bertrand.Marquis@xxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>
- Delivery-date: Thu, 28 May 2026 10:29:18 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
- Nodisclaimer: true
- Thread-index: AQHc6UoE70SYZf5YZEqpY7ivb9NizbYjRpeA
- Thread-topic: [PATCH v10 02/13] xen/arm: gic-v2: Implement GIC suspend/resume functions
Hi Mykola,
> On 21 May 2026, at 18:45, Mykola Kvach <xakep.amatop@xxxxxxxxx> wrote:
>
> From: Mirela Simonovic <mirela.simonovic@xxxxxxxxxx>
>
> System suspend may lead to a state where GIC would be powered down.
> Therefore, Xen should save/restore the context of GIC on suspend/resume.
>
> Note that the context consists of states of registers which are
> controlled by the hypervisor. Other GIC registers which are accessible
> by guests are saved/restored on context switch.
>
> Transient physical SGI pending state (GICD_CPENDSGIRn/GICD_SPENDSGIRn)
> is intentionally excluded. CPU-interface active-priority state is also
> not restored across suspend/resume. Xen reaches the final suspend path
> at a quiescent point, so there is no active-priority execution context
> to replay after resume. Enforce this with a runtime check after
> disabling the CPU interface: if any implemented GICC_APRn word is still
> non-zero, restore GICC_CTLR and abort suspend with -EBUSY.
>
> This does not apply to distributor active state. With GICv2 EOImode==1,
> EOIR only drops the interrupt priority; final deactivation is a separate
> step. For guest-routed interrupts, Xen can have already EOIed the physical
> IRQ while deactivation is still pending on the vGIC/GICV path. Therefore
> GICD_ISACTIVER is preserved as architectural in-flight interrupt state.
>
> Signed-off-by: Mirela Simonovic <mirela.simonovic@xxxxxxxxxx>
> Signed-off-by: Saeed Nowshadi <saeed.nowshadi@xxxxxxxxxx>
> Signed-off-by: Mykyta Poturai <mykyta_poturai@xxxxxxxx>
> Signed-off-by: Mykola Kvach <mykola_kvach@xxxxxxxx>
> ---
looks ok to me:
Reviewed-by: Luca Fancellu <luca.fancellu@xxxxxxx>
Cheers,
Luca
|