|
@@ -81,11 +81,9 @@ EXPORT_SYMBOL_GPL(nf_ct_deliver_cached_events);
|
|
|
int nf_conntrack_register_notifier(struct nf_ct_event_notifier *new)
|
|
|
{
|
|
|
int ret = 0;
|
|
|
- struct nf_ct_event_notifier *notify;
|
|
|
|
|
|
mutex_lock(&nf_ct_ecache_mutex);
|
|
|
- notify = rcu_dereference(nf_conntrack_event_cb);
|
|
|
- if (notify != NULL) {
|
|
|
+ if (nf_conntrack_event_cb != NULL) {
|
|
|
ret = -EBUSY;
|
|
|
goto out_unlock;
|
|
|
}
|
|
@@ -101,11 +99,8 @@ EXPORT_SYMBOL_GPL(nf_conntrack_register_notifier);
|
|
|
|
|
|
void nf_conntrack_unregister_notifier(struct nf_ct_event_notifier *new)
|
|
|
{
|
|
|
- struct nf_ct_event_notifier *notify;
|
|
|
-
|
|
|
mutex_lock(&nf_ct_ecache_mutex);
|
|
|
- notify = rcu_dereference(nf_conntrack_event_cb);
|
|
|
- BUG_ON(notify != new);
|
|
|
+ BUG_ON(nf_conntrack_event_cb != new);
|
|
|
rcu_assign_pointer(nf_conntrack_event_cb, NULL);
|
|
|
mutex_unlock(&nf_ct_ecache_mutex);
|
|
|
}
|
|
@@ -114,11 +109,9 @@ EXPORT_SYMBOL_GPL(nf_conntrack_unregister_notifier);
|
|
|
int nf_ct_expect_register_notifier(struct nf_exp_event_notifier *new)
|
|
|
{
|
|
|
int ret = 0;
|
|
|
- struct nf_exp_event_notifier *notify;
|
|
|
|
|
|
mutex_lock(&nf_ct_ecache_mutex);
|
|
|
- notify = rcu_dereference(nf_expect_event_cb);
|
|
|
- if (notify != NULL) {
|
|
|
+ if (nf_expect_event_cb != NULL) {
|
|
|
ret = -EBUSY;
|
|
|
goto out_unlock;
|
|
|
}
|
|
@@ -134,11 +127,8 @@ EXPORT_SYMBOL_GPL(nf_ct_expect_register_notifier);
|
|
|
|
|
|
void nf_ct_expect_unregister_notifier(struct nf_exp_event_notifier *new)
|
|
|
{
|
|
|
- struct nf_exp_event_notifier *notify;
|
|
|
-
|
|
|
mutex_lock(&nf_ct_ecache_mutex);
|
|
|
- notify = rcu_dereference(nf_expect_event_cb);
|
|
|
- BUG_ON(notify != new);
|
|
|
+ BUG_ON(nf_expect_event_cb != new);
|
|
|
rcu_assign_pointer(nf_expect_event_cb, NULL);
|
|
|
mutex_unlock(&nf_ct_ecache_mutex);
|
|
|
}
|