Page MenuHomeFreeBSD

Transition from rtrequest1_fib() to rib_action()
ClosedPublic

Authored by nc on Jul 2 2020, 4:42 AM.

Details

Summary

Remove all variations of rtrequest <rtrequest1_fib, rtrequest_fib, in6_rtrequest, rtrequest_fib> and their uses, and switch to rib_action(). This is part of the new routing KPI.

Submitted by: Neel Chauhan <neel AT neelc DOT org>
Suggested by: melifaro

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

nc requested review of this revision.Jul 2 2020, 4:43 AM

This patch currently panics and needs revision

Well, fixed the panics (which happened on BOOT on the first patch).

nc edited the summary of this revision. (Show Details)

Remove all variations of rtrequest (rtrequest1_fib, rtrequest_fib, in6_rtrequest, rtrequest_fib) as well.

donner added inline comments.
sys/fs/nfsclient/nfs_clvfsops.c
470 ↗(On Diff #74558)

info is not initialized here.

I'd recommend to do a in-place initialization here (violating style(9)) for the statically defined field .rti_flags, which implicitly zeroes all other fields.

https://en.cppreference.com/w/c/language/struct_initialization

473–476 ↗(On Diff #74558)

To explain the comment above about struct initialization here.

struct sockaddr_in mask = {};
struct sockaddr_in sin = { .sin_family = AF_INET, .sin_len = sizeof(sin) };
sys/netinet6/nd6_rtr.c
677 ↗(On Diff #74558)

dito

2047 ↗(On Diff #74558)

dito

2177 ↗(On Diff #74558)

dito

Made some suggested revisions.

nc marked 5 inline comments as done.Jul 17 2020, 8:29 PM
nc added inline comments.
sys/fs/nfsclient/nfs_clvfsops.c
470 ↗(On Diff #74558)

However, we use things like info.rti_info[RTAX_DST] which I'm not sure if it can be statically assigned.

This revision was not accepted when it landed; it landed in state Needs Review.Jul 19 2020, 9:29 AM
This revision was automatically updated to reflect the committed changes.