Messages in this thread | | | Subject | Re: OOM when adding ipv6 route: How to make available more per-cpu memory? | From | Eric Dumazet <> | Date | Fri, 05 Nov 2010 23:11:43 +0100 |
| |
Le vendredi 05 novembre 2010 à 21:20 +0100, Eric Dumazet a écrit : > Your vmalloc space is very fragmented. pcpu_get_vm_areas() want > hugepages (4MB on your machine, 2MB on mine because I have > CONFIG_HIGHMEM64G=y)
Well, this is wrong. We use normal (4KB) pages, unfortunately.
I have a NUMA machine, with two nodes, so pcpu_get_vm_areas() allocates two zones, one for each node, with a 'known' offset between them. Then, 4KB pages are allocated to populate the zone when needed.
# grep pcpu_get_vm_areas /proc/vmallocinfo 0xffffe8ffa0400000-0xffffe8ffa0600000 2097152 pcpu_get_vm_areas+0x0/0x740 vmalloc 0xffffe8ffffc00000-0xffffe8ffffe00000 2097152 pcpu_get_vm_areas+0x0/0x740 vmalloc
BTW, we dont have the number of pages currently allocated in each 'vmalloc' zone, and/or node information.
Tejun, do you have plans to use hugepages eventually ? (and fallback to 4KB pages, but most percpu data are allocated right after boot)
Thanks
-- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |