[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7825F977-3F62-4AFC-92F2-233C5EAE01D3@oracle.com>
Date: Tue, 23 May 2023 19:18:18 +0000
From: Chuck Lever III <chuck.lever@...cle.com>
To: Jason Gunthorpe <jgg@...pe.ca>
CC: Chuck Lever <cel@...nel.org>, Netdev <netdev@...r.kernel.org>,
linux-rdma
<linux-rdma@...r.kernel.org>,
Bernard Metzler <BMT@...ich.ibm.com>, Tom
Talpey <tom@...pey.com>
Subject: Re: [PATCH RFC 3/3] RDMA/siw: Require non-zero 6-byte MACs for soft
iWARP
> On May 5, 2023, at 3:58 PM, Jason Gunthorpe <jgg@...pe.ca> wrote:
>
> On Fri, May 05, 2023 at 11:43:11AM -0400, Chuck Lever wrote:
>> From: Chuck Lever <chuck.lever@...cle.com>
>>
>> In the past, LOOPBACK and NONE (tunnel) devices had all-zero MAC
>> addresses. siw_device_create() would fall back to copying the
>> device's name in those cases, because an all-zero MAC address breaks
>> the RDMA core IP-to-device lookup mechanism.
>
> Why not just make up a dummy address in SIW? It shouldn't need to leak
> out of it.. It is just some artifact of how the iWarp stuff has been
> designed
So that approach is already being done in siw_device_create(),
even though it is broken (the device name hasn't been initialized
when the phony MAC is created, so it is all zeroes). I've fixed
that and it still doesn't help.
siw cannot modify the underlying net_device to add a made-up
MAC address.
The core address resolution code wants to find an L2 address
for the egress device. The underlying ib_device, where a made-up
GID might be stored, is not involved with address resolution
AFAICT.
tun devices have no L2 address. Neither do loopback devices,
but address resolution makes an exception for LOOPBACK devices
by redirecting to a local physical Ethernet device.
Redirecting tun traffic to the local Ethernet device seems
dodgy at best.
I wasn't sure that an L2 address was required for siw before,
but now I'm pretty confident that it is required by our
implementation.
--
Chuck Lever
Powered by blists - more mailing lists