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>