[NET_SCHED]: sch_ingress: move dependencies to Kconfig

Instead of complaining at scheduler initialization time, check the
dependencies in Kconfig.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Acked-by: Jamal Hadi Salim <hadi@cyberus.ca>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Patrick McHardy 2008-01-21 00:13:19 -08:00 committed by David S. Miller
parent c6ee877f2e
commit 645a1e39e4
2 changed files with 3 additions and 11 deletions

View file

@ -198,6 +198,7 @@ config NET_SCH_NETEM
config NET_SCH_INGRESS
tristate "Ingress Qdisc"
depends on NET_CLS_ACT || NETFILTER
---help---
Say Y here if you want to use classifiers for incoming packets.
If unsure, say Y.

View file

@ -162,19 +162,10 @@ static struct nf_hook_ops ing_ops[] __read_mostly = {
static int ingress_init(struct Qdisc *sch, struct rtattr *opt)
{
/* Make sure either netfilter or preferably CLS_ACT is
* compiled in */
#ifndef CONFIG_NET_CLS_ACT
#ifndef CONFIG_NETFILTER
printk("You MUST compile classifier actions into the kernel\n");
return -EINVAL;
#else
printk("Ingress scheduler: Classifier actions prefered over netfilter\n");
#endif
#endif
#ifndef CONFIG_NET_CLS_ACT
#ifdef CONFIG_NETFILTER
printk("Ingress scheduler: Classifier actions prefered over netfilter\n");
if (!nf_registered) {
if (nf_register_hooks(ing_ops, ARRAY_SIZE(ing_ops)) < 0) {
printk("ingress qdisc registration error \n");