sg_logs: Fix parameter lengths in show_data_compression_page #50
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.
For the parameters in
show_data_compression_page
the lengthpl
is initialized frombp[3]
and checked for0 || > 8
, but the value passed tosg_get_unaligned_be
is off-by-four. So all values in this page were effectively truncated to 0.Output from
sg_logs /dev/sg0 -p 0x1b
beforeand after fix
I'm still playing around with emulation code and not an actual device, yes, so those are dummy values.
The unknown parameter was injected for the 8 byte length, the values in the page covered 1/2/4 already. I think the data I'm generating is correct, but :)
(Similar-ish code in that file sometimes prefers
pl + 4
but made for a more invasive change).