asm: add .WithMetadata() for conveniently replacing individual Instructions#832
Merged
ti-mo merged 1 commit intocilium:masterfrom Nov 2, 2022
Merged
Conversation
…ctions When replacing an Instruction in an Instructions parsed from an ELF, preserving Metadata is important, so this patch adds a convenient method for in-line assignment of Metadata from other instructions. With func_info and line_info marshaling being driven by Metadata, accidentally stripping a func_info from the first Instruction will result in the following verifier error: `invalid argument: missing bpf_line_info for func#0` The verifier rejects line_infos for subprogs that don't start with a func_info. Signed-off-by: Timo Beckers <timo@isovalent.com>
rgo3
approved these changes
Oct 31, 2022
ac04dc8 to
d0349fe
Compare
florianl
approved these changes
Nov 1, 2022
Contributor
florianl
left a comment
There was a problem hiding this comment.
great idea 👍 works fine here :)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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.
When replacing an Instruction in an Instructions parsed from an ELF, preserving Metadata is important, so this patch adds a convenient method for in-line assignment of Metadata from other instructions.
With func_info and line_info marshaling being driven by Metadata, accidentally stripping a func_info from the first Instruction will result in the following verifier error:
invalid argument: missing bpf_line_info for func#0The verifier rejects line_infos for subprogs that don't start with a func_info.
cc @rgo3