It seems the change was introduced here: https://patchwork.kernel.org/patch/9671147/
I drafted the following very simplistic patch, could somebody take a look at it? From 0c3c135cc65fa1fdd2521490c8f1edee41edcea2 Mon Sep 17 00:00:00 2001 From: gamanakis <[email protected]> Date: Sun, 18 Mar 2018 22:20:38 -0400 Subject: [PATCH] Fixes for 4.16 --- sch_cake.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/sch_cake.c b/sch_cake.c index 9f2acb5..f18273b 100644 --- a/sch_cake.c +++ b/sch_cake.c @@ -2364,7 +2364,12 @@ static void cake_reconfigure(struct Qdisc *sch) q->buffer_limit = min(q->buffer_limit, max(sch->limit * psched_mtu(qdisc_dev(sch)), q->buffer_config_limit)); } +#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0) static int cake_change(struct Qdisc *sch, struct nlattr *opt) +#else +static int cake_change(struct Qdisc *sch, struct nlattr *opt, + struct netlink_ext_ack *extack) +#endif { struct cake_sched_data *q = qdisc_priv(sch); struct nlattr *tb[TCA_CAKE_MAX + 1]; @@ -2500,7 +2505,12 @@ static void cake_destroy(struct Qdisc *sch) cake_free(q->tins); } +#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0) static int cake_init(struct Qdisc *sch, struct nlattr *opt) +#else +static int cake_init(struct Qdisc *sch, struct nlattr *opt, + struct netlink_ext_ack *extack) +#endif { struct cake_sched_data *q = qdisc_priv(sch); int i, j; @@ -2520,7 +2530,11 @@ static int cake_init(struct Qdisc *sch, struct nlattr *opt) q->cur_flow = 0; if (opt) { +#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0) int err = cake_change(sch, opt); +#else + int err = cake_change(sch, opt, extack); +#endif if (err) return err; -- 2.16.2 _______________________________________________ Cake mailing list [email protected] https://lists.bufferbloat.net/listinfo/cake
