kerne: object: add lock_pair() functions to object lock template macro
This commit is contained in:
@@ -33,6 +33,18 @@ extern "C" {
|
|||||||
{ \
|
{ \
|
||||||
object_unlock_irqrestore(&p->base, flags); \
|
object_unlock_irqrestore(&p->base, flags); \
|
||||||
} \
|
} \
|
||||||
|
static inline void object_name##_lock_pair( \
|
||||||
|
struct object_name *a, \
|
||||||
|
struct object_name *b) \
|
||||||
|
{ \
|
||||||
|
object_lock_pair(&a->base, &b->base); \
|
||||||
|
} \
|
||||||
|
static inline void object_name##_unlock_pair( \
|
||||||
|
struct object_name *a, \
|
||||||
|
struct object_name *b) \
|
||||||
|
{ \
|
||||||
|
object_unlock_pair(&a->base, &b->base); \
|
||||||
|
} \
|
||||||
static inline void object_name##_lock_pair_irqsave( \
|
static inline void object_name##_lock_pair_irqsave( \
|
||||||
struct object_name *a, \
|
struct object_name *a, \
|
||||||
struct object_name *b, \
|
struct object_name *b, \
|
||||||
@@ -109,6 +121,9 @@ extern void object_unlock(struct object *obj);
|
|||||||
extern void object_lock_irqsave(struct object *obj, unsigned long *flags);
|
extern void object_lock_irqsave(struct object *obj, unsigned long *flags);
|
||||||
extern void object_unlock_irqrestore(struct object *obj, unsigned long flags);
|
extern void object_unlock_irqrestore(struct object *obj, unsigned long flags);
|
||||||
|
|
||||||
|
extern void object_lock_pair(struct object *a, struct object *b);
|
||||||
|
extern void object_unlock_pair(struct object *a, struct object *b);
|
||||||
|
|
||||||
extern void object_lock_pair_irqsave(
|
extern void object_lock_pair_irqsave(
|
||||||
struct object *a,
|
struct object *a,
|
||||||
struct object *b,
|
struct object *b,
|
||||||
|
|||||||
Reference in New Issue
Block a user