cvs commit: src/share/man/man9 ifnet.9 src/sys/compat/ndis kern_ndis.c subr_ndis.c src/sys/contrib/altq/altq altq_rio.c src/sys/contrib/dev/oltr if_oltr.c if_oltr_pci.c if_oltrvar.h src/sys/contrib/pf/net if_pflog.c if_pflog.h if_pfsync.c ...

Brooks Davis brooks at one-eyed-alien.net
Fri Jun 10 17:10:48 GMT 2005


On Fri, Jun 10, 2005 at 07:03:55PM +0200, Poul-Henning Kamp wrote:
> In message <200506101649.j5AGnOPu077043 at repoman.freebsd.org>, Brooks Davis writ
> es:
> 
> >  Log:
> >  Stop embedding struct ifnet at the top of driver softcs. [...]
> >  
> >  This change removes the size of these structures from the kernel ABI and
> >  will allow us to better manage them as interfaces come and go.
> >  
> >  Other changes of note:
> >   - Struct arpcom is no longer referenced in normal interface code.
> >     Instead the Ethernet address is accessed via the IFP2ENADDR() macro.
> 
> If this is a macro, don't you still encode, if not the size at least
> part of the layout in the kernel ABI ?

Yes, the layout of existing variables in struct arpcom is still part of
the ABI as the existance of the ethernet address there.  I decided to
defer complete removal for 7.0.  Keeping two copies (aprcom and LLADDR)
is lame, but not a huge problem.  The big issue here was to get the
storage and allocation out of the hands of the driver.  Getting the
ethernet address access into a macro was mostly a convenient side
effect that will ease further API cleanups at a later date.

-- Brooks

-- 
Any statement of the form "X is the one, true Y" is FALSE.
PGP fingerprint 655D 519C 26A7 82E7 2529  9BF0 5D8E 8BE9 F238 1AD4
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/cvs-all/attachments/20050610/a35c5e60/attachment.bin


More information about the cvs-all mailing list