• Jarek Poplawski's avatar
    pkt_sched: sch_generic: Fix oops in sch_teql · 9f3ffae0
    Jarek Poplawski authored
    After these commands:
    # modprobe sch_teql
    # tc qdisc add dev eth0 root teql0
    # tc qdisc del dev eth0 root
    we get an oops in teql_destroy() when spin_lock is taken from a null
    qdisc_sleeping pointer. It's because at the moment teql0 dev haven't
    been activated yet, and a qdisc_root_sleeping() is pointing to noop
    qdisc's netdev_queue with qdisc_sleeping uninitialized. This patch
    fixes this both for noop and noqueue netdev_queues to avoid similar
    problems in the future.
    Signed-off-by: default avatarJarek Poplawski <jarkao2@gmail.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    9f3ffae0
sch_generic.c 17.1 KB