Commit 752beb5e authored by Konstantin Khlebnikov's avatar Konstantin Khlebnikov Committed by David S. Miller

net: bpfilter: fallback to netfilter if failed to load bpfilter kernel module

If bpfilter is not available return ENOPROTOOPT to fallback to netfilter.

Function request_module() returns both errors and userspace exit codes.
Just ignore them. Rechecking bpfilter_ops is enough.

Fixes: d2ba09c1 ("net: add skeleton of bpfilter kernel module")
Signed-off-by: default avatarKonstantin Khlebnikov <khlebnikov@yandex-team.ru>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent a9eeb998
...@@ -30,13 +30,11 @@ static int bpfilter_mbox_request(struct sock *sk, int optname, ...@@ -30,13 +30,11 @@ static int bpfilter_mbox_request(struct sock *sk, int optname,
mutex_lock(&bpfilter_ops.lock); mutex_lock(&bpfilter_ops.lock);
if (!bpfilter_ops.sockopt) { if (!bpfilter_ops.sockopt) {
mutex_unlock(&bpfilter_ops.lock); mutex_unlock(&bpfilter_ops.lock);
err = request_module("bpfilter"); request_module("bpfilter");
mutex_lock(&bpfilter_ops.lock); mutex_lock(&bpfilter_ops.lock);
if (err)
goto out;
if (!bpfilter_ops.sockopt) { if (!bpfilter_ops.sockopt) {
err = -ECHILD; err = -ENOPROTOOPT;
goto out; goto out;
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment