Latest working kernel version: -- Earliest failing kernel version: -- Distribution: Debian sid Hardware Environment: model name : Intel(R) Pentium(R) Dual CPU E2180 @ 2.00GHz Software Environment: Problem Description: Linux is unable to handle more than ~4096 ipv6 addresses and usually crashes after a not very long time. If not, it at least gets unusable slow. Consider shared hosting environments, where you have some few thousand customers with a few domains each sitting on one box. You now would like to use ipv6 for greater fun with https and, for that, need about 6-30k addresses bound to the box. Steps to reproduce: #!/bin/bash COUNTER=1 COUNTERR=1 while [ $COUNTERR -lt 9999 ]; do while [ $COUNTER -lt 9999 ]; do ip addr add 2001::$COUNTERR:$COUNTER/64 dev eth1 let COUNTER=COUNTER+1 echo $CONTERR $COUNTER done let COUNTERR=COUNTER+1 done
Reply-To: akpm@linux-foundation.org (switched to email. Please respond via emailed reply-to-all, not via the bugzilla web interface). On Tue, 24 Feb 2009 11:35:25 -0800 (PST) bugme-daemon@bugzilla.kernel.org wrote: > http://bugzilla.kernel.org/show_bug.cgi?id=12772 > > Summary: linux is not able to handle more than ~4096 ipv6 > addresses > Product: Networking > Version: 2.5 > KernelVersion: 2.6.26-1-amd64 #1 SMP Sat Jan 10 19:55:48 UTC 2009 > x86_64 GNU/Li That's a fairly old kernel. > Platform: All > OS/Version: Linux > Tree: Mainline > Status: NEW > Severity: normal > Priority: P1 > Component: IPV6 > AssignedTo: yoshfuji@linux-ipv6.org > ReportedBy: tobias@linuxdingsda.de > > > Latest working kernel version: -- > Earliest failing kernel version: -- > Distribution: Debian sid > Hardware Environment: model name : Intel(R) Pentium(R) Dual CPU E2180 > @ > 2.00GHz > Software Environment: > Problem Description: > Linux is unable to handle more than ~4096 ipv6 addresses and usually crashes > after a not very long time. If not, it at least gets unusable slow. > > Consider shared hosting environments, where you have some few thousand > customers with a few domains each sitting on one box. You now would like to > use > ipv6 for greater fun with https and, for that, need about 6-30k addresses > bound > to the box. > > > Steps to reproduce: > > #!/bin/bash > COUNTER=1 > COUNTERR=1 > while [ $COUNTERR -lt 9999 ]; do > while [ $COUNTER -lt 9999 ]; do > ip addr add 2001::$COUNTERR:$COUNTER/64 dev eth1 > let COUNTER=COUNTER+1 > echo $CONTERR $COUNTER > done > let COUNTERR=COUNTER+1 > done >
Point taken. I just gave it a try with 2.6.29-rc6 and the problem persists. Andrew Morton wrote: > (switched to email. Please respond via emailed reply-to-all, not via the > bugzilla web interface). > > On Tue, 24 Feb 2009 11:35:25 -0800 (PST) > bugme-daemon@bugzilla.kernel.org wrote: > >> http://bugzilla.kernel.org/show_bug.cgi?id=12772 >> >> Summary: linux is not able to handle more than ~4096 ipv6 >> addresses >> Product: Networking >> Version: 2.5 >> KernelVersion: 2.6.26-1-amd64 #1 SMP Sat Jan 10 19:55:48 UTC 2009 >> x86_64 GNU/Li > > That's a fairly old kernel. > >> Platform: All >> OS/Version: Linux >> Tree: Mainline >> Status: NEW >> Severity: normal >> Priority: P1 >> Component: IPV6 >> AssignedTo: yoshfuji@linux-ipv6.org >> ReportedBy: tobias@linuxdingsda.de >> >> >> Latest working kernel version: -- >> Earliest failing kernel version: -- >> Distribution: Debian sid >> Hardware Environment: model name : Intel(R) Pentium(R) Dual CPU E2180 >> @ >> 2.00GHz >> Software Environment: >> Problem Description: >> Linux is unable to handle more than ~4096 ipv6 addresses and usually crashes >> after a not very long time. If not, it at least gets unusable slow. >> >> Consider shared hosting environments, where you have some few thousand >> customers with a few domains each sitting on one box. You now would like to >> use >> ipv6 for greater fun with https and, for that, need about 6-30k addresses >> bound >> to the box. >> >> >> Steps to reproduce: >> >> #!/bin/bash >> COUNTER=1 >> COUNTERR=1 >> while [ $COUNTERR -lt 9999 ]; do >> while [ $COUNTER -lt 9999 ]; do >> ip addr add 2001::$COUNTERR:$COUNTER/64 dev eth1 >> let COUNTER=COUNTER+1 >> echo $CONTERR $COUNTER >> done >> let COUNTERR=COUNTER+1 >> done >> >
If this is still seen on modern kernels then please re-open/update and report the relevant example and use case to netdev@vger.kernel.org