Changeset 41deb2a in mainline for kernel/generic/src/lib/ra.c


Ignore:
Timestamp:
2011-12-30T19:27:15Z (13 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
efb48eb
Parents:
0fd9b35
Message:

Allocate ra_segment_t from a dedicated slab cache.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/src/lib/ra.c

    r0fd9b35 r41deb2a  
    5555#include <synch/spinlock.h>
    5656
     57static slab_cache_t *ra_segment_cache;
     58
    5759#define USED_BUCKETS    1024
    5860
     
    9092        ra_segment_t *seg;
    9193
    92         seg = (ra_segment_t *) malloc(sizeof(ra_segment_t), FRAME_ATOMIC);
     94        seg = slab_alloc(ra_segment_cache, FRAME_ATOMIC);
    9395        if (!seg)
    9496                return NULL;
     
    105107static void ra_segment_destroy(ra_segment_t *seg)
    106108{
    107         free(seg);
     109        slab_free(ra_segment_cache, seg);
    108110}
    109111
     
    420422}
    421423
     424void ra_init(void)
     425{
     426        ra_segment_cache = slab_cache_create("segment_cache",
     427            sizeof(ra_segment_t), 0, NULL, NULL, SLAB_CACHE_MAGDEFERRED);
     428}
    422429
    423430/** @}
Note: See TracChangeset for help on using the changeset viewer.