From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-yx1-f45.google.com (mail-yx1-f45.google.com [74.125.224.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 735FD26B973 for ; Sun, 7 Jun 2026 16:06:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.224.45 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780848365; cv=none; b=D+HS/QCDPTpNRGSdhG3s4b2/YTp5coc7DfrtNJmbuDJnDjnmmqFWgnCT7lIpaZnQriJpaBO0+l4tGmdxtVTHIRGGBHAETOyP1aqV2wcjsDAnZ6Za8uaNdnRWiv8rxgZ8JDQ9cT0pfwAjcemHBMem3DH4IBpm/ZsyDCSsvba9yIE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780848365; c=relaxed/simple; bh=ciu99rTJR/K4pOqIhKJ2geMjCgm3UU/oATVxHm8EslQ=; h=Date:From:To:Cc:Subject:Message-ID:MIME-Version:Content-Type: Content-Disposition; b=eGzp8qXeveMtbzMA0kPWo8rMTbfFfe4iY30+Cpv76AfwRdRKdQSnnzB3tsvhasJ+vOX4iZYFKqY+6+ExW79F2xH3gB2YdXF0bZ4RqQw+xRFeniG1XKz/5CbVOHYtknDFVz4IvroV5mZrck973+CLaYj6MCd8S4sCQqtTaytKibA= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=soleen.com; spf=pass smtp.mailfrom=soleen.com; dkim=pass (2048-bit key) header.d=soleen.com header.i=@soleen.com header.b=Hh1jnz8i; arc=none smtp.client-ip=74.125.224.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=soleen.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=soleen.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=soleen.com header.i=@soleen.com header.b="Hh1jnz8i" Received: by mail-yx1-f45.google.com with SMTP id 956f58d0204a3-660456349d9so3486388d50.3 for ; Sun, 07 Jun 2026 09:06:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=soleen.com; s=google; t=1780848363; x=1781453163; darn=vger.kernel.org; h=content-disposition:mime-version:message-id:subject:cc:to:from:date :from:to:cc:subject:date:message-id:reply-to; bh=KygAnOo/dmpBJQ+i2VrBBc9LJ5ZQpG2OVVfBe430lG8=; b=Hh1jnz8iQ4jENxDz3RZwysEcB+2Mv5QPZywbGZ0TX9RDnxSMVraY0O1xBOtJfeWCq+ O7rYjdJVVtwh/z3KOfhJnd3i53AZAs5zS+5kUgP8MKaNE+7U0SMIbpPbJ3/c3IR3R9Jd GV15DYsb8s43R915wWhtr2QAKX2D+sIrvRWeJhKv1orBIVFly3/M5fkFUHjx7nuxjCVe Z+yyCMU3DhAEmMolGUsniKOZnmq/thy8Hs8S7BxQlK05GcRwrzDSxxRhFW1fKKHE05Oa GKG/+kmhDo3FYfxp4/9DtCjOq++toOBe2qX59EzJjwNgyHPY4y8QDl2EH19kwD9EJZWY aGcg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780848363; x=1781453163; h=content-disposition:mime-version:message-id:subject:cc:to:from:date :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=KygAnOo/dmpBJQ+i2VrBBc9LJ5ZQpG2OVVfBe430lG8=; b=T12jXKuYYtSf4OwN3b4AzSgXb3uAIrnXnlo8EoB0kVsyZqjNQ1X/c/letq8k/PNj+s QteMsvrt+aBQCcQZU4N6WxDZCpGmDqpZIWDglm7158r48v9PByMFn863/n3sraIGmMtN /IyPrUgSvBLdjXxSbz7AOVZ4GApcazpf72XNY4nBpogCVhx2ZuFKX8Bz101jbJi7yFCu u8CUPwerUl6bTFqtV1gAxtLv6bN+v845USsrThXf7SeZDuswli3b+j2PQu7tkNpPgKT3 5CswNMRB6PBOj5vJr01EkOIyvV66fEwTFO2ZUtDZu68VPsnD3Z+DBzgenJMWvViLV0Fb P07Q== X-Forwarded-Encrypted: i=1; AFNElJ8MdKAmUUj97I9F+D/ic79rHlAfMVqgDpEcrVORE6O9yYDs7iHG+EmLjgawuYl9c0KvwrTDNbRZpDtv074=@vger.kernel.org X-Gm-Message-State: AOJu0Yza0kwuDxKg1oY+HTyVNoXCpahDc5QVlvQf4GcWCNodseasZxtu hw1wlyEZyrFsZAfpZ9SkPX6JHtusoQzgPZmh+1PvGaUNVLkrHXI1vHXnmY57zUK3j30= X-Gm-Gg: Acq92OEw0EYueePf2glS7gvtOPfBi/PgFRsQKFj7+9sYapeoTIir4cjoCrj0RIbZorc lCNnihA5ZvWhCNE0jKQQcEiuInvPoJnN0qCtUxwSr35U4e+j5mX6kzd8awSTfkNAvmxKQiThhJc hjq3kC1hTXOU9SwzeIFfcE0TtBcwgLpzMbG00yEId0OWS1jctmxI+Prm4vfrLi5Xb7cOB6ktyX8 U5eOtFqXmo/dbDOWdg93K6L1gykQMrKmsEO8i2nK8p0n2ZnHyvGjn6UXBZ3Tma/FBauba3jFoRd 9Z7mUGnffzMsQGYHLerxjDAOaGAAOdfjTdYK6qsF70xr7UAYskFvsxlm1CJsb8fXF+8+CoWkYJ4 NDY5u65zSqbHtLFLxfeMZMt/5pWtCDHiftK/NQ6oY49pIhz5tVzHBuHTcgKTbvTn2kyZBUINT4x hiI8UdKT5UXKabnLMClBPG8LoLLd56pN6Yf4X4E68jvx5YDBmz0dQOuiN+3M+kIp6evj8Xfsy5z HZAYwBIyrfpIoEhFW8rEREEXFcbYzn5HnkXIjjQio22uIJhMwGuNuM= X-Received: by 2002:a05:690e:1908:b0:650:1cdb:5f57 with SMTP id 956f58d0204a3-66106e0097amr10641440d50.5.1780848363355; Sun, 07 Jun 2026 09:06:03 -0700 (PDT) Received: from google.com (212.255.145.34.bc.googleusercontent.com. [34.145.255.212]) by smtp.gmail.com with ESMTPSA id 956f58d0204a3-660d5f3b494sm8243034d50.2.2026.06.07.09.06.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 07 Jun 2026 09:06:02 -0700 (PDT) Date: Sun, 7 Jun 2026 12:06:01 -0400 From: Pasha Tatashin To: Alexander Graf , "Andersen, Tycho" , Anthony Yznaga , Baolu Lu , David Hildenbrand , David Matlack , "Heyne, Maximillian" , James Gowans , Jason Gunthorpe , Mike Rapoport , Pankaj Gupta , Pasha Tatashin , Pratyush Yadav , Praveen Kumar , Vipin Sharma , Vishal Annapurve , "Woodhouse, David" , Luca Boccassi , Samiullah Khawaja , Jork Loeser Cc: linux-mm@kvack.org, kexec@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [Hypervisor Live Update] Notes from June 1, 2026 Message-ID: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi everybody, Here are the notes from the Hypervisor Live Update call that happened on Monday, June 1. Thanks to everybody who was involved! These notes are intended to bring people up to speed who could not attend the call as well as keep the conversation going in between meetings. ----->o----- LPC 2026 Call for Proposals The Call for Proposals for the Live Update Microconference at LPC 2026 is officially open. Please submit your topics and proposals before the deadline on July 24th. https://lore.kernel.org/all/ahcc3Qyuy7Oy03Iq@plex ----->o----- KHO Xarray Implementation & Core Data Structures Pratyush is collaborating with Mike on a KHO fallback allocation strategy for memblock. Alongside this, Pratyush is designing a serialized, sparse "KHO Xarray" data structure to lift current mapping restrictions across all three memfd types (shared, hugeTLB, and guest_memfd). By allowing runtime page faults and allocation tracking post-preservation, this avoids flat vmalloc array scalability limitations. Potential wider use cases for the KHO Xarray were discussed: - MSHV sparse bitmap tracking. - IOMMU page table tracking (Samiullah will evaluate domain/device tree association fit). - PCI/VFIO sparse tracking via Bus/Device/Function (BDF) key spaces. Slab/Cache Preservation vs. Linked Blocks: David Matlack noted that using an Xarray page per PCI device would be too expensive given their small struct sizes. Pratyush suggested preserving slab caches via dedicated kmem_cache flags to manage small, arbitrary allocations. As an immediate alternative, Pasha's ongoing LUO limits refactor series introduces a highly compact block-linked list structure optimized for runtime file/session tracking. David Matlack will review if this fits the PCI core tracking requirements. ----->o----- LUO Limit Removal & PCI Core Status LUO Refactor: Pasha is updating the LUO series to address Pratyush's comments (primarily renaming iterator functions) and plans to send out v2 shortly. Given that LUO is not yet in fleet production, the group agreed to fast-track this into the upcoming merge window to align with systemd's fdstore integration. PCI Core v6: David Matlack sent out v6 incorporating two critical fixes spotted by Sachiko regarding get/put semantics and double-retrieval failures. Review tags from the live update team are needed to help secure Bjorn's Ack once he returns from vacation next week. ----->o----- IOMMU Persistence & Process Memory IOMMU v3: Samiullah is addressing recent review feedback on the IOMMU persistence series and intends to post v3 by the end of this week. The associated development roadmap document has received positive stakeholder attention. CRIU & vm_splice: Maximilian's investigation into optimizing vm_splice for copy-less data preservation remains deferred but remains in the pipeline, with potential future collaboration with Google's tmpfs splice efforts. ----->o----- guest_memfd Enlightenment & VMM Documentation Tarun debriefed the community on his upstream presentation regarding the initial guest_memfd preservation patch series (currently covering fully shared mappings with page-sized folios). Key design and architecture alignments include: - VM File Association: guest_memfd requires an active 'struct kvm' context to be retrieved. VMMs must preserve the parent VM file alongside guest_memfd, using LUO tokens to re-link them on the incoming kernel path. This sets the stage for future private mapping/secure EPT table tracking. - Relaxed Fault Logic: The group agreed to drop strict upfront pre-fault checks. Instead, standard runtime page-fault semantics will apply. If a guest page fault occurs post-preservation, it will bubble up via standard KVM_RUN ioctl exits to the VMM, which can safely pause vCPUs and retry the fault post-kexec. - Centralized VMM Documentation: Pasha and David Matlack proposed creating a centralized guide under live_update/vmm detailing the overall live update flow, timing constraints, and subsystem requirements to assist external QEMU and VMM developers. ----->o----- Next meeting will be on Monday, June 15 at 8am PDT (UTC-7), everybody is welcome: https://meet.google.com/rjn-dmzu-hgq Note: I am going to be traveling on June 15th, David Matlack is going to be hosting it. Topics for the next meeting: - Presentation of VFIO roadmap (Vipin and David Matlack) - Status of KHO Xarray development and slab preservation feasibility - Review of PCI core changes v7 and upstream merge coordination - IOMMU persistence v3 review feedback - Detailed review of guest_memfd v2 and VMM interaction documentation - Review and coordination of LPC 2026 Microconference topic submissions - later: KHO support for Confidential VMs including page table preservation and pinning - later: versioning support for luod to negotiate - later: KHO enlightenment for ASI - later: update on PCI preservation series and next steps - later: testing methodology to allow downstream consumers to qualify that live update works from one version to another - later: reducing blackout window during live update, including deferred struct page initialization Please let me know if you'd like to propose additional topics for discussion, thank you!