Both Cong and David have pointed out it's not a good idea to have a
per-qdisc kernel thread. In this patch we replaced it with a delayed work.
Also applied other code review comments.
Changes in v2:
- Replace kernel thread with a delayed work.
- Check SPEED_UNKNOWN for link speed.
- Remove all inline keyword.
- Fix local variable declarations.
- Add some JSON output for iproute2.
- Fix compiler warnings reported by kernel test bot.
Thanks!
--
Xiangning Yu (2):
irq_work: Export symbol "irq_work_queue_on"
net: sched: Lockless Token Bucket (LTB) qdisc
include/uapi/linux/pkt_sched.h | 35 ++
kernel/irq_work.c | 2 +-
net/sched/Kconfig | 12 +
net/sched/Makefile | 1 +
net/sched/sch_ltb.c | 1255 ++++++++++++++++++++++++++++++++++++++++
5 files changed, 1304 insertions(+), 1 deletion(-)