vlan changes to support ipoib

Bjoern A. Zeeb bzeeb-lists at lists.zabbadoz.net
Sun Jan 9 10:30:08 UTC 2011


On Sat, 8 Jan 2011, Jeff Roberson wrote:

> Hi Folks,
>
> I have made some changes to vlans and I was wondering if anyone would care to 
> review or test.  Especially current vlan users.  The diff is here:
>
> http://people.freebsd.org/~jeff/vlan.diff
>
> I can't say that I like adding all of the function pointers but with vlan 
> support available as a loadable module I have little choice.  The new 
> functions allow a driver to fetch the virtual interface associated with a 
> tag, cache and fetch a cookie pointer in a virtual interface, and fetch the 
> tag of a virtual interface.
>
> Additionally, the driver was changed to make no assumptions about address 
> size unless the type is IFT_ETHER.  This means for multicast entries we store 
> a full sockaddr_dl rather than an ethernet address.  It actually simplifies 
> the code here.  I also simplified the VLAN_ARRAY stuff by moving it into 
> functions that match the hash names so there aren't ifdef's everywhere.  I've 
> tested both hash and array.
>
> I also changed the global mtx to an sx lock so the vlan_config event handlers 
> can allocate memory.  The way ipoib works requires a full new ipoib softc 
> when a vlan is created.  I didn't want to duplicate the vlan config logic so 
> I store that softc using the cookie field and fetch it when necessary.  As a 
> result ipoib also doesn't need the weird vlan_input() recursion since the 
> packets appear on the correct device as they are received.
>
> I am committing this to my infiniband tree immediately but I would like some 
> review before I merge to current.

May I ask you to split the diff up into logical junks for both review
and commit?  Otherwise possible errors not caught with by review will
just be a lot harder to track down later.

Some of the stuff like "Initialize from parent" seems to be simple
enough to be possibly merged just upfront leaving the real beef.

/bz

-- 
Bjoern A. Zeeb                                 You have to have visions!
         <ks> Going to jail sucks -- <bz> All my daemons like it!
   http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/jails.html


More information about the freebsd-net mailing list