Subject: Re: [Cake] [PATCH net-next v2] Add Common Applications Kept Enhanced (cake) qdisc

From: Toke Høiland-Jørgensen <[email-masked]>
Date: Tue, 24 Apr 2018 17:41:32 +0200

Georgios Amanakis <[email-masked]> writes:

> On Tue, 24 Apr 2018 13:44:06 +0200
> Toke Høiland-Jørgensen <[email-masked]> wrote:
>
>> +config NET_SCH_CAKE
>> +       tristate "Common Applications Kept Enhanced (CAKE)"
>> +       help
>> +         Say Y here if you want to use the Common Applications Kept Enhanced
>> +          (CAKE) queue management algorithm.
>> +
>> +         To compile this driver as a module, choose M here: the module
>> +         will be called sch_cake.
>
> In net/sched/Kconfig we should probably add NF_CONNTRACK as a dependency:
> "depends on NF_CONNTRACK"
>
> Otherwise if NET_SCH_CAKE=y and NF_CONNTRACK=m compilation fails with:
>
> net/sched/sch_cake.o: In function `cake_enqueue':
> sch_cake.c:(.text+0x3e10): undefined reference to `nf_ct_get_tuplepr'
> sch_cake.c:(.text+0x3e3a): undefined reference to `nf_conntrack_find_get'
> make: *** [Makefile:1041: vmlinux] Error 1

Hmm we really don't want to have a hard depend on conntrack. We
currently ifdef the conntrack-specific bits thus:
#if IS_ENABLED(CONFIG_NF_CONNTRACK).

Does anyone know if there is a way to do this so the module/builtin
split doesn't bite us?

-Toke