[<prev] [next>] [day] [month] [year] [list]
Message-ID: <7e63f56c0706260758y728ef242o2262d2c1a0c97181@mail.gmail.com>
Date: Tue, 26 Jun 2007 16:58:15 +0200
From: "Robert Iakobashvili" <coroberti@...il.com>
To: djones@...sove.com
Cc: linux-kernel@...r.kernel.org, netdev@...r.kernel.org,
"Andrew Morton" <akpm@...ux-foundation.org>
Subject: Re: Scaling Max IP address limitation
Hi David,
On 6/25/07, David Jones <djones@...sove.com> wrote:
> Ok I have tried it on a Pentium-M ( 32 Bit ,) with 512 MB RAM and Core
> 2 Duo with 1Gig RAM ( running SMP kernel , 2 CPUS) with same results.
> Cant go more than ~4K addresses. I have tried them with vanilla and
> custom kernels all 2.6.19+ versions. Results are same on both systems ,
> so thats the reason I am thinking that there is some limit in kernel
>
> >> On Jun 25 2007 12:41, Robert Iakobashvili wrote:
> >> >> > I am getting after initial successes some errors:
> >> >> > "rtnl_talk(): RTNETLINK answers: Cannot allocate memory"
> >> >> > and
> >> >> > #ip addr | wc-l is 8194.
>
Looking into 2.6.20 sources:
IPv6 addresses are added via rtnetlink by:
inet6_rtm_newaddr ()
inet6_addr_add ()
ipv6_add_addr (),
where inet6_ifaddr structure is allocated by kzalloc ()
IPv4 addresses are added via rtnetlink by:
inet_rtm_newaddr () with further __inet_insert_ifa ()
inet_rtm_newaddr () allocates in_ifaddr structure by kzalloc ()
Structure inet6_ifaddr is ~85-95 bytes (depending on config options,
arch, etc),
structure in_ifaddr is ~55-60 bytes (also depending). It looks like
the case, when
size does matter.
:)
When adding secondary IPv4 addresses from /proc/slabinfo is seen, that
slab "size-64" is used, whereas for IPv6 addresses "size-128" is in use.
There should be a way to make some fine tuning and, most probably, memory
allocation for the right pool (in your case "size-128").
I do recall some echo to /proc/slabinfo, but there were some evil details.
Probably, some great people of the netdev list can advise you, how to
increase memory resources in the right direction.
Hopefully it explains the facts and directs you.
Take care,
Sincerely,
Robert Iakobashvili,
coroberti %x40 gmail %x2e com
...........................................................
http://curl-loader.sourceforge.net
A web testing and traffic generation tool.
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists