• M
    net: stmmac: Fix channel lock initialization · 2b94f526
    Marek Szyprowski 提交于
    Commit 0366f7e0 ("net: stmmac: add ethtool support for get/set
    channels") refactored channel initialization, but during that operation,
    the spinlock initialization got lost. Fix this. This fixes the following
    lockdep warning:
    
    meson8b-dwmac ff3f0000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off
    INFO: trying to register non-static key.
    the code is fine but needs lockdep annotation.
    turning off the locking correctness validator.
    CPU: 1 PID: 331 Comm: kworker/1:2H Not tainted 5.9.0-rc3+ #1858
    Hardware name: Hardkernel ODROID-N2 (DT)
    Workqueue: kblockd blk_mq_run_work_fn
    Call trace:
     dump_backtrace+0x0/0x1d0
     show_stack+0x14/0x20
     dump_stack+0xe8/0x154
     register_lock_class+0x58c/0x590
     __lock_acquire+0x7c/0x1790
     lock_acquire+0xf4/0x440
     _raw_spin_lock_irqsave+0x80/0xb0
     stmmac_tx_timer+0x4c/0xb0 [stmmac]
     call_timer_fn+0xc4/0x3e8
     run_timer_softirq+0x2b8/0x6c0
     efi_header_end+0x114/0x5f8
     irq_exit+0x104/0x110
     __handle_domain_irq+0x60/0xb8
     gic_handle_irq+0x58/0xb0
     el1_irq+0xbc/0x180
     _raw_spin_unlock_irqrestore+0x48/0x90
     mmc_blk_rw_wait+0x70/0x160
     mmc_blk_mq_issue_rq+0x510/0x830
     mmc_mq_queue_rq+0x13c/0x278
     blk_mq_dispatch_rq_list+0x2a0/0x698
     __blk_mq_do_dispatch_sched+0x254/0x288
     __blk_mq_sched_dispatch_requests+0x190/0x1d8
     blk_mq_sched_dispatch_requests+0x34/0x70
     __blk_mq_run_hw_queue+0xcc/0x148
     blk_mq_run_work_fn+0x20/0x28
     process_one_work+0x2a8/0x718
     worker_thread+0x48/0x460
     kthread+0x134/0x160
     ret_from_fork+0x10/0x1c
    
    Fixes: 0366f7e0 ("net: stmmac: add ethtool support for get/set channels")
    Signed-off-by: NMarek Szyprowski <m.szyprowski@samsung.com>
    Link: https://lore.kernel.org/r/20201029185011.4749-1-m.szyprowski@samsung.comSigned-off-by: NJakub Kicinski <kuba@kernel.org>
    2b94f526
stmmac_main.c 145.4 KB