Repository navigation
Rebase edera/mainline onto master @ 05441d697f7f - #86
Closed
edera-rebase-app[bot] wants to merge 10000 commits into
Closed
edera-rebase-app[bot] wants to merge 10000 commits into
edera-rebase-app[bot] wants to merge 10000 commits into
Conversation
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Nightly rebase of
edera/mainline(8f315d39b605) ontomaster(05441d697f7f), driven by Claude. Not pushed automatically because the checker found drift and Claude's report asks for a decision. Run log.Important
Do not use the merge button: this branch replaces
edera/mainlinerather than merging into it. Approve the pull request to land it; the land workflow force-pushesedera/mainlineto the approved head, pinned to8f315d39b605, and keeps a backup.Independent checks
Builds: success (x86_64 vmlinux on the Edera host config and arm64 vmlinux, both with the Edera features built in; per-build results in the run).
8f315d39b605a726ab2b6103864c07de0c7d05441d697f7fCommits whose hunk context moved (own +/- lines identical)
ea62ac9f1b0f iommu/xen: Add Xen PV-IOMMU driver→8eb1463d84bdbd1c0dba57c3 sysctl: wire up PaX softmode setting→6d236746bd06849ed61740ea use maximum supported mmap rnd entropy by default→540fc3e8147c5b1ff5bbc8cb 9p/xen: carry the 9P session across a restore→76c211cb8768Commits lost, added, or whose own +/- lines changed
f492e4d0cb26 9p/xen: reconnect to the backend on resume29e1bfa11fd3 9p/xen: reconnect to the backend on resumeDrift (changed lines: upstream delta vs. actual change)
Claude's report
Summary
Rebased
edera/mainline(8f315d39b605) onto torvaldsmaster05441d697f7f(v7.2-rc5-41534-g05441d697f7f) from merge base864c07de0c7d(v7.2-rc5-26646-g864c07de0c7d). That is 14082 non-merge upstream commits (merge window). All 110 downstream commits were replayed ontorebase-result(new tipa726ab2b6103). Four conflicts were resolved:kernel/sysctl.c,arch/Kconfig, and two innet/9p/trans_xen.c. No commit was dropped, squashed, reordered or reworded, and no build fixes were needed. x86_64 and arm64vmlinuxboth build.verify-upstream-rebase.shreports "commit set changed" and "drift". I expected both, and all of it comes from the resolutions below: base and linearity pass, 110 commits before and 110 after, and only29e1bfa11fd3 9p/xen: reconnect to the backend on resumehas different +/- lines. Two upstream changes reach downstream features without conflicting, so they are listed for a decision.Needs a decision
228e21764b38 Drivers: hv: Run VMBus kexec cleanup from syscore shutdownmovedhv_kexec_handler()(vmbus_initiate_unload()pluscpuhp_remove_state(hyperv_cpuhp_online), which runshv_synic_cleanup()on every CPU) out of x86hv_machine_shutdown()and into a VMBus syscore.shutdowncallback. That callback runs wheneverkexec_is_in_progress(). In the nested-on-Xen dom0 mode (hyperv_nested_on_xen),ms_hyperv_init_platform()never runs, because the detected hypervisor is Xen. Somachine_ops.shutdown = hv_machine_shutdownwas never installed, and VMBus was never unloaded on kexec. After this rebase it will be, on a Linux-sidekernel_kexec(), through the downstream SynIC host-frame and Xen VIRQ bridge setup.VIRQ_HYPERV_VMBUSbridge, andhyperv_remove_xen_vmbus_irq()is not called on this path.kernel_kexec(), the callback is not reached and this does not matter.241d46901226 9p: reject RERROR/RLERROR with zero errcodecloses a hole inp9_check_errors()(net/9p/client.c). The downstream session-transfer control path innet/9p/trans_xen.c,xen_9pfs_front_ctl()(from9p/xen: carry the 9P session across a restore), parsesRLERRORitself and returns-(int)ecode. Withecode == 0it returns 0, which callers treat as success:lenunderflows,kvmallocthen fails with-ENOMEMand the saved session is discarded.p9_check_errors().ecode == 0to-EPROTOinxen_9pfs_front_ctl().Conflicts resolved
sysctl: wire up PaX softmode setting,kernel/sysctl.c.443bea2f71c5 sysctl: consolidate CONFIG_SYSCTL into a single block in kernel/sysctl.c(andacd19f2c56f2, which dropped the inner#ifdef CONFIG_SYSCTL). Upstream movedsysctl_subsys_tableandsysctl_init_bases()into the firstCONFIG_SYSCTLblock and added aproc_do_static_key()stub to the#elsebranch.pax_table(#ifdef CONFIG_OPENPAX_SOFTMODE) goes beforesysctl_subsys_tableat its new location, and theregister_sysctl_init("kernel/pax", pax_table)call goes into the movedsysctl_init_bases(). The added lines are identical to the original; only their position changed.use maximum supported mmap rnd entropy by default,arch/Kconfig.8cdae75cebe0 arch/Kconfig: fix dead conditions by removing dead options, which deletedARCH_MMAP_RND_BITS_DEFAULTandARCH_MMAP_RND_COMPAT_BITS_DEFAULTand their always-falsedefault ... if ...lines.default ARCH_MMAP_RND_BITS_MIN→default ARCH_MMAP_RND_BITS_MAX, and the same for COMPAT). The removed lines never applied (an int used as a condition is always false), so the resolved value is the same as before.arch/arm64/Kconfig(ac9de62b1902, already in the old base). That is unchanged from the old tip.9p/xen: reconnect to the backend on resume,net/9p/trans_xen.c.b3d07d64832c 9p/xen: Use array for data rings:ringsbecame a fixedrings[XEN_9PFS_NUM_RINGS]member, and thekzalloc_objs/kfree(priv->rings)calls were removed.7b6f2e3c29fb 9p/xen: drain response work after unbinding IRQ(Fixes:, Cc: stable):cancel_work_sync()now runs afterunbind_from_irqhandler().if (priv->rings)guard.xen_9pfs_front_free()now callsxen_9pfs_front_free_rings()unconditionally.cancel_work_sync()) inside the downstreamxen_9pfs_front_free_rings(). That function is also what the resume/disconnect path uses, so that path gets the fix too.ring_order,rings_semandconnected, and theinit_rwsem()/ring_ordersetup inxen_9pfs_front_init().ringsbeing a pointer: it re-allocates the per-ring resources into the same array. This is the one commit whose own +/- lines changed, because its original diff contained thekzalloc_objs/kfreelines and the oldcancel_work_sync()position.9p/xen: carry the 9P session across a restore,net/9p/trans_xen.c.9b4cf60c6b73 9p/xen: validate the response size from the backend(Fixes:, Cc: stable).b3d07d64832cagain.h.size < sizeof(h) || h.size > queuedcheck first inp9_xen_response(), with the downstream P9_NOTAG control-reply branch after it. A malformed control reply now hits the check before the code doescons += h.size. In that case the control waiter gets-ETIMEDOUTthrough its existingwait_for_completion_timeout().kzalloc_objs/kfree(priv->rings)lines, and kept itsINIT_LIST_HEAD(&priv->session),init_completion(&priv->ctl_done)andxen_9pfs_front_session_free()additions.priv->ringsuses (ring == priv->rings,XEN_9PFS_RING_SIZE(priv->rings)) work unchanged with the array, which decays to&priv->rings[0].Dropped downstream commits
None.
Build fixes
None.
Upstream commits that meet the series
Fixes (Fixes:, Cc: stable, or a fix by description) and my reading of the final tree:
7b6f2e3c29fb 9p/xen: drain response work after unbinding IRQ: intact.xen_9pfs_front_free_rings()unbinds the IRQ, then runscancel_work_sync(), then frees. The downstream disconnect path (schedule_work+flush_workunderrings_sem, thenfree_rings) goes through the same function.9b4cf60c6b73 9p/xen: validate the response size from the backend: intact, and it runs before the downstream control-reply branch (see conflicts).4d183e6f1532 9p/xen: fix refcount leak in p9_xen_response() on wrong tag: intact (p9_req_put()in the wrong-tag branch).241d46901226 9p: reject RERROR/RLERROR with zero errcode: intact inp9_check_errors(). The downstream additions tonet/9p/client.care pure additions. The downstream Xen control path has its own copy of the issue (see Needs a decision).2acd800de882 9p: fix caches_show() out-of-bounds write: intact. Downstream only adds the separatefeatures_showattribute.7fb9bd365905 9p: fix privport option setting wrong RDMA field: intact. Downstream adds onlyOpt_tag.0f4a9e682f7f xattr: always invoke cap_convert_nscap() for security.capability writes: intact. Downstream adds onlypax_getxattr(), which reads auser.xattr.1c8f6308e557 iommu/dma: Catch scatterlist length overflows,fdd81f15fc43 iommu/dma: Clean up redundant MSI cookie check: intact. Downstream only adds thexen_iommu_manages_iova()check iniova_reserve_iommu_regions().228e21764b38 Drivers: hv: Run VMBus kexec cleanup from syscore shutdown: intact. It reaches the nested-on-Xen mode semantically (see Needs a decision).dd57772e36f7 Drivers: hv: vmbus: Check ACPI companion before use: intact. The downstream hunks invmbus_bus_init()/vmbus_exit()are elsewhere.278b2abf660a init/bootconfig: pass init arguments in documented order,51e766bcd35e init/main: fix false-positive kernel panic on environment variable overwrite,b82ed0e3a1da init/main: fix off-by-one in argv_init cleanup: intact. Downstream only addspax_softmodeand its__setup.68cb098eadda mm/vma: avoid broken uffd merge on mremap,7135a05838e8 mm/vma: avoid spurious write locks when mm->mm_lock_seq overflows,dc0b17144d62 mm/vma: don't remove VMA from rmap if pgoff unchanged,5728d3523f12 memblock: reject non-page-aligned reserve_mem regions,8bb0279930cc 9p: skip intermediate directory entry name copy in p9dirent_read(): none of them touch the downstream lines. The downstream changes inmm/are limited tomap_deny_write_exec(),brk(),arch_randomize_brk(),create_init_stack_vma()and one include, and upstream did not change those functions' contracts.6eecb67b69af xen/grant-table: stop setting PG_private on pages for grant mapping: downstreamgnttab_alloc_pages_node()goes throughgnttab_pages_set_private()/gnttab_pages_clear_private(), so it picks up the new behaviour. A tree-wide grep finds noPagePrivate/SetPagePrivate/ClearPagePrivateuse indrivers/xenorarch/x86/xen.Semantic checks I ruled out:
2690d4156b51 iommu/hyperv: Add para-virtualized IOMMU support for Hyper-V guest: it hooksx86_init.iommu.iommu_initonly fromhyperv_init(). The nested-on-Xen path uses its own init (arch/x86/hyperv/hv_init.c, called fromxen_hyperv_init()), so it cannot activate next to the Xen PV-IOMMU.118bdac10546 Drivers: hv: Add logical device ID registry for vPCI devices:pci-hypervnow registers each bus in an rhashtable thathv_common_init()sets up. The nested-on-Xen init callshv_common_init(), so the table is there.1ae140d0f272 iommu: Make iommu-dma helpers private:xen-iommu.calready includesiommu-priv.h, and the build passes.dma-iommu.cnow includesiommu-priv.htwice (once from upstream, once from downstreamiommu/dma: Don't reserve PCI windows under a paravirtual IOMMU). That is harmless because the header is guarded, and I left it to keep the downstream commit unchanged.8cdae75cebe0 arch/Kconfig: fix dead conditions by removing dead options: no reference to the removed symbols remains in the tree or inkernel-build.sh.Other upstream commits that touch shared files (refactors or features, no fix tag; no interaction found beyond the above):
9eb9b583ea35 9p: remove duplicated assignment in v9fs_fill_super(),33625427a382 net/9p: add vsock transport(a newp9_trans_module; the downstreamshare_clientfield defaults to false for it),5852cdf0006f net/9p: fix typos in comments,14a5c975b138,38564710f443,6a9ef02c60bf,72a993449cb0,44debd840ec9,c911e7ebebf5,94c86564538e,88d77002e1a1,9201d0f5b9d5,7fdbc26b69c0,b7b4d8f37a4f,4852f3421456,9cae38dc11da,86a779c53204,f85eb0656c40,e59c9a971a9f,4b019e056f6c,35e340a47888,47e725702b0b,69d38c792c53,2e83e2ce34ff,c2d4ccfbba3f(mm/vma and arch/Kconfig),56fb075b77f8 mshv: Redesign hypervisor memory deposit logic,d0ec95a8a4e7 hv_netvsc: Advertise the SR-IOV capability for CoCo VMs,28d5df7b7274,537ec2b15fdd,681f3b68f435(KVM docs and Kconfig),0bf031ba8c49,42eed9bb9ca4(iommu Kconfig/Makefile),641a9b9cc697,95d2fec40c48(dma-mapping),084100a1b579,aabe6e1b36ce,677f83795fdf,958c01049e0a,10823ced2f18,8ebd2eb87f50(init/bootconfig/kho),443bea2f71c5,acd19f2c56f2,242bac52294e,d08ab285b096,2bfbb09b505c(sysctl;pax_tableis a scalarproc_dointvecentry, so the vector-handling changes do not affect it),bbe5d3b3d402,f000a06da2a5,abaa0835b4f3,264d8fd2794f,799203afd298,e3e7a85730a4(kernel-parameters.txt).Builds
CONFIG_XEN_IOMMU,CONFIG_HYPERV,CONFIG_HYPERV_PVIOMMU,CONFIG_NET_9P_XENandCONFIG_OPENPAX_SOFTMODEall=y;net/9p/trans_xen.oandkernel/sysctl.owere built.net/9p/trans_xen.owas built).