lkml.org 
[lkml]   [2009]   [Apr]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 22/22] slab: Use nr_online_nodes to check for a NUMA platform
    Date
    SLAB currently avoids checking a bitmap repeatedly by checking once and
    storing a flag. When the addition of nr_online_nodes as a cheaper version
    of num_online_nodes(), this check can be replaced by nr_online_nodes.

    (Christoph did a patch that this is lifted almost verbatim from, hence the
    first Signed-off-by. Christoph, can you confirm you're ok with that?)

    Signed-off-by: Christoph Lameter <cl@linux.com>
    Signed-off-by: Mel Gorman <mel@csn.ul.ie>
    ---
    mm/slab.c | 7 ++-----
    1 files changed, 2 insertions(+), 5 deletions(-)

    diff --git a/mm/slab.c b/mm/slab.c
    index 1c680e8..4d38dc2 100644
    --- a/mm/slab.c
    +++ b/mm/slab.c
    @@ -892,7 +892,6 @@ static void __slab_error(const char *function, struct kmem_cache *cachep,
    */

    static int use_alien_caches __read_mostly = 1;
    -static int numa_platform __read_mostly = 1;
    static int __init noaliencache_setup(char *s)
    {
    use_alien_caches = 0;
    @@ -1453,10 +1452,8 @@ void __init kmem_cache_init(void)
    int order;
    int node;

    - if (num_possible_nodes() == 1) {
    + if (num_possible_nodes() == 1)
    use_alien_caches = 0;
    - numa_platform = 0;
    - }

    for (i = 0; i < NUM_INIT_LISTS; i++) {
    kmem_list3_init(&initkmem_list3[i]);
    @@ -3579,7 +3576,7 @@ static inline void __cache_free(struct kmem_cache *cachep, void *objp)
    * variable to skip the call, which is mostly likely to be present in
    * the cache.
    */
    - if (numa_platform && cache_free_alien(cachep, objp))
    + if (nr_online_nodes > 1 && cache_free_alien(cachep, objp))
    return;

    if (likely(ac->avail < ac->limit)) {
    --
    1.5.6.5


    \
     
     \ /
      Last update: 2009-04-22 16:05    [W:4.941 / U:0.068 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site