Changeset e9d15d9 in mainline for kernel/generic/src/kobject/kobject.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/kobject/kobject.c

    r1c85bae re9d15d9  
    3636#include <proc/task.h>
    3737#include <synch/spinlock.h>
     38#include <abi/errno.h>
    3839
    39 void kobject_init(kobject_t *kobj)
     40void kobject_initialize(kobject_t *kobj)
    4041{
    4142        kobj->type = KOBJECT_TYPE_INVALID;
     
    6667                if (kobj->type > KOBJECT_TYPE_ALLOCATED) {
    6768                        if (kobj->can_reclaim && kobj->can_reclaim(kobj))
    68                                 kobject_init(kobj);
     69                                kobject_initialize(kobj);
    6970                }
    7071                if (kobj->type == KOBJECT_TYPE_INVALID) {
     
    7677        irq_spinlock_unlock(&task->lock, true);
    7778
    78         return KOBJECT_INVALID_CAP;
     79        return ELIMIT;
    7980}
    8081
     
    8687
    8788        irq_spinlock_lock(&task->lock, true);
    88         kobject_init(&task->kobject[cap]);
     89        kobject_initialize(&task->kobject[cap]);
    8990        irq_spinlock_unlock(&task->lock, true);
    9091}
Note: See TracChangeset for help on using the changeset viewer.