mirror of
https://github.com/freebsd/freebsd-src
synced 2024-10-16 13:23:36 +00:00
Revert "ip_mroute: do not call epoch_waitwhen lock is taken"
This reverts commit 2e72208b6c
.
This commit is contained in:
parent
a0f3abb098
commit
58630bdd13
|
@ -365,12 +365,11 @@ extern int (*ip_mrouter_set)(struct socket *, struct sockopt *);
|
|||
extern int (*ip_mrouter_get)(struct socket *, struct sockopt *);
|
||||
extern int (*ip_mrouter_done)(void);
|
||||
extern int (*mrt_ioctl)(u_long, caddr_t, int);
|
||||
extern int ip_mrouter_critical_section_cnt;
|
||||
|
||||
#define MROUTER_RLOCK_TRACKER
|
||||
#define MROUTER_RLOCK() atomic_add_int(&ip_mrouter_critical_section_cnt, 1)
|
||||
#define MROUTER_RUNLOCK() atomic_subtract_int(&ip_mrouter_critical_section_cnt, 1)
|
||||
#define MROUTER_WAIT() do {} while (atomic_load_int(&ip_mrouter_critical_section_cnt) != 0)
|
||||
#define MROUTER_RLOCK_TRACKER struct epoch_tracker mrouter_et
|
||||
#define MROUTER_RLOCK() epoch_enter_preempt(net_epoch_preempt, &mrouter_et)
|
||||
#define MROUTER_RUNLOCK() epoch_exit_preempt(net_epoch_preempt, &mrouter_et)
|
||||
#define MROUTER_WAIT() epoch_wait_preempt(net_epoch_preempt)
|
||||
|
||||
#endif /* _KERNEL */
|
||||
|
||||
|
|
|
@ -120,7 +120,6 @@ VNET_DEFINE(struct socket *, ip_mrouter);
|
|||
int (*ip_mrouter_set)(struct socket *, struct sockopt *);
|
||||
int (*ip_mrouter_get)(struct socket *, struct sockopt *);
|
||||
int (*ip_mrouter_done)(void);
|
||||
int ip_mrouter_critical_section_cnt;
|
||||
int (*ip_mforward)(struct ip *, struct ifnet *, struct mbuf *,
|
||||
struct ip_moptions *);
|
||||
int (*mrt_ioctl)(u_long, caddr_t, int);
|
||||
|
|
Loading…
Reference in a new issue