linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10
@ 2005-03-11 20:21 Felix von Leitner
  2005-03-12  1:32 ` Andrew Morton
                   ` (3 more replies)
  0 siblings, 4 replies; 23+ messages in thread
From: Felix von Leitner @ 2005-03-11 20:21 UTC (permalink / raw)
  To: linux-kernel

Linux is getting less and less usable for me. :-(


My new nForce 4 mainboard has 10 or so USB 2.0 outlets.  In Windows,
they all work.  In Linux, two of them work.  Putting my USB stick or
anything else in one of the others produces nothing in Linux.
Apparently no IRQ getting through or something?

This is what /proc/interrupts has to say:

  177:    9503618   IO-APIC-level  ohci_hcd, eth0

These are the USB boot messages:

  usbcore: registered new driver usbfs
  usbcore: registered new driver hub
  ehci_hcd 0000:00:02.1: new USB bus registered, assigned bus number 1
  ehci_hcd 0000:00:02.1: USB 2.0 initialized, EHCI 1.00, driver 26 Oct 2004
  hub 1-0:1.0: USB hub found
  ohci_hcd: 2004 Nov 08 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI)
  ohci_hcd 0000:00:02.0: new USB bus registered, assigned bus number 2
  hub 2-0:1.0: USB hub found
  usbcore: registered new driver usblp
  drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver
  Initializing USB Mass Storage driver...
  usb 2-4: new low speed USB device using ohci_hcd and address 2
  usbcore: registered new driver usb-storage
  USB Mass Storage support registered.
  input: USB HID v1.10 Mouse [B16_b_02 USB-PS/2 Optical Mouse] on
  usb-0000:00:02.0-4
  usbcore: registered new driver usbhid
  drivers/usb/input/hid-core.c: v2.0:USB HID core driver
  HUB0 XVR0 XVR1 XVR2 XVR3 USB0 USB2 MMAC MMCI UAR1

As you can see, it appears to work in principle.



Now about IPv6: npush and npoll are two applications I wrote.  npush
sends multicast announcements and opens a TCP socket.  npoll receives
the multicast announcement and connects to the source IP/port/scope_id
of the announcement.  If both are run on the same machine, npoll sees
the link local address of eth0 as source IP, and the interface number of
eth0 as scope_id.  So far so good.  Trying to connect() however hangs.
Since this has been broken in different ways for as long as I can
remember in Linux, and I keep complaining about it every half a year or
so.  Can't someone fix this once and for all?  IPv4 checks whether we
are connecting to our own address and reroutes through loopback, why
can't IPv6?



Finally Centrino SpeedStep.
I have a "Intel(R) Pentium(R) M processor 1.80GHz" in my notebook.
Linux does not support it.  This architecture has been out there for
months now, and there even was a patch to support it posted here a in
October last year or so.  Linux still does not include it.  Until
2.6.11-rc4-bk8 or so, the old patched file from back then still worked.
Now it doesn't.  Because some interface changed.  Now what?  Using a
Centrino notebook without CPU throttling is completely out of the
question.  Linux might as well not boot on it at all.



Did I mention that I'm really tired of you putting stones into ATI's
way?  You might believe you have a right to piss everyone off, after all
people get what they paid for.  Or maybe you think you are on a crusade
to promote open source software.  But if you keep alienating me (I'm a
software developer) like this, I spend more time working around this
bullshit and less time writing free software.  In the end, everyone
loses.  I sincerely hope some day you people are done pissing in the
pool and can create at least some semblance of semi-stable APIs.  This
house is never going to be safe for living until you stop digging around
the foundation.

You know, people are actually spending time (and money!) to learn how to
write Linux kernel modules.  And all this API shifting makes sure their
knowledge is completely obsolete a few months down the road.  That's not
how you create a community of people working on a shared goal.


Enough ranting for today.  Sigh.

Felix

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

* Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10
  2005-03-11 20:21 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10 Felix von Leitner
@ 2005-03-12  1:32 ` Andrew Morton
  2005-03-13 21:30   ` Felix von Leitner
  2005-03-12  1:33 ` Andrew Morton
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 23+ messages in thread
From: Andrew Morton @ 2005-03-12  1:32 UTC (permalink / raw)
  To: Felix von Leitner; +Cc: linux-kernel, linux-usb-devel

Felix von Leitner <felix-linuxkernel@fefe.de> wrote:
>
> My new nForce 4 mainboard has 10 or so USB 2.0 outlets.  In Windows,
> they all work.  In Linux, two of them work.  Putting my USB stick or
> anything else in one of the others produces nothing in Linux.
> Apparently no IRQ getting through or something?
> 
> This is what /proc/interrupts has to say:
> 
>   177:    9503618   IO-APIC-level  ohci_hcd, eth0
> 
> These are the USB boot messages:
> 
>   usbcore: registered new driver usbfs
>   usbcore: registered new driver hub
>   ehci_hcd 0000:00:02.1: new USB bus registered, assigned bus number 1
>   ehci_hcd 0000:00:02.1: USB 2.0 initialized, EHCI 1.00, driver 26 Oct 2004
>   hub 1-0:1.0: USB hub found
>   ohci_hcd: 2004 Nov 08 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI)
>   ohci_hcd 0000:00:02.0: new USB bus registered, assigned bus number 2
>   hub 2-0:1.0: USB hub found
>   usbcore: registered new driver usblp
>   drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver
>   Initializing USB Mass Storage driver...
>   usb 2-4: new low speed USB device using ohci_hcd and address 2
>   usbcore: registered new driver usb-storage
>   USB Mass Storage support registered.
>   input: USB HID v1.10 Mouse [B16_b_02 USB-PS/2 Optical Mouse] on
>   usb-0000:00:02.0-4
>   usbcore: registered new driver usbhid
>   drivers/usb/input/hid-core.c: v2.0:USB HID core driver
>   HUB0 XVR0 XVR1 XVR2 XVR3 USB0 USB2 MMAC MMCI UAR1
> 
> As you can see, it appears to work in principle.

Did it work correctly on any earlier kernel?  If so, which one(s)?

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

* Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10
  2005-03-11 20:21 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10 Felix von Leitner
  2005-03-12  1:32 ` Andrew Morton
@ 2005-03-12  1:33 ` Andrew Morton
  2005-03-22  0:33   ` Andrew Morton
  2005-03-24 11:59   ` [PATCH] [IPV6] Fix address/interface handling according to the scoping architecture (is Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10) YOSHIFUJI Hideaki / 吉藤英明
  2005-03-12  1:35 ` 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10 Andrew Morton
  2005-03-12  3:51 ` Adam Belay
  3 siblings, 2 replies; 23+ messages in thread
From: Andrew Morton @ 2005-03-12  1:33 UTC (permalink / raw)
  To: Felix von Leitner; +Cc: linux-kernel, netdev


(Added netdev cc)

Felix von Leitner <felix-linuxkernel@fefe.de> wrote:
>
> Now about IPv6: npush and npoll are two applications I wrote.  npush
> sends multicast announcements and opens a TCP socket.  npoll receives
> the multicast announcement and connects to the source IP/port/scope_id
> of the announcement.  If both are run on the same machine, npoll sees
> the link local address of eth0 as source IP, and the interface number of
> eth0 as scope_id.  So far so good.  Trying to connect() however hangs.
> Since this has been broken in different ways for as long as I can
> remember in Linux, and I keep complaining about it every half a year or
> so.  Can't someone fix this once and for all?  IPv4 checks whether we
> are connecting to our own address and reroutes through loopback, why
> can't IPv6?
> 

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

* Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10
  2005-03-11 20:21 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10 Felix von Leitner
  2005-03-12  1:32 ` Andrew Morton
  2005-03-12  1:33 ` Andrew Morton
@ 2005-03-12  1:35 ` Andrew Morton
  2005-03-12  3:54   ` Adam Belay
  2005-03-13 21:31   ` Felix von Leitner
  2005-03-12  3:51 ` Adam Belay
  3 siblings, 2 replies; 23+ messages in thread
From: Andrew Morton @ 2005-03-12  1:35 UTC (permalink / raw)
  To: Felix von Leitner; +Cc: linux-kernel, cpufreq

Felix von Leitner <felix-linuxkernel@fefe.de> wrote:
>
> Finally Centrino SpeedStep.
> I have a "Intel(R) Pentium(R) M processor 1.80GHz" in my notebook.
> Linux does not support it.  This architecture has been out there for
> months now, and there even was a patch to support it posted here a in
> October last year or so.  Linux still does not include it.  Until
> 2.6.11-rc4-bk8 or so, the old patched file from back then still worked.
> Now it doesn't.  Because some interface changed.  Now what?  Using a
> Centrino notebook without CPU throttling is completely out of the
> question.  Linux might as well not boot on it at all.

Could you please dig out the old patch, send it?


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

* Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10
  2005-03-11 20:21 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10 Felix von Leitner
                   ` (2 preceding siblings ...)
  2005-03-12  1:35 ` 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10 Andrew Morton
@ 2005-03-12  3:51 ` Adam Belay
  3 siblings, 0 replies; 23+ messages in thread
From: Adam Belay @ 2005-03-12  3:51 UTC (permalink / raw)
  To: Felix von Leitner; +Cc: linux-kernel, akpm

On Fri, 2005-03-11 at 20:21 +0000, Felix von Leitner wrote:
> Linux is getting less and less usable for me. :-(
> 
> 
> My new nForce 4 mainboard has 10 or so USB 2.0 outlets.  In Windows,
> they all work.  In Linux, two of them work.  Putting my USB stick or
> anything else in one of the others produces nothing in Linux.
> Apparently no IRQ getting through or something?

Could you also include lspci -vv.

Thanks,
Adam



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

* Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10
  2005-03-12  1:35 ` 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10 Andrew Morton
@ 2005-03-12  3:54   ` Adam Belay
  2005-03-22  0:32     ` Andrew Morton
  2005-03-13 21:31   ` Felix von Leitner
  1 sibling, 1 reply; 23+ messages in thread
From: Adam Belay @ 2005-03-12  3:54 UTC (permalink / raw)
  To: Felix von Leitner; +Cc: Andrew Morton, linux-kernel, cpufreq

On Fri, 2005-03-11 at 17:35 -0800, Andrew Morton wrote:
> Felix von Leitner <felix-linuxkernel@fefe.de> wrote:
> >
> > Finally Centrino SpeedStep.
> > I have a "Intel(R) Pentium(R) M processor 1.80GHz" in my notebook.
> > Linux does not support it.  This architecture has been out there for
> > months now, and there even was a patch to support it posted here a in
> > October last year or so.  Linux still does not include it.  Until
> > 2.6.11-rc4-bk8 or so, the old patched file from back then still worked.
> > Now it doesn't.  Because some interface changed.  Now what?  Using a
> > Centrino notebook without CPU throttling is completely out of the
> > question.  Linux might as well not boot on it at all.
> 
> Could you please dig out the old patch, send it?

Why not use ACPI for CPU scaling?

Thanks,
Adam



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

* Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10
  2005-03-12  1:32 ` Andrew Morton
@ 2005-03-13 21:30   ` Felix von Leitner
  0 siblings, 0 replies; 23+ messages in thread
From: Felix von Leitner @ 2005-03-13 21:30 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, linux-usb-devel

Thus spake Andrew Morton (akpm@osdl.org):
> > My new nForce 4 mainboard has 10 or so USB 2.0 outlets.  In Windows,
> > they all work.  In Linux, two of them work.  Putting my USB stick or
> > anything else in one of the others produces nothing in Linux.
> > Apparently no IRQ getting through or something?

> Did it work correctly on any earlier kernel?  If so, which one(s)?

It turns out the ports do work with 2.6.11; I was running rc4 when I
last observed it break.

Sorry for the bad bug report.

Felix

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

* Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10
  2005-03-12  1:35 ` 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10 Andrew Morton
  2005-03-12  3:54   ` Adam Belay
@ 2005-03-13 21:31   ` Felix von Leitner
  1 sibling, 0 replies; 23+ messages in thread
From: Felix von Leitner @ 2005-03-13 21:31 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, cpufreq

[-- Attachment #1: Type: text/plain, Size: 770 bytes --]

Thus spake Andrew Morton (akpm@osdl.org):
> > Finally Centrino SpeedStep.
> > I have a "Intel(R) Pentium(R) M processor 1.80GHz" in my notebook.
> > Linux does not support it.  This architecture has been out there for
> > months now, and there even was a patch to support it posted here a in
> > October last year or so.  Linux still does not include it.  Until
> > 2.6.11-rc4-bk8 or so, the old patched file from back then still worked.
> > Now it doesn't.  Because some interface changed.  Now what?  Using a
> > Centrino notebook without CPU throttling is completely out of the
> > question.  Linux might as well not boot on it at all.
> Could you please dig out the old patch, send it?

I didn't keep the patch, but I kept the patched C file.
I'll attach it.

Felix

[-- Attachment #2: centrino-speedstep.tar.gz --]
[-- Type: application/octet-stream, Size: 5508 bytes --]

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

* Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10
  2005-03-12  3:54   ` Adam Belay
@ 2005-03-22  0:32     ` Andrew Morton
  2005-03-22  1:20       ` Adam Belay
  0 siblings, 1 reply; 23+ messages in thread
From: Andrew Morton @ 2005-03-22  0:32 UTC (permalink / raw)
  To: Adam Belay; +Cc: felix-linuxkernel, linux-kernel, cpufreq

Adam Belay <abelay@novell.com> wrote:
>
> On Fri, 2005-03-11 at 17:35 -0800, Andrew Morton wrote:
> > Felix von Leitner <felix-linuxkernel@fefe.de> wrote:
> > >
> > > Finally Centrino SpeedStep.
> > > I have a "Intel(R) Pentium(R) M processor 1.80GHz" in my notebook.
> > > Linux does not support it.  This architecture has been out there for
> > > months now, and there even was a patch to support it posted here a in
> > > October last year or so.  Linux still does not include it.  Until
> > > 2.6.11-rc4-bk8 or so, the old patched file from back then still worked.
> > > Now it doesn't.  Because some interface changed.  Now what?  Using a
> > > Centrino notebook without CPU throttling is completely out of the
> > > question.  Linux might as well not boot on it at all.
> > 
> > Could you please dig out the old patch, send it?
> 
> Why not use ACPI for CPU scaling?
> 

Felix, did you try this?


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

* Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10
  2005-03-12  1:33 ` Andrew Morton
@ 2005-03-22  0:33   ` Andrew Morton
  2005-03-22  2:18     ` Johannes Stezenbach
  2005-03-24 11:59   ` [PATCH] [IPV6] Fix address/interface handling according to the scoping architecture (is Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10) YOSHIFUJI Hideaki / 吉藤英明
  1 sibling, 1 reply; 23+ messages in thread
From: Andrew Morton @ 2005-03-22  0:33 UTC (permalink / raw)
  To: felix-linuxkernel, linux-kernel, netdev

Andrew Morton <akpm@osdl.org> wrote:
>
> 
> (Added netdev cc)
> 
> Felix von Leitner <felix-linuxkernel@fefe.de> wrote:
> >
> > Now about IPv6: npush and npoll are two applications I wrote.  npush
> > sends multicast announcements and opens a TCP socket.  npoll receives
> > the multicast announcement and connects to the source IP/port/scope_id
> > of the announcement.  If both are run on the same machine, npoll sees
> > the link local address of eth0 as source IP, and the interface number of
> > eth0 as scope_id.  So far so good.  Trying to connect() however hangs.
> > Since this has been broken in different ways for as long as I can
> > remember in Linux, and I keep complaining about it every half a year or
> > so.  Can't someone fix this once and for all?  IPv4 checks whether we
> > are connecting to our own address and reroutes through loopback, why
> > can't IPv6?

afaik, this problem is still open.  If you have time, please provide
additional info for the net developers.  Maybe the source to npoll anbd
npush?


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

* Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10
  2005-03-22  0:32     ` Andrew Morton
@ 2005-03-22  1:20       ` Adam Belay
  2005-03-22 22:29         ` Felix von Leitner
  2005-03-25 13:37         ` Bruno Ducrot
  0 siblings, 2 replies; 23+ messages in thread
From: Adam Belay @ 2005-03-22  1:20 UTC (permalink / raw)
  To: felix-linuxkernel; +Cc: Andrew Morton, linux-kernel, cpufreq

On Mon, 2005-03-21 at 19:32, Andrew Morton wrote:
> Adam Belay <abelay@novell.com> wrote:
> >
> > On Fri, 2005-03-11 at 17:35 -0800, Andrew Morton wrote:
> > > Felix von Leitner <felix-linuxkernel@fefe.de> wrote:
> > > >
> > > > Finally Centrino SpeedStep.
> > > > I have a "Intel(R) Pentium(R) M processor 1.80GHz" in my notebook.
> > > > Linux does not support it.  This architecture has been out there for
> > > > months now, and there even was a patch to support it posted here a in
> > > > October last year or so.  Linux still does not include it.  Until
> > > > 2.6.11-rc4-bk8 or so, the old patched file from back then still worked.
> > > > Now it doesn't.  Because some interface changed.  Now what?  Using a
> > > > Centrino notebook without CPU throttling is completely out of the
> > > > question.  Linux might as well not boot on it at all.
> > > 
> > > Could you please dig out the old patch, send it?
> > 
> > Why not use ACPI for CPU scaling?
> > 
> 
> Felix, did you try this?
> 

ACPI is the preferred (and only standardized) method of controlling cpu
throttling on x86 systems.

Also, as I said earlier, I wanted to see an lspci for the usb issues.

Thanks,
Adam



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

* Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10
  2005-03-22  0:33   ` Andrew Morton
@ 2005-03-22  2:18     ` Johannes Stezenbach
  2005-03-22 16:22       ` Johannes Stezenbach
  0 siblings, 1 reply; 23+ messages in thread
From: Johannes Stezenbach @ 2005-03-22  2:18 UTC (permalink / raw)
  To: Andrew Morton; +Cc: felix-linuxkernel, linux-kernel, netdev

Andrew Morton wrote:
> Andrew Morton <akpm@osdl.org> wrote:
> >
> > 
> > (Added netdev cc)
> > 
> > Felix von Leitner <felix-linuxkernel@fefe.de> wrote:
> > >
> > > Now about IPv6: npush and npoll are two applications I wrote.  npush
> > > sends multicast announcements and opens a TCP socket.  npoll receives
> > > the multicast announcement and connects to the source IP/port/scope_id
> > > of the announcement.  If both are run on the same machine, npoll sees
> > > the link local address of eth0 as source IP, and the interface number of
> > > eth0 as scope_id.  So far so good.  Trying to connect() however hangs.
> > > Since this has been broken in different ways for as long as I can
> > > remember in Linux, and I keep complaining about it every half a year or
> > > so.  Can't someone fix this once and for all?  IPv4 checks whether we
> > > are connecting to our own address and reroutes through loopback, why
> > > can't IPv6?
> 
> afaik, this problem is still open.  If you have time, please provide
> additional info for the net developers.  Maybe the source to npoll anbd
> npush?

Grab the ncp package from http://www.fefe.de/ncp/, or more specifically
ftp://ftp.fu-berlin.de/unix/network/ncp/ncp-1.2.3.tar.bz2.

It's a very useful and handy tool for pushing around data within
a LAN of a small workgroup, one guy does "npush foo" and yells
at the intended recepient "do npoll". The first one to do
it wins and gets foo ;-)

Johannes

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

* Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10
  2005-03-22  2:18     ` Johannes Stezenbach
@ 2005-03-22 16:22       ` Johannes Stezenbach
  0 siblings, 0 replies; 23+ messages in thread
From: Johannes Stezenbach @ 2005-03-22 16:22 UTC (permalink / raw)
  To: Andrew Morton, felix-linuxkernel, linux-kernel, netdev

Johannes Stezenbach wrote:
> Grab the ncp package from http://www.fefe.de/ncp/, or more specifically
> ftp://ftp.fu-berlin.de/unix/network/ncp/ncp-1.2.3.tar.bz2.
> 
> It's a very useful and handy tool for pushing around data within
> a LAN of a small workgroup, one guy does "npush foo" and yells
> at the intended recepient "do npoll". The first one to do
> it wins and gets foo ;-)

In case that description sounded too silly: The essential feature
of ncp is that it requires no configuration or installation of a
server daemon, and you don't even need to worry about host names or the
IP address of the source or destination machine. Just hook two computers
to the same network and you're ready to npush/npoll. Similar to
netcat + tar, but way more convenient.

Johannes

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

* Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10
  2005-03-22  1:20       ` Adam Belay
@ 2005-03-22 22:29         ` Felix von Leitner
  2005-03-24 23:33           ` Jeremy Fitzhardinge
  2005-03-25 13:37         ` Bruno Ducrot
  1 sibling, 1 reply; 23+ messages in thread
From: Felix von Leitner @ 2005-03-22 22:29 UTC (permalink / raw)
  To: Adam Belay; +Cc: Andrew Morton, linux-kernel, cpufreq

Thus spake Adam Belay (abelay@novell.com):
> > > Why not use ACPI for CPU scaling?
> > Felix, did you try this?
> ACPI is the preferred (and only standardized) method of controlling cpu
> throttling on x86 systems.

  1. I don't trust ACPI
  2. my battery runs out quicker with ACPI compared to cpufreq

I _really_ _really_ don't want ACPI.  No, really not.  This is no idle
decision.  My current notebook is the only hardware I have ever seen
enabling ACPI not completely break Linux.  Of all my 10+ machines,
including my other 3 ones that are actually in use.

Which ACPI way to you mean, by the way?  Just enabling ACPI with thermal
and CPU or the cpufreq ACPI driver?  I think I tried that driver and did
not get the /sys interface to switch frequencies and governors.  If I
must, I can try again with 2.6.11, but I really really really do not
want to use ACPI, unless someone with a big shotgun is standing behind
me.

> Also, as I said earlier, I wanted to see an lspci for the usb issues.

0000:00:00.0 Memory controller: nVidia Corporation CK804 Memory Controller (rev a3)
0000:00:01.0 ISA bridge: nVidia Corporation: Unknown device 0050 (rev a3)
0000:00:01.1 SMBus: nVidia Corporation CK804 SMBus (rev a2)
0000:00:02.0 USB Controller: nVidia Corporation CK804 USB Controller (rev a2)
0000:00:02.1 USB Controller: nVidia Corporation CK804 USB Controller (rev a3)
0000:00:04.0 Multimedia audio controller: nVidia Corporation CK804 AC'97 Audio Controller (rev a2)
0000:00:06.0 IDE interface: nVidia Corporation CK804 IDE (rev a2)
0000:00:07.0 IDE interface: nVidia Corporation CK804 Serial ATA Controller (rev a3)
0000:00:08.0 IDE interface: nVidia Corporation CK804 Serial ATA Controller (rev a3)
0000:00:09.0 PCI bridge: nVidia Corporation CK804 PCI Bridge (rev a2)
0000:00:0a.0 Bridge: nVidia Corporation CK804 Ethernet Controller (rev a3)
0000:00:0b.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
0000:00:0c.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
0000:00:0d.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
0000:00:0e.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
0000:00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration
0000:00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map
0000:00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller
0000:00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control
0000:01:00.0 VGA compatible controller: nVidia Corporation: Unknown device 0141 (rev a2)
0000:05:0b.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link)
0000:05:0c.0 Ethernet controller: Marvell Technology Group Ltd. Gigabit Ethernet Controller (rev 13)

This kernel is stock 2.6.11 with CONFIG_USB_DEBUG=y.

When I put in my USB hub with my USB webcam, I get this:

Mar 22 23:25:40 demilich kernel: hub 1-0:1.0: state 5 ports 10 chg 0000 evt 0400
Mar 22 23:25:40 demilich kernel: ehci_hcd 0000:00:02.1: GetStatus port 10 status 001803 POWER sig=j  CSC CONNECT
Mar 22 23:25:40 demilich kernel: hub 1-0:1.0: port 10, status 0501, change 0001, 480 Mb/s
Mar 22 23:25:40 demilich kernel: hub 1-0:1.0: debounce: port 10: total 100ms stable 100ms status 0x501
Mar 22 23:25:40 demilich kernel: ehci_hcd 0000:00:02.1: port 10 high speed
Mar 22 23:25:40 demilich kernel: ehci_hcd 0000:00:02.1: GetStatus port 10 status 001005 POWER sig=se0  PE CONNECT
Mar 22 23:25:40 demilich kernel: usb 1-10: new high speed USB device using ehci_hcd and address 3
Mar 22 23:25:40 demilich kernel: ehci_hcd 0000:00:02.1: port 10 reset error -110
Mar 22 23:25:40 demilich kernel: hub 1-0:1.0: hub_port_status failed (err = -32)
Mar 22 23:25:40 demilich kernel: hub 1-0:1.0: port 10 not enabled, trying reset again...
Mar 22 23:25:40 demilich kernel: ehci_hcd 0000:00:02.1: port 10 reset error -110
Mar 22 23:25:40 demilich kernel: hub 1-0:1.0: hub_port_status failed (err = -32)
Mar 22 23:25:40 demilich kernel: hub 1-0:1.0: port 10 not enabled, trying reset again...
Mar 22 23:25:40 demilich kernel: ehci_hcd 0000:00:02.1: port 10 reset error -110
Mar 22 23:25:40 demilich kernel: hub 1-0:1.0: hub_port_status failed (err = -32)
Mar 22 23:25:40 demilich kernel: hub 1-0:1.0: port 10 not enabled, trying reset again...
Mar 22 23:25:41 demilich kernel: ehci_hcd 0000:00:02.1: port 10 high speed
Mar 22 23:25:41 demilich kernel: ehci_hcd 0000:00:02.1: GetStatus port 10 status 001005 POWER sig=se0  PE CONNECT
Mar 22 23:25:41 demilich kernel: usb 1-10: new device strings: Mfr=0, Product=0, SerialNumber=0
Mar 22 23:25:41 demilich kernel: usb 1-10: hotplug
Mar 22 23:25:41 demilich kernel: usb 1-10: adding 1-10:1.0 (config #1, interface 0)
Mar 22 23:25:41 demilich kernel: usb 1-10:1.0: hotplug

(the line with Mfr=0 looks wrong to me).

Now pulling the device and putting it on through my USB hub (same hardware port
on the mainboard), I get:

Mar 22 23:27:04 demilich kernel: hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }
Mar 22 23:27:04 demilich kernel: hda: dma_intr: error=0x84 { DriveStatusError BadCRC }
Mar 22 23:27:04 demilich kernel: ide: failed opcode was: unknown
Mar 22 23:27:51 demilich kernel: hub 1-0:1.0: state 5 ports 10 chg 0000 evt 0400
Mar 22 23:27:51 demilich kernel: ehci_hcd 0000:00:02.1: GetStatus port 10 status 001002 POWER sig=se0  CSC
Mar 22 23:27:51 demilich kernel: hub 1-0:1.0: port 10, status 0100, change 0001, 12 Mb/s
Mar 22 23:27:51 demilich kernel: usb 1-10: USB disconnect, address 3
Mar 22 23:27:51 demilich kernel: usb 1-10: usb_disable_device nuking all URBs
Mar 22 23:27:51 demilich kernel: usb 1-10: unregistering interface 1-10:1.0
Mar 22 23:27:51 demilich kernel: usb 1-10:1.0: hotplug
Mar 22 23:27:51 demilich kernel: usb 1-10: unregistering device
Mar 22 23:27:51 demilich kernel: usb 1-10: hotplug
Mar 22 23:27:51 demilich kernel: hub 1-0:1.0: debounce: port 10: total 100ms stable 100ms status 0x100
Mar 22 23:28:36 demilich kernel: hub 1-0:1.0: state 5 ports 10 chg 0000 evt 0400
Mar 22 23:28:36 demilich kernel: ehci_hcd 0000:00:02.1: GetStatus port 10 status 001803 POWER sig=j  CSC CONNECT
Mar 22 23:28:36 demilich kernel: hub 1-0:1.0: port 10, status 0501, change 0001, 480 Mb/s
Mar 22 23:28:36 demilich kernel: hub 1-0:1.0: debounce: port 10: total 100ms stable 100ms status 0x501
Mar 22 23:28:36 demilich kernel: ehci_hcd 0000:00:02.1: port 10 reset error -110
Mar 22 23:28:36 demilich kernel: hub 1-0:1.0: hub_port_status failed (err = -32)
Mar 22 23:28:36 demilich kernel: hub 1-0:1.0: port 10 not enabled, trying reset again...
Mar 22 23:28:37 demilich kernel: ehci_hcd 0000:00:02.1: port 10 full speed --> companion
Mar 22 23:28:37 demilich kernel: ehci_hcd 0000:00:02.1: GetStatus port 10 status 003001 POWER OWNER sig=se0  CONNECT
Mar 22 23:28:37 demilich kernel: hub 1-0:1.0: state 5 ports 10 chg 0000 evt 0400
Mar 22 23:28:37 demilich kernel: ehci_hcd 0000:00:02.1: GetStatus port 10 status 001002 POWER sig=se0  CSC
Mar 22 23:28:37 demilich kernel: hub 1-0:1.0: port 10, status 0100, change 0001, 12 Mb/s
Mar 22 23:28:37 demilich kernel: hub 1-0:1.0: debounce: port 10: total 100ms stable 100ms status 0x100

Now the webcam gets power (the light is on) but lsusb does not show it
and the device is suddenly only full speed, not high speed.

Felix

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

* [PATCH] [IPV6] Fix address/interface handling according to the scoping architecture (is Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10)
  2005-03-12  1:33 ` Andrew Morton
  2005-03-22  0:33   ` Andrew Morton
@ 2005-03-24 11:59   ` YOSHIFUJI Hideaki / 吉藤英明
  2005-04-25 19:57     ` IPv6 has trouble assigning an interface Felix von Leitner
  1 sibling, 1 reply; 23+ messages in thread
From: YOSHIFUJI Hideaki / 吉藤英明 @ 2005-03-24 11:59 UTC (permalink / raw)
  To: davem, felix-linuxkernel; +Cc: linux-kernel, netdev, yoshfuji

In article <20050311173308.7a076e8f.akpm@osdl.org> (at Fri, 11 Mar 2005 17:33:08 -0800), Andrew Morton <akpm@osdl.org> says:

> Felix von Leitner <felix-linuxkernel@fefe.de> wrote:
> >
> > Now about IPv6: npush and npoll are two applications I wrote.  npush
> > sends multicast announcements and opens a TCP socket.  npoll receives
> > the multicast announcement and connects to the source IP/port/scope_id
> > of the announcement.  If both are run on the same machine, npoll sees
> > the link local address of eth0 as source IP, and the interface number of
> > eth0 as scope_id.  So far so good.  Trying to connect() however hangs.
> > Since this has been broken in different ways for as long as I can
> > remember in Linux, and I keep complaining about it every half a year or
> > so.  Can't someone fix this once and for all?  IPv4 checks whether we
> > are connecting to our own address and reroutes through loopback, why
> > can't IPv6?

I think this has been there for long time (maybe since 2.4...).

With the following patch, I can connect local link-local address.
- Change incoming interface according to the scoping architecture
- Choose source address on appropriate interface, according to the
  scoping architecture.

Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>

===== net/ipv6/ip6_input.c 1.23 vs edited =====
--- 1.23/net/ipv6/ip6_input.c	2005-03-10 14:12:11 +09:00
+++ edited/net/ipv6/ip6_input.c	2005-03-24 17:49:15 +09:00
@@ -71,10 +71,18 @@
 		goto out;
 	}
 
-	/* Store incoming device index. When the packet will
-	   be queued, we cannot refer to skb->dev anymore.
+	/*
+	 * Store incoming device index. When the packet will
+	 * be queued, we cannot refer to skb->dev anymore.
+	 * 
+	 * BTW, when we send a packet for our own local address on a
+	 * non-loopback interface (e.g. ethX), it is being delivered
+	 * via the loopback interface (lo) here; skb->dev = &loopback_dev.
+	 * It, however, should be considered as if it is being
+	 * arrived via the sending interface (ethX), because of the
+	 * nature of scoping architecture. --yoshfuji
 	 */
-	IP6CB(skb)->iif = dev->ifindex;
+	IP6CB(skb)->iif = skb->dst ? ((struct rt6_info *)skb->dst)->rt6i_idev->dev->ifindex : dev->ifindex;
 
 	if (skb->len < sizeof(struct ipv6hdr))
 		goto err;
===== net/ipv6/addrconf.c 1.134 vs edited =====
--- 1.134/net/ipv6/addrconf.c	2005-03-15 14:21:11 +09:00
+++ edited/net/ipv6/addrconf.c	2005-03-24 11:52:17 +09:00
@@ -942,7 +942,7 @@
 int ipv6_get_saddr(struct dst_entry *dst,
 		   struct in6_addr *daddr, struct in6_addr *saddr)
 {
-	return ipv6_dev_get_saddr(dst ? dst->dev : NULL, daddr, saddr);
+	return ipv6_dev_get_saddr(dst ? ((struct rt6_info *)dst)->rt6i_idev->dev : NULL, daddr, saddr);
 }
 
 

-- 
Hideaki YOSHIFUJI @ USAGI Project <yoshfuji@linux-ipv6.org>
GPG FP: 9022 65EB 1ECF 3AD1 0BDF  80D8 4807 F894 E062 0EEA

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

* Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10
  2005-03-22 22:29         ` Felix von Leitner
@ 2005-03-24 23:33           ` Jeremy Fitzhardinge
  2005-03-25  0:17             ` Felix von Leitner
  0 siblings, 1 reply; 23+ messages in thread
From: Jeremy Fitzhardinge @ 2005-03-24 23:33 UTC (permalink / raw)
  To: Felix von Leitner; +Cc: Adam Belay, Andrew Morton, linux-kernel, cpufreq

Felix von Leitner wrote:

>>ACPI is the preferred (and only standardized) method of controlling cpu
>>throttling on x86 systems.
>>    
>>
>
>  1. I don't trust ACPI
>  2. my battery runs out quicker with ACPI compared to cpufreq
>
>I _really_ _really_ don't want ACPI.  No, really not.  This is no idle
>decision.  My current notebook is the only hardware I have ever seen
>enabling ACPI not completely break Linux.  Of all my 10+ machines,
>including my other 3 ones that are actually in use.
>  
>
Unfortunately, the Dothans *REQUIRE* some degree of ACPI support; the
speedfreq-centrino needs to extract a table from ACPI to know what are
valid operating (voltage/frequency) points to use for the CPU.  The
patch you're using is definitely wrong in principle, though if it works
for you in practice then by all means use it.

The problem is that there are 4 different voltage grades of Dothan -
VID#A to VID#D - and there doesn't appear to be a way to tell what grade
a CPU is from software at runtime; this is a problem because there's no
one set of voltages you can use across all 4 grades (they have
non-overlapping voltage limits).  It's unknown whether running a Dothan
out of voltage spec will cause reliability problems or damage.

    J

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

* Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10
  2005-03-24 23:33           ` Jeremy Fitzhardinge
@ 2005-03-25  0:17             ` Felix von Leitner
  0 siblings, 0 replies; 23+ messages in thread
From: Felix von Leitner @ 2005-03-25  0:17 UTC (permalink / raw)
  To: Jeremy Fitzhardinge; +Cc: Adam Belay, Andrew Morton, linux-kernel, cpufreq

Thus spake Jeremy Fitzhardinge (jeremy@goop.org):
> Unfortunately, the Dothans *REQUIRE* some degree of ACPI support; the
> speedfreq-centrino needs to extract a table from ACPI to know what are
> valid operating (voltage/frequency) points to use for the CPU.  The
> patch you're using is definitely wrong in principle, though if it works
> for you in practice then by all means use it.

I enabled these:

  CONFIG_CPU_FREQ=y
  CONFIG_CPU_FREQ_STAT=y
  CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
  CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
  CONFIG_CPU_FREQ_GOV_POWERSAVE=y
  CONFIG_CPU_FREQ_GOV_USERSPACE=y
  CONFIG_CPU_FREQ_GOV_ONDEMAND=y
  CONFIG_CPU_FREQ_TABLE=y
  CONFIG_X86_SPEEDSTEP_CENTRINO=y
  CONFIG_X86_SPEEDSTEP_CENTRINO_ACPI=y
  CONFIG_X86_SPEEDSTEP_CENTRINO_TABLE=y

It should have worked, shouldn't it?

Well, it did not.  You can look at the kernel messages at
http://dl.fefe.de/dmesg.gz if that helps.

No cpufreq, and as far as I can see, no speedstep.
The fan is running, that's all I can tell.

Felix

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

* Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10
  2005-03-22  1:20       ` Adam Belay
  2005-03-22 22:29         ` Felix von Leitner
@ 2005-03-25 13:37         ` Bruno Ducrot
  1 sibling, 0 replies; 23+ messages in thread
From: Bruno Ducrot @ 2005-03-25 13:37 UTC (permalink / raw)
  To: Adam Belay; +Cc: felix-linuxkernel, Andrew Morton, cpufreq, linux-kernel

On Mon, Mar 21, 2005 at 08:20:55PM -0500, Adam Belay wrote:
> On Mon, 2005-03-21 at 19:32, Andrew Morton wrote:
> > Adam Belay <abelay@novell.com> wrote:
> > >
> > > On Fri, 2005-03-11 at 17:35 -0800, Andrew Morton wrote:
> > > > Felix von Leitner <felix-linuxkernel@fefe.de> wrote:
> > > > >
> > > > > Finally Centrino SpeedStep.
> > > > > I have a "Intel(R) Pentium(R) M processor 1.80GHz" in my notebook.
> > > > > Linux does not support it.  This architecture has been out there for
> > > > > months now, and there even was a patch to support it posted here a in
> > > > > October last year or so.  Linux still does not include it.  Until
> > > > > 2.6.11-rc4-bk8 or so, the old patched file from back then still worked.
> > > > > Now it doesn't.  Because some interface changed.  Now what?  Using a
> > > > > Centrino notebook without CPU throttling is completely out of the
> > > > > question.  Linux might as well not boot on it at all.
> > > > 
> > > > Could you please dig out the old patch, send it?
> > > 
> > > Why not use ACPI for CPU scaling?
> > > 
> > 
> > Felix, did you try this?
> > 
> 
> ACPI is the preferred (and only standardized) method of controlling cpu
> throttling on x86 systems.
> 

No.  ACPI is the preferred method in order to *get configuration*
for cpu frequency and voltage scaling, but it's up to a
specific processor driver to control frequency (actually I'm
simplifying things since it's possible to control frequency
from ACPI only, but only in certain situation).

Throttling is another method to frequency control by throttling
the processor (and ACPI is then preferred for both configuration
and controlling how to throttle the processor), but there is
no voltage scaling at all as for frequency and voltage scaling.

Those far it's up to the OP to activate ACPI even if he do not trust
ACPI.  It's the only way to get configuration from BIOS if he do not
want to hardcode a configuration in the speedstep-centrino driver.

Cheers,

-- 
Bruno Ducrot

--  Which is worse:  ignorance or apathy?
--  Don't know.  Don't care.

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

* IPv6 has trouble assigning an interface
  2005-03-24 11:59   ` [PATCH] [IPV6] Fix address/interface handling according to the scoping architecture (is Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10) YOSHIFUJI Hideaki / 吉藤英明
@ 2005-04-25 19:57     ` Felix von Leitner
  2005-04-25 21:00       ` Pekka Savola
  0 siblings, 1 reply; 23+ messages in thread
From: Felix von Leitner @ 2005-04-25 19:57 UTC (permalink / raw)
  To: YOSHIFUJI Hideaki / ?$B5HF#1QL@; +Cc: linux-kernel, netdev

I'm using stock 2.6.11.7 now.

Here is an strace of some piece of code of mine:

socket(PF_INET6, SOCK_DGRAM, IPPROTO_IP) = 3
setsockopt(3, SOL_SOCKET, SO_REUSEADDR, [12884901889], 4) = 0
bind(3, {sa_family=AF_INET6, sin6_port=htons(8002), inet_pton(AF_INET6, "::", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, 28) = 0
setsockopt(3, SOL_IPV6, IPV6_MULTICAST_LOOP, "\1", 1) = 0
[...]
sendto(3, "ncp-lowfat-1.2.2", 16, 0, {sa_family=AF_INET6, sin6_port=htons(8002), inet_pton(AF_INET6, "ff02::6e63:7030", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, 28) = -1 EADDRNOTAVAIL (Cannot assign requested address)

ff02 is a link-local multicast address.  I've bound to ::.  How can this
fail?  link-local should always work, even if no routes are set and no
router has been found.

Felix

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

* Re: IPv6 has trouble assigning an interface
  2005-04-25 19:57     ` IPv6 has trouble assigning an interface Felix von Leitner
@ 2005-04-25 21:00       ` Pekka Savola
  2005-04-26  6:10         ` Felix von Leitner
  0 siblings, 1 reply; 23+ messages in thread
From: Pekka Savola @ 2005-04-25 21:00 UTC (permalink / raw)
  To: Felix von Leitner; +Cc: YOSHIFUJI Hideaki / ?$B5HF#1QL@, linux-kernel, netdev

On Mon, 25 Apr 2005, Felix von Leitner wrote:
> Here is an strace of some piece of code of mine:
>
> socket(PF_INET6, SOCK_DGRAM, IPPROTO_IP) = 3
> setsockopt(3, SOL_SOCKET, SO_REUSEADDR, [12884901889], 4) = 0
> bind(3, {sa_family=AF_INET6, sin6_port=htons(8002), inet_pton(AF_INET6, "::", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, 28) = 0
> setsockopt(3, SOL_IPV6, IPV6_MULTICAST_LOOP, "\1", 1) = 0
> [...]
> sendto(3, "ncp-lowfat-1.2.2", 16, 0, {sa_family=AF_INET6, sin6_port=htons(8002), inet_pton(AF_INET6, "ff02::6e63:7030", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, 28) = -1 EADDRNOTAVAIL (Cannot assign requested address)
>
> ff02 is a link-local multicast address.  I've bound to ::.  How can this
> fail?  link-local should always work, even if no routes are set and no
> router has been found.

Umm.. link-local unicast and multicast both require that you specify 
the interface, because otherwise it's ambiguous -- how could the 
kernel know which interface should be used to send the packet?

-- 
Pekka Savola                 "You each name yourselves king, yet the
Netcore Oy                    kingdom bleeds."
Systems. Networks. Security. -- George R.R. Martin: A Clash of Kings

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

* Re: IPv6 has trouble assigning an interface
  2005-04-25 21:00       ` Pekka Savola
@ 2005-04-26  6:10         ` Felix von Leitner
  2005-04-27 22:57           ` Kyle Moffett
  0 siblings, 1 reply; 23+ messages in thread
From: Felix von Leitner @ 2005-04-26  6:10 UTC (permalink / raw)
  To: Pekka Savola; +Cc: YOSHIFUJI Hideaki / ?$B5HF#1QL@, linux-kernel, netdev

Thus spake Pekka Savola (pekkas@netcore.fi):
> >Here is an strace of some piece of code of mine:
> >
> >socket(PF_INET6, SOCK_DGRAM, IPPROTO_IP) = 3
> >setsockopt(3, SOL_SOCKET, SO_REUSEADDR, [12884901889], 4) = 0
> >bind(3, {sa_family=AF_INET6, sin6_port=htons(8002), inet_pton(AF_INET6, 
> >"::", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, 28) = 0
> >setsockopt(3, SOL_IPV6, IPV6_MULTICAST_LOOP, "\1", 1) = 0
> >[...]
> >sendto(3, "ncp-lowfat-1.2.2", 16, 0, {sa_family=AF_INET6, 
> >sin6_port=htons(8002), inet_pton(AF_INET6, "ff02::6e63:7030", &sin6_addr), 
> >sin6_flowinfo=0, sin6_scope_id=0}, 28) = -1 EADDRNOTAVAIL (Cannot assign 
> >requested address)
> >
> >ff02 is a link-local multicast address.  I've bound to ::.  How can this
> >fail?  link-local should always work, even if no routes are set and no
> >router has been found.
> Umm.. link-local unicast and multicast both require that you specify 
> the interface, because otherwise it's ambiguous -- how could the 
> kernel know which interface should be used to send the packet?

OK for unicast.
But multicast?  I expected link-local multicast to send on _all_
interfaces if I don't specify one.

Felix

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

* Re: IPv6 has trouble assigning an interface
  2005-04-26  6:10         ` Felix von Leitner
@ 2005-04-27 22:57           ` Kyle Moffett
  2005-04-27 23:31             ` David Stevens
  0 siblings, 1 reply; 23+ messages in thread
From: Kyle Moffett @ 2005-04-27 22:57 UTC (permalink / raw)
  To: Felix von Leitner
  Cc: Pekka Savola, netdev, YOSHIFUJI Hideaki / ?$B5HF#1QL@, linux-kernel

On Apr 26, 2005, at 02:10, Felix von Leitner wrote:
> OK for unicast. But multicast?  I expected link-local multicast
> to send on _all_ interfaces if I don't specify one.

This statement makes no sense.  "link-local ... on all interfaces".
Isn't "link-local" supposed to mean that the address is unique and
available only on that interface (ethernet segment)?  It's possible
to get the _same_ link-local address on multiple ethernet segments,
so in that case, where would you send the packet???  When you send
link-local packets, you must specify the link to which it is local.

Cheers,
Kyle Moffett

-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GCM/CS/IT/U d- s++: a18 C++++>$ UB/L/X/*++++(+)>$ P+++(++++)>$
L++++(+++) E W++(+) N+++(++) o? K? w--- O? M++ V? PS+() PE+(-) Y+
PGP+++ t+(+++) 5 X R? tv-(--) b++++(++) DI+ D+ G e->++++$ h!*()>++$ r  
!y?(-)
------END GEEK CODE BLOCK------



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

* Re: IPv6 has trouble assigning an interface
  2005-04-27 22:57           ` Kyle Moffett
@ 2005-04-27 23:31             ` David Stevens
  0 siblings, 0 replies; 23+ messages in thread
From: David Stevens @ 2005-04-27 23:31 UTC (permalink / raw)
  To: Kyle Moffett
  Cc: Felix von Leitner, linux-kernel, netdev, Pekka Savola,
	YOSHIFUJI Hideaki / ?$B5HF#1QL@

netdev-bounce@oss.sgi.com wrote on 04/27/2005 03:57:05 PM:

> On Apr 26, 2005, at 02:10, Felix von Leitner wrote:
> > OK for unicast. But multicast?  I expected link-local multicast
> > to send on _all_ interfaces if I don't specify one.

(I didn't see the article this is quoting-- apparently wasn't CC-ed
to "netdev" as the original was).
        Multicasting doesn't work that way. Multicast group memberships
are per-device (whether or not they are link-local). If you join
the same group address on two different devices, they'll only be the
same group if there are multicast routers on the two links connecting
them in the same multicast routing hierarchy. With a scope broader
than link-local, and a multicast router on that link, the packets
can be forwarded to other links, but they won't be forwarded to
every host on the internet in that group (!), and there are sometimes
good reasons for having different partitions of the same group
within a single organization. So, the same group number on two
different links is not necessarily the same group. It depends
entirely on whether the two groups have common multicast routers
with no policy restricting forwarding for that group between them.
        This is how IPv4 multicasting works, too. You join a group
on a particular device.

                                                                +-DLS


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

end of thread, other threads:[~2005-04-27 23:31 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-03-11 20:21 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10 Felix von Leitner
2005-03-12  1:32 ` Andrew Morton
2005-03-13 21:30   ` Felix von Leitner
2005-03-12  1:33 ` Andrew Morton
2005-03-22  0:33   ` Andrew Morton
2005-03-22  2:18     ` Johannes Stezenbach
2005-03-22 16:22       ` Johannes Stezenbach
2005-03-24 11:59   ` [PATCH] [IPV6] Fix address/interface handling according to the scoping architecture (is Re: 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10) YOSHIFUJI Hideaki / 吉藤英明
2005-04-25 19:57     ` IPv6 has trouble assigning an interface Felix von Leitner
2005-04-25 21:00       ` Pekka Savola
2005-04-26  6:10         ` Felix von Leitner
2005-04-27 22:57           ` Kyle Moffett
2005-04-27 23:31             ` David Stevens
2005-03-12  1:35 ` 2.6.11: USB broken on nforce4, ipv6 still broken, centrino speedstep even more broken than in 2.6.10 Andrew Morton
2005-03-12  3:54   ` Adam Belay
2005-03-22  0:32     ` Andrew Morton
2005-03-22  1:20       ` Adam Belay
2005-03-22 22:29         ` Felix von Leitner
2005-03-24 23:33           ` Jeremy Fitzhardinge
2005-03-25  0:17             ` Felix von Leitner
2005-03-25 13:37         ` Bruno Ducrot
2005-03-13 21:31   ` Felix von Leitner
2005-03-12  3:51 ` Adam Belay

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).