Changeset e9d15d9 in mainline for kernel/generic/src/proc/task.c


Ignore:
Timestamp:
2017-08-18T21:15:26Z (7 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
24abb85d
Parents:
1c85bae
Message:

Turn IRQ structures into kernel objects

ipc_irq_subscribe() now returns a capability for the underlying IRQ kernel
object. ipc_irq_unsubscribe() can now be done only with a valid IRQ capability.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/src/proc/task.c

    r1c85bae re9d15d9  
    5050#include <adt/btree.h>
    5151#include <adt/list.h>
     52#include <kobject/kobject.h>
    5253#include <ipc/ipc.h>
    5354#include <ipc/ipcrsc.h>
     
    166167       
    167168        list_initialize(&task->threads);
    168 
    169         int cap;
    170         for (cap = 0; cap < MAX_KERNEL_OBJECTS; cap++)
    171                 kobject_init(&task->kobject[cap]);
     169       
     170        task->kobject = malloc(sizeof(kobject_t) * MAX_KERNEL_OBJECTS, 0);
    172171       
    173172        ipc_answerbox_init(&task->answerbox, task);
     
    206205        task->ucycles = 0;
    207206        task->kcycles = 0;
     207
     208        int cap;
     209        for (cap = 0; cap < MAX_KERNEL_OBJECTS; cap++)
     210                kobject_initialize(&task->kobject[cap]);
    208211
    209212        task->ipc_info.call_sent = 0;
     
    282285        as_release(task->as);
    283286       
     287        free(task->kobject);
     288
    284289        slab_free(task_slab, task);
    285290}
Note: See TracChangeset for help on using the changeset viewer.