lkml.org 
[lkml]   [2012]   [Dec]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] mm/sparse: don't check return value of alloc_bootmem calls
    On 12/20/2012 03:23 PM, David Rientjes wrote:
    > On Thu, 20 Dec 2012, Sasha Levin wrote:
    >
    >> diff --git a/mm/sparse.c b/mm/sparse.c
    >> index 6b5fb76..ae64d6e 100644
    >> --- a/mm/sparse.c
    >> +++ b/mm/sparse.c
    >> @@ -403,15 +403,13 @@ void __init sparse_mem_maps_populate_node(struct page **map_map,
    >> size = PAGE_ALIGN(size);
    >> map = __alloc_bootmem_node_high(NODE_DATA(nodeid), size * map_count,
    >> PAGE_SIZE, __pa(MAX_DMA_ADDRESS));
    >> - if (map) {
    >> - for (pnum = pnum_begin; pnum < pnum_end; pnum++) {
    >> - if (!present_section_nr(pnum))
    >> - continue;
    >> - map_map[pnum] = map;
    >> - map += size;
    >> - }
    >> - return;
    >> + for (pnum = pnum_begin; pnum < pnum_end; pnum++) {
    >> + if (!present_section_nr(pnum))
    >> + continue;
    >> + map_map[pnum] = map;
    >> + map += size;
    >> }
    >> + return;
    >>
    >> /* fallback */
    >> for (pnum = pnum_begin; pnum < pnum_end; pnum++) {
    >
    > That's not true when slab_is_available() and why would you possibly add a
    > return statement right before fallback code in such cases?

    So what we really need is to update the documentation of __alloc_bootmem_node, I'll send
    a patch that does that instead.

    I've dragged the 'return' out of the if(map) condition, I should have removed the fallback
    as well and so the return would also be gone, but that's irrelevant now.


    Thanks,
    Sasha


    \
     
     \ /
      Last update: 2012-12-20 22:21    [W:3.232 / U:0.080 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site