Skip to contentSkip to conversation

New: /proc/sys/net/ipv6/conf/all/* controls don't work

Bugme-new Andrew Morton 3 participants 4 messages Oct 3, 2008 – Oct 13, 2008 1 message not in the archive

Subsystems (2)
lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]/

#1 lore raw

(switched to email. Please respond via emailed reply-to-all, not via the bugzilla web interface).

Quoted 36 lines · On Fri, 26 Sep 2008 19:36:55 -0700 (PDT) [email protected] wrote:

http://bugzilla.kernel.org/show_bug.cgi?id=11655

           Summary: /proc/sys/net/ipv6/conf/all/* controls don't work
           Product: Networking
           Version: 2.5
     KernelVersion: 2.6.26.5
          Platform: All
        OS/Version: Linux
              Tree: Mainline
            Status: NEW
          Severity: normal
          Priority: P1
         Component: IPV6
        AssignedTo: [email protected]
        ReportedBy: [email protected]

Latest working kernel version: NONE
Earliest failing kernel version: UNKNOWN
Distribution: Various, mostly Slackware and PLD
Hardware Environment: ANY
Software Environment: ANY
Problem Description: `echo 0 > /proc/sys/net/ipv6/conf/all/autoconf' doesn't disable interfaces autoconfiguration

Steps to reproduce:
Changing values of /proc/sys/net/ipv6/conf/all/autoconf, /proc/sys/net/ipv6/conf/all/accept_ra and probably other /proc/sys/net/ipv6/conf/all/* controls don't cause anything. After `echo 0 > /proc/sys/net/ipv6/conf/all/autoconf' system still accepts router advertisement packets from gateway on every interface and set autoconfigured addresses.

Situation is rather deeper because autoconf is only an example and problem afflicts /proc/sys/net/ipv6/conf/all/* controls generally.

maintainer
#2 lore raw

From: Andrew Morton <[email protected]>
Date: Thu, 2 Oct 2008 23:18:26 -0700

Quoted 2 lines

(switched to email. Please respond via emailed reply-to-all, not via the bugzilla web interface).

Not a bug.

These "global" setting have to be set to the desired value before the device is created. And it is at creation time that these global values are "inherited" by the device.

Afterwards changes to the global value will not propagate to those devices again, because that might override a changed setting made by the user.

It is only newly created devices which get these values.

#3 lore raw
Quoted 11 lines · David Miller

Not a bug.

These "global" setting have to be set to the desired value before the device is created. And it is at creation time that these global values are "inherited" by the device.

Afterwards changes to the global value will not propagate to those devices again, because that might override a changed setting made by the user.

It is only newly created devices which get these values.

I understand you are talking about /proc/sys/net/ipv6/conf/default/* controls. If so, it's ok, but I talked about /proc/sys/net/ipv6/conf/all/* controls. Documentation/networking/ip-sysctl.txt says:

conf/default/*:
Change the interface-specific default settings.

conf/all/*:
Change all the interface-specific settings.

so what is the difference between default and all in the context of your statement? In my opinion, it could be understood that default settings are inherited and those from "all" directory change values for all current devices.

maintainer
#4 lore raw

From: Adam Osuchowski <[email protected]>
Date: Mon, 13 Oct 2008 12:13:34 +0200

Quoted 21 lines
Quoted 11 lines · David Miller

Not a bug.

These "global" setting have to be set to the desired value before the device is created. And it is at creation time that these global values are "inherited" by the device.

Afterwards changes to the global value will not propagate to those devices again, because that might override a changed setting made by the user.

It is only newly created devices which get these values.

I understand you are talking about /proc/sys/net/ipv6/conf/default/* controls. If so, it's ok, but I talked about /proc/sys/net/ipv6/conf/all/* controls. Documentation/networking/ip-sysctl.txt says:

conf/default/*:
Change the interface-specific default settings.

Quoted 7 lines

conf/all/*:
Change all the interface-specific settings.

so what is the difference between default and all in the context of your statement? In my opinion, it could be understood that default settings are inherited and those from "all" directory change values for all current devices.

Unfortunately not all "all" knobs are treated universally, only some of them all.

If you grep for "devconf_all" under net/ipv6 you'll see which ones get used and in what manner.

Of course, we'll need to tweak either the docs or the implementation to match :-)