Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 14 Nov 2024 10:49:42 -0500
From:      Justin Hibbits <jhibbits@FreeBSD.org>
To:        <freebsd-arch@freebsd.org>, <freebsd-net@FreeBSD.org>
Subject:   Re: struct ifnet is now hidden
Message-ID:  <20241114104942.31be0431@ralga.knownspace>
In-Reply-To: <20241113143829.68bfbf8c@ralga.knownspace>
References:  <20241113143829.68bfbf8c@ralga.knownspace>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 13 Nov 2024 14:38:29 -0500
Justin Hibbits <jhibbits@FreeBSD.org> wrote:

> Hi everyone,
> 
> Many thanks to everyone involved, either fixing ports, reviewing
> changes, or assisting with the API, struct ifnet is now hidden from
> drivers and userspace.  This means drivers now use the IfAPI,
> currently largely consisting of just getters and setters in place of
> direct access, with tools/ifnet/convert_ifapi.sh being a good
> starting point for adapting drivers.
> 
> In struct ifnet's place is if_t, an opaque pointer.  "Blessed" parts
> of the kernel, effectively anything sys/net*, modulo sys/netlink, can
> directly access it, as those directories comprise the network stack,
> so need direct access, as they manage the interfaces.  Manpage updates
> will be coming "soon", I'm hoping in the next few weeks, and will
> likely need lots of review and editing.
> 
> Again, thanks for everyone's help.  I hope the road forward with this
> is not too bumpy.
> 
> - Justin
> 

Follow-up.  olivier@ reminded me that I hadn't bumped
__FreeBSD_version, so I just did that (1500027 now).  Though the IfAPI
has been pretty much baked for a year, this will represent the point
where struct ifnet is no longer available to the general audience.

- Justin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20241114104942.31be0431>