Page MenuHomeFreeBSD

netgraph/ng_bridge: Make simple internal functions read-only
ClosedPublic

Authored by donner on Jan 13 2021, 8:22 PM.
Tags
None
Referenced Files
F134583279: D28141.id82226.diff
Mon, Nov 3, 10:18 AM
Unknown Object (File)
Sun, Nov 2, 7:09 PM
Unknown Object (File)
Sun, Nov 2, 4:06 PM
Unknown Object (File)
Sun, Nov 2, 11:51 AM
Unknown Object (File)
Tue, Oct 28, 8:52 PM
Unknown Object (File)
Mon, Oct 27, 2:32 PM
Unknown Object (File)
Sat, Oct 25, 7:12 AM
Unknown Object (File)
Fri, Oct 24, 1:33 AM

Diff Detail

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

Event Timeline

revert the idea of specialized "const pointers"

It's far that simple. I missed the difference between

  • const node_p: a constant pointer to a modifiable node.
  • struct ng_node const * : a modifiable pointer to a constant node.

Because I need immutable data structures, the latter is required.
But those structures and helper functions are defined in the central netgraph.h and ng_base.c.
Hence I have to annotate the base system with const, and also every helper function, which does not modify the data.

I think it's worth the effort, because it will ease the way write multithreaded netgraph modules and fix several still hidden race conditions.

  • Fix some formatting, line up comments.
  • Annotate helper functions to handle immutable objects.
kp added a subscriber: kp.

LGTM

This revision is now accepted and ready to land.Feb 7 2021, 8:40 AM