[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1290821143.4145.3.camel@maxim-laptop>
Date: Sat, 27 Nov 2010 03:25:43 +0200
From: Maxim Levitsky <maximlevitsky@...il.com>
To: Stefan Richter <stefanr@...6.in-berlin.de>
Cc: "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
linux1394-devel <linux1394-devel@...ts.sourceforge.net>
Subject: Re: [Q] How to invalidate ARP cache for a network device from
within kernel
On Sat, 2010-11-27 at 02:18 +0100, Stefan Richter wrote:
> On Nov 26 Maxim Levitsky wrote:
> > However as soon as bus reset happens, the upper layer ARP cache isn't
> > invalidated, thus all attempts to send packets to remote node now fail,
> > because the additional information (node id and bus address) about
> > remote node is now invalid, but ARP core doesn't send ARP requests
> > because it has the response in the cache.
>
> When is this a problem? With nodes which stay on the bus (i.e. are
> present before and after the bus reset)? Or with nodes which go away
> and come back much later (but before the old ARP cache entry was cleaned
> out)?
Its about later.
A node that disconnects and connects after 5 seconds for example or 20
seconds.
ARP timeout is I think 30 seconds or even more.
Btw I already solved that problem.
Patches attached.
With this and all great patches from you and Clemens, the firewire
networking strongly resembles ethernet in terms of speed and
reliability.
(When I resume from ram my desktop, connection restores after less that
5 seconds).
On laptop I still see few issues on s2ram cycle, I am tackling them now.
Best regards,
Maxim Levitsky
View attachment "0001-firewire-net-restart-ISO-channel-on-bus-resets.patch" of type "text/x-patch" (1017 bytes)
View attachment "0002-NET-ARP-allow-to-invalidate-specific-ARP-entries.patch" of type "text/x-patch" (2602 bytes)
View attachment "0003-firewire-net-invalidate-ARP-entries-for-removed-node.patch" of type "text/x-patch" (1673 bytes)
Powered by blists - more mailing lists