lkml.org 
[lkml]   [2008]   [Jan]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 47/49] jbd2: Mark jbd2 slabs as SLAB_TEMPORARY
    Date
    From: Mingming Cao <cmm@us.ibm.com>

    This patch marks slab allocations by jbd2 as short-lived in support of
    Mel Gorman's "Group short-lived and reclaimable kernel allocations"
    patch. (Ported from similar changes made to fs/jbd/journal.c and
    fs/jbd/revoke.c in Mel's patch.)

    Cc: Mel Gorman <mel@csn.ul.ie>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Mingming Cao <cmm@us.ibm.com>
    Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
    ---
    fs/jbd2/journal.c | 4 ++--
    fs/jbd2/revoke.c | 6 ++++--
    2 files changed, 6 insertions(+), 4 deletions(-)

    diff --git a/fs/jbd2/journal.c b/fs/jbd2/journal.c
    index f8b0f8c..8301e8d 100644
    --- a/fs/jbd2/journal.c
    +++ b/fs/jbd2/journal.c
    @@ -1975,7 +1975,7 @@ static int journal_init_jbd2_journal_head_cache(void)
    jbd2_journal_head_cache = kmem_cache_create("jbd2_journal_head",
    sizeof(struct journal_head),
    0, /* offset */
    - 0, /* flags */
    + SLAB_TEMPORARY, /* flags */
    NULL); /* ctor */
    retval = 0;
    if (jbd2_journal_head_cache == 0) {
    @@ -2271,7 +2271,7 @@ static int __init journal_init_handle_cache(void)
    jbd2_handle_cache = kmem_cache_create("jbd2_journal_handle",
    sizeof(handle_t),
    0, /* offset */
    - 0, /* flags */
    + SLAB_TEMPORARY, /* flags */
    NULL); /* ctor */
    if (jbd2_handle_cache == NULL) {
    printk(KERN_EMERG "JBD: failed to create handle cache\n");
    diff --git a/fs/jbd2/revoke.c b/fs/jbd2/revoke.c
    index 3595fd4..df36f42 100644
    --- a/fs/jbd2/revoke.c
    +++ b/fs/jbd2/revoke.c
    @@ -171,13 +171,15 @@ int __init jbd2_journal_init_revoke_caches(void)
    {
    jbd2_revoke_record_cache = kmem_cache_create("jbd2_revoke_record",
    sizeof(struct jbd2_revoke_record_s),
    - 0, SLAB_HWCACHE_ALIGN, NULL);
    + 0,
    + SLAB_HWCACHE_ALIGN|SLAB_TEMPORARY,
    + NULL);
    if (jbd2_revoke_record_cache == 0)
    return -ENOMEM;

    jbd2_revoke_table_cache = kmem_cache_create("jbd2_revoke_table",
    sizeof(struct jbd2_revoke_table_s),
    - 0, 0, NULL);
    + 0, SLAB_TEMPORARY, NULL);
    if (jbd2_revoke_table_cache == 0) {
    kmem_cache_destroy(jbd2_revoke_record_cache);
    jbd2_revoke_record_cache = NULL;
    --
    1.5.4.rc3.31.g1271-dirty


    \
     
     \ /
      Last update: 2008-01-22 04:09    [W:0.035 / U:90.652 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site