Received: by 2002:a25:ab43:0:0:0:0:0 with SMTP id u61csp1046714ybi; Fri, 24 May 2019 16:10:43 -0700 (PDT) X-Google-Smtp-Source: APXvYqwf7vXzcvVrkEztS4jEzjlLkRX76ch7HVO7Dk14kupclTAiq6yyFUX7KooU2F7Tk9TCkdO7 X-Received: by 2002:a17:902:7e4f:: with SMTP id a15mr109987116pln.205.1558739443366; Fri, 24 May 2019 16:10:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1558739443; cv=none; d=google.com; s=arc-20160816; b=zhwX68DeNLfp0V8dZpiY+yRFcHuA7wJRnCfJWzwjgJ5V8Q8De15GDv4pwysfREMkkw QkViWRDfF7uUSHEgXzU57yxYy93URzD9UNyeO+XkvA9/AIUP+vMXwCFbjKtkrFx4iPkM j0OyWP3OQYc3HxPH8kcDVWYlsxUfO+sfz67hFT9RRzcSD0XMLOUu2qZCV+mW4xyfj3VM CtZDFuIDIkyr2ZiAgupAN03NLrlFWX62IcKJnoG6UGewhMMlMaM7n1zHR7ulrUWVlj3U k/x8Lk0L6i0wSD9YsIZ4ZyJrGQkczXoQIdLqT+vnnF8VELgdcM6l2dhD2NijSWzsLLHS xK1g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:message-id :subject:cc:to:from:date:dkim-signature; bh=t4FvAvg9bJ//lnX63nmn/Q4iAH/LdGoA3M8COrAtO5o=; b=bRc5sMoTbcXB3ytH+h7OcFO0ovwAb4aaLjx6VbNxphjNAgzHYEQeIPoVgNbErscbMi FRAVJVsSk9cwW8b/dQQ6tnDVGZ3d+cZpJUZPq4HEo0AET7cAa6ZcCoLfzINAN2UIq5rW nrPsYOgBGcZcPgTvbOO6bx8K1Yo0MoFxgiyJdsQkUAIe9QXh609CdEfYJVmWB5gEaDbz flDEhF8RM5VboaO4yRe2MdhvPDp1nrnZAB55+7yCkOS6LWVXHSsTqjtz2klnhe0GBTjR gmPbUOAwIxEHifZhFf0kYLgPRR8fvdIvGAobITwqYfMW/KXleMW+t3zUQ/8tAPZ8hpYn oWsw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b="fmvQ/o/k"; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id ay7si5934527plb.135.2019.05.24.16.10.27; Fri, 24 May 2019 16:10:43 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b="fmvQ/o/k"; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732183AbfEXXJJ (ORCPT + 99 others); Fri, 24 May 2019 19:09:09 -0400 Received: from mail-pl1-f173.google.com ([209.85.214.173]:44229 "EHLO mail-pl1-f173.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727091AbfEXXJJ (ORCPT ); Fri, 24 May 2019 19:09:09 -0400 Received: by mail-pl1-f173.google.com with SMTP id c5so4715657pll.11 for ; Fri, 24 May 2019 16:09:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:from:to:cc:subject:message-id:user-agent:mime-version; bh=t4FvAvg9bJ//lnX63nmn/Q4iAH/LdGoA3M8COrAtO5o=; b=fmvQ/o/ka1/HM4lgDFF+deJAz5cVsdNABJK7N4AsyOygt56GwrtoFkH/OROO/AW9mN IWjNTT0d4/NCgMEG1ArK8BDShVPYTfMKAJhebhhTLhW/0AxhsJ+8njQaY3UyQzexg4Z2 1VbKpt+5I8VsmqiEryFLa9m3ymMLTYLLv7mEIBMRyfcwWnNlNHcBUHUW8feLLhjZcQuT PG5dTnPUr2ORe+GvTnwjMuoxADmWFQJJXRRwd6zQorACoE8JEexdMyK4ITqONXsuQaY+ fYNt5S7cRiGYpEkJFAMEmZWSIswX3v1ocaRmDORESLBDQ4UjmOzNBoEJN7t91m0WltRn ou5w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:user-agent :mime-version; bh=t4FvAvg9bJ//lnX63nmn/Q4iAH/LdGoA3M8COrAtO5o=; b=phu3XX3x+v13usQmhab7sbqzXQqCufqyX88yWYlkm12t2FtcEiZ62APxqPJqY/SauF U3URgObfdPHjX0GtsxlzHCT05S4qynwd67f6tQ9jXIRfOPL15H5dwhCO5yiN8iMmkkFM yVZWCiYXmikNv+1urafRgY9O7rSDZxUxx2iC8C54wDTndW6qwzs7NwyGlvRiG8OCiDzX 5vfpZwij/7tUvbM6Al7fZQWFQygH/8cAFK3vJuP2S+rjyBmrrzu1KAyQzlvaXE+lc1T9 0Qhx/7qoqVI3czLa9BakvmLwgfiJmBGFBRmhx0PrKmZIDDUPlJgXfOOhoNDF8NjCecFV cYbg== X-Gm-Message-State: APjAAAVR1NgsO/CMlQOJS88lFZpd439tIdI3Ka/RpGrVZ4tC8lNnY/hp sh3F5tUXK3CMaPwIe+29D4kFNQ== X-Received: by 2002:a17:902:5e1:: with SMTP id f88mr61903480plf.226.1558738940335; Fri, 24 May 2019 16:02:20 -0700 (PDT) Received: from [100.112.76.36] ([104.133.8.100]) by smtp.gmail.com with ESMTPSA id f17sm3169655pgv.16.2019.05.24.16.02.18 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 24 May 2019 16:02:19 -0700 (PDT) Date: Fri, 24 May 2019 16:02:02 -0700 (PDT) From: Hugh Dickins X-X-Sender: hugh@eggly.anvils To: Pavel Machek cc: Jacek Anaszewski , linux-leds@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Revert "leds: avoid races with workqueue"? Message-ID: User-Agent: Alpine 2.11 (LSU 23 2013-08-11) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Pavel, I'm having to revert 0db37915d912 ("leds: avoid races with workqueue") from my 5.2-rc testing tree, because lockdep and other debug options don't like it: net/mac80211/led.c arranges for led_blink_setup() to be called at softirq time, and flush_work() is not good for calling then. Hugh ================================ WARNING: inconsistent lock state 5.2.0-rc1 #1 Tainted: G W -------------------------------- inconsistent {SOFTIRQ-ON-W} -> {IN-SOFTIRQ-W} usage. swapper/1/0 [HC0[0]:SC1[1]:HE1:SE0] takes: 000000006e30541b ((work_completion)(&led_cdev->set_brightness_work)){+.?.}, at: __flush_work+0x3b/0x38a {SOFTIRQ-ON-W} state was registered at: lock_acquire+0x146/0x1a1 __flush_work+0x5b/0x38a flush_work+0xb/0xd led_blink_setup+0x1e/0xd3 led_blink_set+0x3f/0x44 tpt_trig_timer+0xdb/0x106 ieee80211_mod_tpt_led_trig+0xed/0x112 __ieee80211_recalc_idle+0xd9/0x11f ieee80211_idle_off+0xe/0x10 ieee80211_add_chanctx+0x6c/0x2df ieee80211_new_chanctx+0x7d/0xe8 ieee80211_vif_use_channel+0x163/0x1fe ieee80211_prep_connection+0x9db/0xbac ieee80211_mgd_auth+0x274/0x328 ieee80211_auth+0x13/0x15 cfg80211_mlme_auth+0x1e1/0x341 nl80211_authenticate+0x25c/0x29e genl_family_rcv_msg+0x2b7/0x31a genl_rcv_msg+0x4a/0x6c netlink_rcv_skb+0x55/0xaa genl_rcv+0x23/0x32 netlink_unicast+0xfc/0x1bb netlink_sendmsg+0x2c6/0x335 sock_sendmsg+0x12/0x1d ___sys_sendmsg+0x1c5/0x23d __sys_sendmsg+0x4b/0x75 __x64_sys_sendmsg+0x1a/0x1c do_syscall_64+0x51/0x182 entry_SYSCALL_64_after_hwframe+0x49/0xbe irq event stamp: 44098 hardirqs last enabled at (44098): [] _raw_spin_unlock_irqrestore+0x3a/0x5b hardirqs last disabled at (44097): [] _raw_spin_lock_irqsave+0x13/0x4c softirqs last enabled at (44088): [] _local_bh_enable+0x1e/0x20 softirqs last disabled at (44089): [] irq_exit+0x69/0xb9 other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock((work_completion)(&led_cdev->set_brightness_work)); lock((work_completion)(&led_cdev->set_brightness_work)); *** DEADLOCK *** 2 locks held by swapper/1/0: #0: 0000000002d634a0 ((&tpt_trig->timer)){+.-.}, at: call_timer_fn+0x0/0x2ce #1: 000000007ed2567d (&trig->leddev_list_lock){.+.?}, at: tpt_trig_timer+0xbe/0x106 stack backtrace: CPU: 1 PID: 0 Comm: swapper/1 Tainted: G W 5.2.0-rc1 #1 Hardware name: LENOVO 4174EH1/4174EH1, BIOS 8CET51WW (1.31 ) 11/29/2011 Call Trace: dump_stack+0x67/0x93 print_usage_bug+0x292/0x2a5 ? print_irq_inversion_bug+0x1cb/0x1cb mark_lock+0x307/0x51e __lock_acquire+0x2c0/0x762 lock_acquire+0x146/0x1a1 ? __flush_work+0x3b/0x38a ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb __flush_work+0x5b/0x38a ? __flush_work+0x3b/0x38a ? mark_held_locks+0x47/0x63 ? _raw_spin_unlock_irqrestore+0x3a/0x5b ? _raw_spin_unlock_irqrestore+0x3a/0x5b ? lockdep_hardirqs_on+0x196/0x1a5 ? try_to_del_timer_sync+0x44/0x4f ? trace_hardirqs_on+0xc7/0xf7 ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb ? _raw_spin_unlock_irqrestore+0x46/0x5b ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb flush_work+0xb/0xd led_blink_setup+0x1e/0xd3 led_blink_set+0x3f/0x44 tpt_trig_timer+0xdb/0x106 ? add_timer_on+0xce/0xce call_timer_fn+0x11e/0x2ce ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb expire_timers+0x141/0x197 run_timer_softirq+0x65/0x10e __do_softirq+0x1bf/0x430 irq_exit+0x69/0xb9 smp_apic_timer_interrupt+0x1ee/0x269 apic_timer_interrupt+0xf/0x20 RIP: 0010:cpuidle_enter_state+0x1f4/0x34d Code: ff e8 36 0c ac ff 45 84 ff 74 16 9c 58 f6 c4 02 74 08 0f 0b fa e8 e5 da b4 ff 31 ff e8 23 c9 b1 ff e8 f0 d8 b4 ff fb 45 85 ed <0f> 88 e2 00 00 00 49 63 f5 b9 e8 03 00 00 48 6b c6 60 49 8d 7c 04 RSP: 0018:ffff888234d8be58 EFLAGS: 00000206 ORIG_RAX: ffffffffffffff13 RAX: ffff888234d84300 RBX: ffffe8ffffc864c0 RCX: 000000000000001f RDX: 0000000000000000 RSI: 0000000000000006 RDI: ffff888234d84300 RBP: ffff888234d8be98 R08: 0000000000000002 R09: fffffffa2dd3f8df R10: 0000000000000ed5 R11: 0000000000000086 R12: ffffffff8229e320 R13: 0000000000000005 R14: ffffffff8229e518 R15: 0000000000000000 ? cpuidle_enter_state+0x1f0/0x34d cpuidle_enter+0x28/0x36 call_cpuidle+0x3b/0x3d do_idle+0x189/0x1eb cpu_startup_entry+0x1a/0x1e start_secondary+0xfe/0x11b secondary_startup_64+0xa4/0xb0 BUG: sleeping function called from invalid context at kernel/workqueue.c:2974 in_atomic(): 1, irqs_disabled(): 0, pid: 0, name: swapper/1 INFO: lockdep is turned off. Preemption disabled at: [] start_secondary+0x48/0x11b CPU: 1 PID: 0 Comm: swapper/1 Tainted: G W 5.2.0-rc1 #1 Hardware name: LENOVO 4174EH1/4174EH1, BIOS 8CET51WW (1.31 ) 11/29/2011 Call Trace: dump_stack+0x67/0x93 ? start_secondary+0x48/0x11b ___might_sleep+0x229/0x240 ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb __might_sleep+0x63/0x77 ? __flush_work+0x3b/0x38a __flush_work+0x84/0x38a ? mark_held_locks+0x47/0x63 ? _raw_spin_unlock_irqrestore+0x3a/0x5b ? _raw_spin_unlock_irqrestore+0x3a/0x5b ? lockdep_hardirqs_on+0x196/0x1a5 ? try_to_del_timer_sync+0x44/0x4f ? trace_hardirqs_on+0xc7/0xf7 ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb ? _raw_spin_unlock_irqrestore+0x46/0x5b ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb flush_work+0xb/0xd led_blink_setup+0x1e/0xd3 led_blink_set+0x3f/0x44 tpt_trig_timer+0xdb/0x106 ? add_timer_on+0xce/0xce call_timer_fn+0x11e/0x2ce ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb expire_timers+0x141/0x197 run_timer_softirq+0x65/0x10e __do_softirq+0x1bf/0x430 irq_exit+0x69/0xb9 smp_apic_timer_interrupt+0x1ee/0x269 apic_timer_interrupt+0xf/0x20 RIP: 0010:cpuidle_enter_state+0x1f4/0x34d Code: ff e8 36 0c ac ff 45 84 ff 74 16 9c 58 f6 c4 02 74 08 0f 0b fa e8 e5 da b4 ff 31 ff e8 23 c9 b1 ff e8 f0 d8 b4 ff fb 45 85 ed <0f> 88 e2 00 00 00 49 63 f5 b9 e8 03 00 00 48 6b c6 60 49 8d 7c 04 RSP: 0018:ffff888234d8be58 EFLAGS: 00000206 ORIG_RAX: ffffffffffffff13 RAX: ffff888234d84300 RBX: ffffe8ffffc864c0 RCX: 000000000000001f RDX: 0000000000000000 RSI: 0000000000000006 RDI: ffff888234d84300 RBP: ffff888234d8be98 R08: 0000000000000002 R09: fffffffa2dd3f8df R10: 0000000000000ed5 R11: 0000000000000086 R12: ffffffff8229e320 R13: 0000000000000005 R14: ffffffff8229e518 R15: 0000000000000000 ? cpuidle_enter_state+0x1f0/0x34d cpuidle_enter+0x28/0x36 call_cpuidle+0x3b/0x3d do_idle+0x189/0x1eb cpu_startup_entry+0x1a/0x1e start_secondary+0xfe/0x11b secondary_startup_64+0xa4/0xb0 ing mDNS multicast group on interface wlp3s0.IPv6 with address fe80::2677:3ff:fe6f:637c. ing mDNS multicast group on interface wlp3s0.IPv6 with address 2600:1700:3ec0:f40:2677:3ff:fe6f:637c. stering new address record for 2600:1700:3ec0:f40:2677:3ff:fe6f:637c on wlp3s0.*. drawing address record for fe80::2677:3ff:fe6f:637c on wlp3s0. BUG: sleeping function called from invalid context at kernel/workqueue.c:2974 in_atomic(): 1, irqs_disabled(): 0, pid: 0, name: swapper/1 INFO: lockdep is turned off. Preemption disabled at: [] start_secondary+0x48/0x11b CPU: 1 PID: 0 Comm: swapper/1 Tainted: G W 5.2.0-rc1 #1 Hardware name: LENOVO 4174EH1/4174EH1, BIOS 8CET51WW (1.31 ) 11/29/2011 Call Trace: dump_stack+0x67/0x93 ? start_secondary+0x48/0x11b ___might_sleep+0x229/0x240 ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb __might_sleep+0x63/0x77 ? __flush_work+0x3b/0x38a __flush_work+0x84/0x38a ? trace_hardirqs_on+0xc7/0xf7 ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb ? _raw_spin_unlock_irqrestore+0x46/0x5b ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb flush_work+0xb/0xd led_blink_setup+0x1e/0xd3 led_blink_set+0x3f/0x44 tpt_trig_timer+0xdb/0x106 ? add_timer_on+0xce/0xce call_timer_fn+0x11e/0x2ce ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb expire_timers+0x141/0x197 run_timer_softirq+0x65/0x10e ? ktime_get+0x8e/0xe4 ? trace_hardirqs_on+0xc7/0xf7 __do_softirq+0x1bf/0x430 irq_exit+0x69/0xb9 smp_apic_timer_interrupt+0x1ee/0x269 apic_timer_interrupt+0xf/0x20 RIP: 0010:cpuidle_enter_state+0x1f4/0x34d Code: ff e8 36 0c ac ff 45 84 ff 74 16 9c 58 f6 c4 02 74 08 0f 0b fa e8 e5 da b4 ff 31 ff e8 23 c9 b1 ff e8 f0 d8 b4 ff fb 45 85 ed <0f> 88 e2 00 00 00 49 63 f5 b9 e8 03 00 00 48 6b c6 60 49 8d 7c 04 RSP: 0018:ffff888234d8be58 EFLAGS: 00000206 ORIG_RAX: ffffffffffffff13 RAX: 0000000000000000 RBX: ffffe8ffffc864c0 RCX: 000000000000001f RDX: 0000000000000000 RSI: 0000001c6cff9837 RDI: ffffffff81664055 RBP: ffff888234d8be98 R08: 0000000000000002 R09: fffffffa2dd3f8df R10: 000000000000e848 R11: 0000000000016727 R12: ffffffff8229e320 R13: 0000000000000005 R14: ffffffff8229e518 R15: 0000000000000000 ? cpuidle_enter_state+0x1f0/0x34d ? cpuidle_enter_state+0x1f0/0x34d cpuidle_enter+0x28/0x36 call_cpuidle+0x3b/0x3d do_idle+0x189/0x1eb cpu_startup_entry+0x1a/0x1e start_secondary+0xfe/0x11b secondary_startup_64+0xa4/0xb0 BUG: sleeping function called from invalid context at kernel/workqueue.c:2974 in_atomic(): 1, irqs_disabled(): 0, pid: 0, name: swapper/1 INFO: lockdep is turned off. Preemption disabled at: [] start_secondary+0x48/0x11b CPU: 1 PID: 0 Comm: swapper/1 Tainted: G W 5.2.0-rc1 #1 Hardware name: LENOVO 4174EH1/4174EH1, BIOS 8CET51WW (1.31 ) 11/29/2011 Call Trace: dump_stack+0x67/0x93 ? start_secondary+0x48/0x11b ___might_sleep+0x229/0x240 ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb __might_sleep+0x63/0x77 ? __flush_work+0x3b/0x38a __flush_work+0x84/0x38a ? trace_hardirqs_on+0xc7/0xf7 ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb ? _raw_spin_unlock_irqrestore+0x46/0x5b ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb flush_work+0xb/0xd led_blink_setup+0x1e/0xd3 led_blink_set+0x3f/0x44 tpt_trig_timer+0xdb/0x106 ? add_timer_on+0xce/0xce call_timer_fn+0x11e/0x2ce ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb expire_timers+0x141/0x197 run_timer_softirq+0x65/0x10e ? ktime_get+0x8e/0xe4 ? trace_hardirqs_on+0xc7/0xf7 __do_softirq+0x1bf/0x430 irq_exit+0x69/0xb9 smp_apic_timer_interrupt+0x1ee/0x269 apic_timer_interrupt+0xf/0x20 RIP: 0010:cpuidle_enter_state+0x1f4/0x34d Code: ff e8 36 0c ac ff 45 84 ff 74 16 9c 58 f6 c4 02 74 08 0f 0b fa e8 e5 da b4 ff 31 ff e8 23 c9 b1 ff e8 f0 d8 b4 ff fb 45 85 ed <0f> 88 e2 00 00 00 49 63 f5 b9 e8 03 00 00 48 6b c6 60 49 8d 7c 04 RSP: 0018:ffff888234d8be58 EFLAGS: 00000206 ORIG_RAX: ffffffffffffff13 RAX: 0000000000000000 RBX: ffffe8ffffc864c0 RCX: 000000000000001f RDX: 0000000000000000 RSI: 0000001d051767b2 RDI: ffffffff81664055 RBP: ffff888234d8be98 R08: 0000000000000002 R09: fffffffa2dd3f8df R10: 0000000000031f74 R11: 0000000000034923 R12: ffffffff8229e320 R13: 0000000000000005 R14: ffffffff8229e518 R15: 0000000000000000 ? cpuidle_enter_state+0x1f0/0x34d ? cpuidle_enter_state+0x1f0/0x34d cpuidle_enter+0x28/0x36 call_cpuidle+0x3b/0x3d do_idle+0x189/0x1eb cpu_startup_entry+0x1a/0x1e start_secondary+0xfe/0x11b secondary_startup_64+0xa4/0xb0 BUG: sleeping function called from invalid context at kernel/workqueue.c:2974 in_atomic(): 1, irqs_disabled(): 0, pid: 0, name: swapper/1 INFO: lockdep is turned off. Preemption disabled at: [] start_secondary+0x48/0x11b CPU: 1 PID: 0 Comm: swapper/1 Tainted: G W 5.2.0-rc1 #1 Hardware name: LENOVO 4174EH1/4174EH1, BIOS 8CET51WW (1.31 ) 11/29/2011 Call Trace: dump_stack+0x67/0x93 ? start_secondary+0x48/0x11b ___might_sleep+0x229/0x240 ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb __might_sleep+0x63/0x77 ? __flush_work+0x3b/0x38a __flush_work+0x84/0x38a ? trace_hardirqs_on+0xc7/0xf7 ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb ? _raw_spin_unlock_irqrestore+0x46/0x5b ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb flush_work+0xb/0xd led_blink_setup+0x1e/0xd3 led_blink_set+0x3f/0x44 tpt_trig_timer+0xdb/0x106 ? add_timer_on+0xce/0xce call_timer_fn+0x11e/0x2ce ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb expire_timers+0x141/0x197 run_timer_softirq+0x65/0x10e ? ktime_get+0x8e/0xe4 ? trace_hardirqs_on+0xc7/0xf7 __do_softirq+0x1bf/0x430 irq_exit+0x69/0xb9 smp_apic_timer_interrupt+0x1ee/0x269 apic_timer_interrupt+0xf/0x20 RIP: 0010:cpuidle_enter_state+0x1f4/0x34d Code: ff e8 36 0c ac ff 45 84 ff 74 16 9c 58 f6 c4 02 74 08 0f 0b fa e8 e5 da b4 ff 31 ff e8 23 c9 b1 ff e8 f0 d8 b4 ff fb 45 85 ed <0f> 88 e2 00 00 00 49 63 f5 b9 e8 03 00 00 48 6b c6 60 49 8d 7c 04 RSP: 0018:ffff888234d8be58 EFLAGS: 00000206 ORIG_RAX: ffffffffffffff13 RAX: 0000000000000000 RBX: ffffe8ffffc864c0 RCX: 000000000000001f RDX: 0000000000000000 RSI: 0000001e2bc5a50d RDI: ffffffff81664055 RBP: ffff888234d8be98 R08: 0000000000000002 R09: fffffffa2dd3f8df R10: 0000000000007d25 R11: 00000000000300c8 R12: ffffffff8229e320 R13: 0000000000000005 R14: ffffffff8229e518 R15: 0000000000000000 ? cpuidle_enter_state+0x1f0/0x34d ? cpuidle_enter_state+0x1f0/0x34d cpuidle_enter+0x28/0x36 call_cpuidle+0x3b/0x3d do_idle+0x189/0x1eb cpu_startup_entry+0x1a/0x1e start_secondary+0xfe/0x11b secondary_startup_64+0xa4/0xb0 BUG: sleeping function called from invalid context at kernel/workqueue.c:2974 in_atomic(): 1, irqs_disabled(): 0, pid: 0, name: swapper/1 INFO: lockdep is turned off. Preemption disabled at: [] start_secondary+0x48/0x11b CPU: 1 PID: 0 Comm: swapper/1 Tainted: G W 5.2.0-rc1 #1 Hardware name: LENOVO 4174EH1/4174EH1, BIOS 8CET51WW (1.31 ) 11/29/2011 Call Trace: dump_stack+0x67/0x93 ? start_secondary+0x48/0x11b ___might_sleep+0x229/0x240 ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb __might_sleep+0x63/0x77 ? __flush_work+0x3b/0x38a __flush_work+0x84/0x38a ? trace_hardirqs_on+0xc7/0xf7 ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb ? _raw_spin_unlock_irqrestore+0x46/0x5b ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb flush_work+0xb/0xd led_blink_setup+0x1e/0xd3 led_blink_set+0x3f/0x44 tpt_trig_timer+0xdb/0x106 ? add_timer_on+0xce/0xce call_timer_fn+0x11e/0x2ce ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb expire_timers+0x141/0x197 run_timer_softirq+0x65/0x10e ? ktime_get+0x8e/0xe4 ? trace_hardirqs_on+0xc7/0xf7 __do_softirq+0x1bf/0x430 irq_exit+0x69/0xb9 smp_apic_timer_interrupt+0x1ee/0x269 apic_timer_interrupt+0xf/0x20 RIP: 0010:cpuidle_enter_state+0x1f4/0x34d Code: ff e8 36 0c ac ff 45 84 ff 74 16 9c 58 f6 c4 02 74 08 0f 0b fa e8 e5 da b4 ff 31 ff e8 23 c9 b1 ff e8 f0 d8 b4 ff fb 45 85 ed <0f> 88 e2 00 00 00 49 63 f5 b9 e8 03 00 00 48 6b c6 60 49 8d 7c 04 RSP: 0018:ffff888234d8be58 EFLAGS: 00000206 ORIG_RAX: ffffffffffffff13 RAX: 0000000000000000 RBX: ffffe8ffffc864c0 RCX: 000000000000001f RDX: 0000000000000000 RSI: 0000001f57348651 RDI: ffffffff81664055 RBP: ffff888234d8be98 R08: 0000000000000002 R09: fffffffa2dd3f8df R10: 0000000000006ac4 R11: 0000000000007e37 R12: ffffffff8229e320 R13: 0000000000000005 R14: ffffffff8229e518 R15: 0000000000000000 ? cpuidle_enter_state+0x1f0/0x34d ? cpuidle_enter_state+0x1f0/0x34d cpuidle_enter+0x28/0x36 call_cpuidle+0x3b/0x3d do_idle+0x189/0x1eb cpu_startup_entry+0x1a/0x1e start_secondary+0xfe/0x11b secondary_startup_64+0xa4/0xb0 BUG: sleeping function called from invalid context at kernel/workqueue.c:2974 in_atomic(): 1, irqs_disabled(): 0, pid: 0, name: swapper/1 INFO: lockdep is turned off. Preemption disabled at: [] start_secondary+0x48/0x11b CPU: 1 PID: 0 Comm: swapper/1 Tainted: G W 5.2.0-rc1 #1 Hardware name: LENOVO 4174EH1/4174EH1, BIOS 8CET51WW (1.31 ) 11/29/2011 Call Trace: dump_stack+0x67/0x93 ? start_secondary+0x48/0x11b ___might_sleep+0x229/0x240 ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb __might_sleep+0x63/0x77 ? __flush_work+0x3b/0x38a __flush_work+0x84/0x38a ? trace_hardirqs_on+0xc7/0xf7 ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb ? _raw_spin_unlock_irqrestore+0x46/0x5b ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb flush_work+0xb/0xd led_blink_setup+0x1e/0xd3 led_blink_set+0x3f/0x44 tpt_trig_timer+0xdb/0x106 ? add_timer_on+0xce/0xce call_timer_fn+0x11e/0x2ce ? __ieee80211_create_tpt_led_trigger+0xcb/0xcb expire_timers+0x141/0x197 run_timer_softirq+0x65/0x10e ? ktime_get+0x8e/0xe4 ? trace_hardirqs_on+0xc7/0xf7 __do_softirq+0x1bf/0x430 irq_exit+0x69/0xb9 smp_apic_timer_interrupt+0x1ee/0x269 apic_timer_interrupt+0xf/0x20 RIP: 0010:cpuidle_enter_state+0x1f4/0x34d Code: ff e8 36 0c ac ff 45 84 ff 74 16 9c 58 f6 c4 02 74 08 0f 0b fa e8 e5 da b4 ff 31 ff e8 23 c9 b1 ff e8 f0 d8 b4 ff fb 45 85 ed <0f> 88 e2 00 00 00 49 63 f5 b9 e8 03 00 00 48 6b c6 60 49 8d 7c 04 RSP: 0018:ffff888234d8be58 EFLAGS: 00000206 ORIG_RAX: ffffffffffffff13 RAX: 0000000000000000 RBX: ffffe8ffffc864c0 RCX: 000000000000001f RDX: 0000000000000000 RSI: 000000207de2bdf6 RDI: ffffffff81664055 RBP: ffff888234d8be98 R08: 0000000000000002 R09: fffffffa2dd3f8df R10: 000000000000afc8 R11: 00000000000185c2 R12: ffffffff8229e320 R13: 0000000000000005 R14: ffffffff8229e518 R15: 0000000000000000 ? cpuidle_enter_state+0x1f0/0x34d ? cpuidle_enter_state+0x1f0/0x34d cpuidle_enter+0x28/0x36 call_cpuidle+0x3b/0x3d do_idle+0x189/0x1eb cpu_startup_entry+0x1a/0x1e start_secondary+0xfe/0x11b secondary_startup_64+0xa4/0xb0