netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: [Bugme-new] [Bug 9384] New: Appletalk packets are delivered to the last interface FD_SET
       [not found] <bug-9384-10286@http.bugzilla.kernel.org/>
@ 2007-11-15 10:12 ` Andrew Morton
  2007-11-15 23:49   ` David Miller
  0 siblings, 1 reply; 3+ messages in thread
From: Andrew Morton @ 2007-11-15 10:12 UTC (permalink / raw)
  To: netdev; +Cc: bugme-daemon, trs80


(switching to email for netdev - please repond via emailed reply-to-all, not
via the bugzilla UI)

On Thu, 15 Nov 2007 01:56:07 -0800 (PST) bugme-daemon@bugzilla.kernel.org wrote:

> http://bugzilla.kernel.org/show_bug.cgi?id=9384
> 
>            Summary: Appletalk packets are delivered to the last interface
>                     FD_SET
>            Product: Networking
>            Version: 2.5
>      KernelVersion: 2.6.21.3
>           Platform: All
>         OS/Version: Linux
>               Tree: Mainline
>             Status: NEW
>           Severity: normal
>           Priority: P1
>          Component: Other
>         AssignedTo: acme@ghostprotocols.net
>         ReportedBy: trs80@ucc.asn.au
> 
> 
> Most recent kernel where this bug did not occur: 2.6.10. Maybe 2.6.15? It was
> in 2.6.18 along with bug 7421 which caused me to disable netatalk until now.
> Distribution: Debian etch (4.0)
> Hardware Environment: Pentium 4 2.8GHz, HT off, Intel D865GLC motherboard,
> 256MB RAM, onboard Intel GigE, PCI Intel e100.
> Software Environment: Netatalk 2.0.3, ipset patch for iptables and kernel
> Problem Description: Appletalk packets appear to come from the wrong interface,
> specifically the last one FD_SET. Using wireshark I see Appletalk rtmp packets
> arrive from the upstream router on eth1 (the e100). Netatalk then reports the
> packet as having arrived on eth0.3, which is the only other appletalk enabled
> interface, and prints "rtmp_packet interface mismatch" because the packet
> appears to come from the wrong interface.
> 
> I'm fairly sure it's the kernel doing it, because wireshark is listening on
> eth1 and shows the packet from the upstream router's MAC address and DDP
> address, then the debug code in atalkd immediately after the recvfrom prints
> the ifr_name which is eth0.3. Also netatalk 2.0.3 was released over 2 years
> ago, so the only code that's changed is the kernel.
> 
> Enabling appletalk on eth0.2 clarifies the problem - packets are delivered to
> fds belonging to the last interface FD_SET. Reordering the interfaces also
> shows this, as in the config file changing the order of the interfaces changes
> the order they're looped through for FD_SET.
> 
> Steps to reproduce: Set up a multi-interface netatalk config and watch for
> rtmp_packet interface mismatch messages. I added a bunch of log statements to
> debug this, the most useful places to put them are at the end of setaddr() and
> after the select() in main().
> 
> The machine is a router, so I have to minimise the downtime of testing
> different kernel versions. I am happy to instrument atalkd or provide packet
> captures.
> 


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Bugme-new] [Bug 9384] New: Appletalk packets are delivered to the last interface FD_SET
  2007-11-15 10:12 ` [Bugme-new] [Bug 9384] New: Appletalk packets are delivered to the last interface FD_SET Andrew Morton
@ 2007-11-15 23:49   ` David Miller
  2007-11-16 11:23     ` Arnaldo Carvalho de Melo
  0 siblings, 1 reply; 3+ messages in thread
From: David Miller @ 2007-11-15 23:49 UTC (permalink / raw)
  To: akpm; +Cc: netdev, bugme-daemon, trs80, acme

From: Andrew Morton <akpm@linux-foundation.org>
Date: Thu, 15 Nov 2007 02:12:19 -0800

> > Most recent kernel where this bug did not occur: 2.6.10. Maybe 2.6.15? It was
> > in 2.6.18 along with bug 7421 which caused me to disable netatalk until now.
> > Distribution: Debian etch (4.0)
> > Hardware Environment: Pentium 4 2.8GHz, HT off, Intel D865GLC motherboard,
> > 256MB RAM, onboard Intel GigE, PCI Intel e100.
> > Software Environment: Netatalk 2.0.3, ipset patch for iptables and kernel
> > Problem Description: Appletalk packets appear to come from the wrong interface,
> > specifically the last one FD_SET. Using wireshark I see Appletalk rtmp packets
> > arrive from the upstream router on eth1 (the e100). Netatalk then reports the
> > packet as having arrived on eth0.3, which is the only other appletalk enabled
> > interface, and prints "rtmp_packet interface mismatch" because the packet
> > appears to come from the wrong interface.
> > 
> > I'm fairly sure it's the kernel doing it, because wireshark is listening on
> > eth1 and shows the packet from the upstream router's MAC address and DDP
> > address, then the debug code in atalkd immediately after the recvfrom prints
> > the ifr_name which is eth0.3. Also netatalk 2.0.3 was released over 2 years
> > ago, so the only code that's changed is the kernel.
> > 
> > Enabling appletalk on eth0.2 clarifies the problem - packets are delivered to
> > fds belonging to the last interface FD_SET. Reordering the interfaces also
> > shows this, as in the config file changing the order of the interfaces changes
> > the order they're looped through for FD_SET.
> > 
> > Steps to reproduce: Set up a multi-interface netatalk config and watch for
> > rtmp_packet interface mismatch messages. I added a bunch of log statements to
> > debug this, the most useful places to put them are at the end of setaddr() and
> > after the select() in main().
> > 
> > The machine is a router, so I have to minimise the downtime of testing
> > different kernel versions. I am happy to instrument atalkd or provide packet
> > captures.

I suspect there is some issue with the ordering of the atalk
interface list which is causing this.

Arnaldo, can you please take a look at this?

Thanks.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Bugme-new] [Bug 9384] New: Appletalk packets are delivered to the last interface FD_SET
  2007-11-15 23:49   ` David Miller
@ 2007-11-16 11:23     ` Arnaldo Carvalho de Melo
  0 siblings, 0 replies; 3+ messages in thread
From: Arnaldo Carvalho de Melo @ 2007-11-16 11:23 UTC (permalink / raw)
  To: David Miller; +Cc: akpm, netdev, bugme-daemon, trs80

Em Thu, Nov 15, 2007 at 03:49:35PM -0800, David Miller escreveu:
> From: Andrew Morton <akpm@linux-foundation.org>
> Date: Thu, 15 Nov 2007 02:12:19 -0800
> 
> > > Most recent kernel where this bug did not occur: 2.6.10. Maybe 2.6.15? It was
> > > in 2.6.18 along with bug 7421 which caused me to disable netatalk until now.
> > > Distribution: Debian etch (4.0)
> > > Hardware Environment: Pentium 4 2.8GHz, HT off, Intel D865GLC motherboard,
> > > 256MB RAM, onboard Intel GigE, PCI Intel e100.
> > > Software Environment: Netatalk 2.0.3, ipset patch for iptables and kernel
> > > Problem Description: Appletalk packets appear to come from the wrong interface,
> > > specifically the last one FD_SET. Using wireshark I see Appletalk rtmp packets
> > > arrive from the upstream router on eth1 (the e100). Netatalk then reports the
> > > packet as having arrived on eth0.3, which is the only other appletalk enabled
> > > interface, and prints "rtmp_packet interface mismatch" because the packet
> > > appears to come from the wrong interface.
> > > 
> > > I'm fairly sure it's the kernel doing it, because wireshark is listening on
> > > eth1 and shows the packet from the upstream router's MAC address and DDP
> > > address, then the debug code in atalkd immediately after the recvfrom prints
> > > the ifr_name which is eth0.3. Also netatalk 2.0.3 was released over 2 years
> > > ago, so the only code that's changed is the kernel.
> > > 
> > > Enabling appletalk on eth0.2 clarifies the problem - packets are delivered to
> > > fds belonging to the last interface FD_SET. Reordering the interfaces also
> > > shows this, as in the config file changing the order of the interfaces changes
> > > the order they're looped through for FD_SET.
> > > 
> > > Steps to reproduce: Set up a multi-interface netatalk config and watch for
> > > rtmp_packet interface mismatch messages. I added a bunch of log statements to
> > > debug this, the most useful places to put them are at the end of setaddr() and
> > > after the select() in main().
> > > 
> > > The machine is a router, so I have to minimise the downtime of testing
> > > different kernel versions. I am happy to instrument atalkd or provide packet
> > > captures.
> 
> I suspect there is some issue with the ordering of the atalk
> interface list which is causing this.
> 
> Arnaldo, can you please take a look at this?

I'll look at this in the afternoon.

- Arnaldo

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2007-11-16 11:23 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <bug-9384-10286@http.bugzilla.kernel.org/>
2007-11-15 10:12 ` [Bugme-new] [Bug 9384] New: Appletalk packets are delivered to the last interface FD_SET Andrew Morton
2007-11-15 23:49   ` David Miller
2007-11-16 11:23     ` Arnaldo Carvalho de Melo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).