lkml.org 
[lkml]   [2010]   [Jul]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH 3/5] v2 Change the mutex name in the memory_block struct
    Change the name of the memory_block mutex since it is now used for
    more than just gating changes to the status of the memory sections
    covered by the memory sysfs directory.

    Signed-off-by: Nathan Fontenot <nfont@austin.ibm.com>
    ---
    drivers/base/memory.c | 20 ++++++++++----------
    include/linux/memory.h | 9 +--------
    2 files changed, 11 insertions(+), 18 deletions(-)

    Index: linux-2.6/drivers/base/memory.c
    ===================================================================
    --- linux-2.6.orig/drivers/base/memory.c 2010-07-15 09:56:05.000000000 -0500
    +++ linux-2.6/drivers/base/memory.c 2010-07-15 09:56:10.000000000 -0500
    @@ -144,14 +144,14 @@
    int ret = 1;

    mem = container_of(dev, struct memory_block, sysdev);
    - mutex_lock(&mem->state_mutex);
    + mutex_lock(&mem->mutex);

    list_for_each_entry(mbs, &mem->sections, next) {
    start_pfn = section_nr_to_pfn(mbs->phys_index);
    ret &= is_mem_section_removable(start_pfn, PAGES_PER_SECTION);
    }

    - mutex_unlock(&mem->state_mutex);
    + mutex_unlock(&mem->mutex);
    return sprintf(buf, "%d\n", ret);
    }

    @@ -263,7 +263,7 @@
    struct memory_block_section *mbs;
    int ret = 0;

    - mutex_lock(&mem->state_mutex);
    + mutex_lock(&mem->mutex);

    list_for_each_entry(mbs, &mem->sections, next) {
    if (mbs->state != from_state_req)
    @@ -288,7 +288,7 @@
    if (!ret)
    mem->state = to_state;

    - mutex_unlock(&mem->state_mutex);
    + mutex_unlock(&mem->mutex);
    return ret;
    }

    @@ -531,12 +531,12 @@
    return -ENOMEM;

    mem->state = state;
    - mutex_init(&mem->state_mutex);
    + mutex_init(&mem->mutex);
    start_pfn = section_nr_to_pfn(__section_nr(section));
    mem->phys_device = arch_get_memory_phys_device(start_pfn);
    INIT_LIST_HEAD(&mem->sections);

    - mutex_lock(&mem->state_mutex);
    + mutex_lock(&mem->mutex);

    ret = register_memory(mem, section);
    if (!ret)
    @@ -555,13 +555,13 @@
    }
    } else {
    kobject_put(&mem->sysdev.kobj);
    - mutex_lock(&mem->state_mutex);
    + mutex_lock(&mem->mutex);
    }

    if (!ret)
    ret = add_mem_block_section(mem, __section_nr(section), state);

    - mutex_unlock(&mem->state_mutex);
    + mutex_unlock(&mem->mutex);
    return ret;
    }

    @@ -573,7 +573,7 @@
    int section_nr = __section_nr(section);

    mem = find_memory_block(section);
    - mutex_lock(&mem->state_mutex);
    + mutex_lock(&mem->mutex);

    /* remove the specified section */
    list_for_each_entry_safe(mbs, tmp, &mem->sections, next) {
    @@ -583,7 +583,7 @@
    }
    }

    - mutex_unlock(&mem->state_mutex);
    + mutex_unlock(&mem->mutex);

    if (list_empty(&mem->sections)) {
    unregister_mem_sect_under_nodes(mem);
    Index: linux-2.6/include/linux/memory.h
    ===================================================================
    --- linux-2.6.orig/include/linux/memory.h 2010-07-15 09:56:05.000000000 -0500
    +++ linux-2.6/include/linux/memory.h 2010-07-15 09:56:10.000000000 -0500
    @@ -31,14 +31,7 @@
    unsigned long state;
    unsigned long start_phys_index;
    unsigned long end_phys_index;
    -
    - /*
    - * This serializes all state change requests. It isn't
    - * held during creation because the control files are
    - * created long after the critical areas during
    - * initialization.
    - */
    - struct mutex state_mutex;
    + struct mutex mutex;
    int phys_device; /* to which fru does this belong? */
    void *hw; /* optional pointer to fw/hw data */
    int (*phys_callback)(struct memory_block *);

    \
     
     \ /
      Last update: 2010-07-15 20:43    [W:0.030 / U:30.084 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site