Page MenuHomeFreeBSD

gif: Fix mbuf alignment manipulation
AbandonedPublic

Authored by markj on Aug 4 2022, 5:14 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Apr 16, 7:24 PM
Unknown Object (File)
Dec 22 2023, 9:34 PM
Unknown Object (File)
Dec 15 2023, 4:33 AM
Unknown Object (File)
Nov 29 2023, 1:16 PM
Unknown Object (File)
Aug 28 2023, 9:40 AM
Unknown Object (File)
Aug 23 2023, 8:58 PM
Unknown Object (File)
Jul 6 2023, 1:02 PM
Unknown Object (File)
Jul 2 2023, 9:57 AM

Details

Reviewers
None
Group Reviewers
network
Summary

The output routines prepend an IP header with some extra wiggle room on
platforms which we declare to require strict alignment (i.e., everything
except x86). When doing so we may end up cutting off that wiggle room,
which involves updating the mbuf length. In this case we must update
the mbuf header as well.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 46746
Build 43635: arc lint + arc unit

Event Timeline

markj requested review of this revision.Aug 4 2022, 5:14 PM

but I got distracted by if_gif being broken on aarch64 (and one of the bridge tests uses gif)

@kp You might be interested in this ;)

Ah, yes. I came up with this earlier, because it breaks the if_bridge_test:gif test, but even with that fix it's still broken (it no longer panics with this patch, but the test case still fails. if_gif generates incorrect packets for the '-s 2000' ping test).

My current version just deletes the code entirely, because it's both wrong and seemingly not actually useful.