Subject: Improved Rust hunk headers

From: "Benno Lossin" <[email-masked]>
Date: Thu, 08 Jan 2026 13:38:35 +0100

Hey everyone,

Recently, while looking at a Rust patch [1] for the Linux kernel, I had
an idea to improve the hunk header for Rust code. The patch's hunk
header is the function defined above the addition. To me it doesn't
provide much value in giving context; it has been a while since I last
looked at that file. It would be much more useful in this case to show
the context `pub unsafe trait FromBytes {` instead. This is because the
function that's being added is added to that trait.

In the general case it still is useful to show the function context when
the contents of a function are changed. Ideally, it would be possible to
show both the `impl` block and the function signature.

I have no knowledge of the inner workings of git, so this might be a
tall ask. But would it be possible to implement having multi-line hunk
headers and have a more advanced selection algorithm? AFAIK at the
moment a regex is used to extract the header, I think that would still
be sufficient for this case, if the `impl` block header is searched for
after the function signature.

My current solution to reviewing a patch like this is either opening the
file and scrolling to the change location. This isn't possible if
earlier patches in a series already changed the file. In that case the
only option is to create a new worktree and apply the patch series. It
would be great if I didn't have to do this for simple things.

Cheers,
Benno

[1]: https://lore.kernel.org/all/[email-masked]/