lkml.org 
[lkml]   [2008]   [Feb]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] mm: fix dma_poor_create

* Yinghai Lu <Yinghai.Lu@Sun.COM> wrote:

> dev_to_node could return node that without RAM. So check it before use
> it in kmalloc_node

> - retval = kmalloc_node(sizeof(*retval), GFP_KERNEL, dev_to_node(dev));
> + node = dev_to_node(dev);
> + if (node == -1 || !node_online(node))
> + node = numa_node_id();
> +
> + retval = kmalloc_node(sizeof(*retval), GFP_KERNEL, node);

so this is about not crashing during bootup on nodes that have CPUs but
which have no node-specific memory attached, right?

Shouldnt kmalloc_node() be made more robust instead? I.e. push the same
code into kmalloc_node() - and make sure it will allocate _something_?
That would probably also fix a similar bug in net/core/skbuff.c's
__netdev_alloc_skb(), which too passes a dev_to_node() result to an
allocator.

Ingo


\
 
 \ /
  Last update: 2008-02-20 07:55    [W:0.178 / U:0.080 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site