obj: implement link objects
This commit is contained in:
15
obj/object.c
15
obj/object.c
@@ -10,6 +10,7 @@ static spin_lock_t object_types_lock = SPIN_LOCK_INIT;
|
||||
kern_status_t object_bootstrap(void)
|
||||
{
|
||||
init_set_objects();
|
||||
init_link_objects();
|
||||
init_global_namespace();
|
||||
return KERN_OK;
|
||||
}
|
||||
@@ -96,12 +97,22 @@ void object_deref(struct object *obj)
|
||||
vm_cache_free(&obj->ob_type->ob_cache, obj);
|
||||
}
|
||||
|
||||
void object_lock(struct object *obj, unsigned long *flags)
|
||||
void object_lock(struct object *obj)
|
||||
{
|
||||
spin_lock(&obj->ob_lock);
|
||||
}
|
||||
|
||||
void object_unlock(struct object *obj)
|
||||
{
|
||||
spin_unlock(&obj->ob_lock);
|
||||
}
|
||||
|
||||
void object_lock_irqsave(struct object *obj, unsigned long *flags)
|
||||
{
|
||||
spin_lock_irqsave(&obj->ob_lock, flags);
|
||||
}
|
||||
|
||||
void object_unlock(struct object *obj, unsigned long flags)
|
||||
void object_unlock_irqrestore(struct object *obj, unsigned long flags)
|
||||
{
|
||||
spin_unlock_irqrestore(&obj->ob_lock, flags);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user