Ignore:
Timestamp:
2017-08-20T14:53:21Z (7 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
3f74275
Parents:
49115ac
Message:

Hide kobject implementation details

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/src/kobject/kobject.c

    r49115ac re7ac23d0  
    3737#include <synch/spinlock.h>
    3838#include <abi/errno.h>
     39#include <mm/slab.h>
    3940
    4041void kobject_initialize(kobject_t *kobj)
     
    4243        kobj->type = KOBJECT_TYPE_INVALID;
    4344        kobj->can_reclaim = NULL;
     45}
     46
     47void kobject_task_alloc(task_t *task)
     48{
     49        task->kobject = malloc(sizeof(kobject_t) * MAX_KERNEL_OBJECTS, 0);
     50}
     51
     52void kobject_task_init(task_t *task)
     53{
     54        for (int cap = 0; cap < MAX_KERNEL_OBJECTS; cap++)
     55                kobject_initialize(&task->kobject[cap]);
     56}
     57
     58void kobject_task_free(task_t *task)
     59{
     60        free(task->kobject);
    4461}
    4562
     
    91108}
    92109
     110int kobject_to_cap(task_t *task, kobject_t *kobj)
     111{
     112        return kobj - task->kobject;
     113}
     114
    93115/** @}
    94116 */
Note: See TracChangeset for help on using the changeset viewer.