Skip to content

Comments

github actions: Update interdiff for bug fixes and post-rework refinement#908

Open
kerneltoast wants to merge 1 commit intomainfrom
{sultan}_gha-interdiff-20260220
Open

github actions: Update interdiff for bug fixes and post-rework refinement#908
kerneltoast wants to merge 1 commit intomainfrom
{sultan}_gha-interdiff-20260220

Conversation

@kerneltoast
Copy link
Collaborator

Here's a short summary written by Claude of what's changed in interdiff:

What's changed in interdiff --fuzzy

Bug fix: fewer false rejections when comparing patches

When comparing two patches that make identical changes, interdiff --fuzzy would sometimes incorrectly report those hunks as "REJECTED PATCH2 HUNKS - could not be compared; manual review needed." This happened because the internal hunk splitting produced sub-hunks with unbalanced context that the patch utility couldn't locate in the file. The fix ensures split hunks always have balanced context so the patch utility can match them correctly.

Also fixed a crash that could occur when a split hunk ends with an addition line.

Code cleanup

Internal data structures were reworked for correctness and efficiency (length-tracked line buffers instead of nul-terminated strings, O(1) list appends, dead code removal). No user-facing behavior changes beyond the bug fix above.


This fixes the spurious rejected hunks @PlaidCat observed in #898 (comment), so now the interdiff output for that PR looks like this:

================================================================================
*    CONTEXT DIFFERENCES - surrounding code differences between the patches    *
================================================================================

--- b/net/ceph/ceph_common.c
+++ b/net/ceph/ceph_common.c
@@ -678,5 +678,5 @@
 }
-EXPORT_SYMBOL(ceph_destroy_client);
+EXPORT_SYMBOL(ceph_reset_client_addr);
 
 /*
  * true if we have the mon map (and have thus joined the cluster)
--- b/net/ceph/debugfs.c
+++ b/net/ceph/debugfs.c
@@ -45,5 +46,5 @@
 			   ENTITY_NAME(inst->name),
-			   ceph_pr_addr(&inst->addr.in_addr));
+			   ceph_pr_addr(&inst->addr));
 	}
 	return 0;
 }

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the pinned commit hash for the interdiff tool (from kerneltoast/patchutils) used in the GitHub Actions workflow to incorporate bug fixes and post-rework refinements. The interdiff tool is used to compare patches between backported commits and their upstream counterparts. The update addresses false rejections where identical changes were incorrectly flagged as needing manual review, and fixes a crash that could occur with certain hunk patterns.

Changes:

  • Update the interdiff commit hash from d90325ceaa8835b85db56ded37cf3407377078db to b96146f12e7c39e45c7a2b62b16ab6b69871ed05 to incorporate bug fixes and code improvements

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

…ment

Here's a short summary written by Claude of what's changed in interdiff:

When comparing two patches that make identical changes, interdiff --fuzzy
would sometimes incorrectly report those hunks as rejected. This happened
because the internal hunk splitting produced sub-hunks with unbalanced
context that the patch utility couldn't locate in the file. The fix ensures
split hunks always have balanced context so the patch utility can match
them correctly.

Also fixed a crash that could occur when a split hunk ends with an
addition line.

Internal data structures were reworked for correctness and efficiency
(length-tracked line buffers instead of nul-terminated strings, O(1) list
appends, dead code removal). No user-facing behavior changes beyond the bug
fix above.
@kerneltoast kerneltoast force-pushed the {sultan}_gha-interdiff-20260220 branch from 474842d to 0b46716 Compare February 23, 2026 04:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant