mirror of
https://github.com/torvalds/linux.git
synced 2026-05-28 00:53:34 +02:00
rtnetlink: add guard for RTNL
The new guard/scoped_gard can be useful for the RTNL as well,
so add a guard definition for it. It gets used like
{
guard(rtnl)();
// RTNL held until end of block
}
or
scoped_guard(rtnl) {
// RTNL held in this block
}
as with any other guard/scoped_guard.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
84c41dcaae
commit
464eb03c4a
|
|
@ -7,6 +7,7 @@
|
|||
#include <linux/netdevice.h>
|
||||
#include <linux/wait.h>
|
||||
#include <linux/refcount.h>
|
||||
#include <linux/cleanup.h>
|
||||
#include <uapi/linux/rtnetlink.h>
|
||||
|
||||
extern int rtnetlink_send(struct sk_buff *skb, struct net *net, u32 pid, u32 group, int echo);
|
||||
|
|
@ -46,6 +47,8 @@ extern int rtnl_is_locked(void);
|
|||
extern int rtnl_lock_killable(void);
|
||||
extern bool refcount_dec_and_rtnl_lock(refcount_t *r);
|
||||
|
||||
DEFINE_LOCK_GUARD_0(rtnl, rtnl_lock(), rtnl_unlock())
|
||||
|
||||
extern wait_queue_head_t netdev_unregistering_wq;
|
||||
extern atomic_t dev_unreg_count;
|
||||
extern struct rw_semaphore pernet_ops_rwsem;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user