Re: [PATCH v2] RDMA/CMA: fix iWARP adapter TCP port space usage

Steve Wise
2010-06-23T20:19:31Z

Jason Gunthorpe wrote:
> On Wed, Jun 23, 2010 at 03:11:27PM -0500, Steve Wise wrote:
>
>> The IP address assigned for the cxgb3i iscsi device is _not_ assigned to
>> a netdev interface via ifconfig, as far as I understand it (by looking
>> at the cxgb3i code). So the host stack doesn't know about this address.
>> There is an administrative requirement, I assume, that the secret iscsi
>> ipaddr is within a subnet that is bound to the T3 ethX interface.
>> Otherwise the routing lookup wouldn't work.
>>
>
> So who responds to neighbor queries, and how do outgoing queries get
> sent with the right IP? Sounds odd...
>
>

The iscsi hba is only an initiator, so it doesn't need to respond to arp
queries. I guess the Source Protocol Address in the outgoing ARP
request will be the ipaddr of the outgoing interface. Its ok though
because what is needed is the next-hop peer's hwaddr. So the ARP reply
comes in, updates the host neigh entry, and a NEIGH_EVENT callout is
performed to the offload device drivers. It is a little hackish, but
that's the only way the netdev maintainers would allow iscsi offload
in. They originally tried to use the src address from the ethX
interface for the offload iscsi connections and that was rejected.

Steve.