[ewg] OFED-1.5.1 failure over iWarp
Liran Liss
liranl at mellanox.co.il
Thu Feb 4 02:28:05 PST 2010
The rdma_dev_addr refers to an L2 netdevice, so it makes perfect sense that the hw addresses stored in src/dst_dev_addr are macs for both iWarp and RoCEE (as is already the case).
Note that with this approach, dev_type is no longer sufficient to determine the ibdev type.
Following the "spirit" of the current code, it is probably cma_acquire_dev()'s job to fill in the missing ibdev type information after matching the netdev to an ibdev.
As for the match process, we could encode the mac in one of a RoCEE port's gids, but this entry would be a dummy, i.e., it would only serve for this matching process.
In contrast to iWARP, RoCEE gids really *are* gids, and serve as the port's *network* addresses.
In the current implementation, the link-local GID is a fully-qualified L3 address, which borrows from IPv6's automatic configuration scheme; it is always be present and usuable.
So, the current suggestion of using the link-local gid for device matching has the advantage that the GID table contains only usable L3 gids - no dummys.
I don't know which of these alternatives is "cleaner".
--Liran
P.S. - I really wish that we had a cleaner way to match an ibdev to a netdev without overloading the gid table entries.
Basically, it should be the job of the entity that created the netdev to make this association, and stuff a pointer in the netdev.
Another option is to register a list of "L2 HW addresses" with an ibdev's port (i.e., in a different structure than the gid table), so the lookup would be straight-forward.
-----Original Message-----
From: Or Gerlitz [mailto:ogerlitz at Voltaire.com]
Sent: Thursday, February 04, 2010 10:29 AM
To: Sean Hefty; Steve Wise; Liran Liss
Cc: 'Eli Cohen'; OpenFabrics EWG
Subject: Re: [ewg] OFED-1.5.1 failure over iWarp
Sean Hefty wrote:
> If I look at what's there today, we're trying to find some way to
> match the net_device src_dev_addr with some sort of address associated with an ib_device.
> In the case of actual IB, the net_device src_dev_addr contains the
> SGID, which provides the mapping.
> Steve, can you please clarify the iWarp case for me? For iWarp,
> doesn't the src_dev_addr contain the MAC? So, the 'GID's reported for
> an iWarp device is really just the MAC. Is this correct?
> If this is the case, then couldn't rocee (I hate that name) report its
> MAC as one of its GIDs? This would ensure that the mapping between
> net_device and ib_device was correct.
Sean, AFAIK, reporting the MAC as one of the GIDs was part of the IBoE (feel free not to use names which you don't like) design presented couple of time, isn't it, Eli, Liran?
Or.
More information about the ewg
mailing list