[Openib-windows] IPoIB issue with system ARP table
Guy Corem
guyc at voltaire.com
Mon Dec 19 06:53:41 PST 2005
Hi Fab,
I don't understand your answer.
MiniportInitialize is running in PASSIVE_LEVEL, so theoretically, there shouldn't be any IRQL problem in allocating IB resources up front. Right ?
Thanks,
Guy
-----Original Message-----
From: Fab Tillier [mailto:ftillier at silverstorm.com]
Sent: ב 12 דצמבר 2005 19:49
To: Guy Corem; openib-windows at openib.org
Subject: RE: [Openib-windows] IPoIB issue with system ARP table
Hi Guy,
> From: Guy Corem [mailto:guyc at voltaire.com]
> Sent: Monday, December 12, 2005 9:16 AM
>
> Hi Fab & All,
>
> We've encountered the following problem with IPoIB:
> In case of link down event, and fast (< about 2 seconds) after that link up
> event, the TCP/IP stack doesn't response to the interface down & up event.
> As a result the system ARP table isn't being flushed, and no gratuitous arp is
> being sent.
IPoIB is properly generating the link events, right?
> So, pings from the machine to another host which has a line in the system arp
> table doesn't work, and also vice versa.
>
> Any suggestions?
I think the solution is to allocate the IB resources up front (QP, CQ, etc) so
that the QPN stays for the lifetime of the adapter instance. I would guess that
on a fast link down/up transition, the TCP/IP stack figures it was just a
temporary loss, and there's no need to flush the ARP table.
Changing the IB resource allocations is a somewhat cumbersome task since I was
taking advantage of the IBAL PnP callback (which runs at passive IRQL ) to
allocate all these. We'll have to find another way to get into a passive thread
context (have I mentioned I hate the passive IRQL limitation of the verbs?)
- Fab
More information about the ofw
mailing list