Hey Marc, I added the options below, but it doesn't look like the stack is dumping. check_preemption_disabled: 143 callbacks suppressed BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 caller is __this_cpu_preempt_check+0x1c/0x20 CPU: 0 PID: 805 Comm: irq/194-mcp25xx Tainted: G O 4.9.65-dey+gf832589 #44 Hardware name: Freescale i.MX6 UltraLite (Device Tree) [<80111790>] (unwind_backtrace) from [<8010d6cc>] (show_stack+0x20/0x24) [<8010d6cc>] (show_stack) from [<804c1c94>] (dump_stack+0xa0/0xcc) [<804c1c94>] (dump_stack) from [<804e1ad8>] (check_preemption_disabled+0x130/0x134) [<804e1ad8>] (check_preemption_disabled) from [<804e1b1c>] (__this_cpu_preempt_check+0x1c/0x20) [<804e1b1c>] (__this_cpu_preempt_check) from [<80804284>] (__netif_receive_skb_core+0x118/0xa60) [<80804284>] (__netif_receive_skb_core) from [<80806ffc>] (__netif_receive_skb+0x38/0x94) [<80806ffc>] (__netif_receive_skb) from [<808070e8>] (netif_receive_skb_internal+0x90/0x21c) [<808070e8>] (netif_receive_skb_internal) from [<808072e4>] (netif_receive_skb+0x70/0x1f4) [<808072e4>] (netif_receive_skb) from [<8065006c>] (mcp25xxfd_can_int+0x8f8/0x9cc) [<8065006c>] (mcp25xxfd_can_int) from [<8019d2e4>] (irq_thread_fn+0x2c/0x64) [<8019d2e4>] (irq_thread_fn) from [<8019d644>] (irq_thread+0x180/0x24c) [<8019d644>] (irq_thread) from [<801529f4>] (kthread+0x11c/0x134) [<801529f4>] (kthread) from [<80108650>] (ret_from_fork+0x14/0x24) can1 456 [8] 0F 00 00 00 00 00 00 00 can1 456 [8] 0F 00 00 00 00 00 00 00 can1 121 [8] 0F 00 00 00 00 00 00 00 can1 354 [8] 0F 00 00 00 00 00 00 00 can1 099 [8] 0F 00 00 00 00 00 00 00 can1 331 [8] 0F 00 00 00 00 00 00 00 can1 123 [8] 00 0E 00 00 00 00 00 00 can1 003 [8] 00 00 00 04 00 00 00 00 can1 099 [8] 00 00 00 00 00 0A 00 00 can1 011 [8] 00 00 0D 00 00 00 00 00 BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 caller is __this_cpu_preempt_check+0x1c/0x20 CPU: 0 PID: 805 Comm: irq/194-mcp25xx Tainted: G O 4.9.65-dey+gf832589 #44 Hardware name: Freescale i.MX6 UltraLite (Device Tree) [<80111790>] (unwind_backtrace) from [<8010d6cc>] (show_stack+0x20/0x24) [<8010d6cc>] (show_stack) from [<804c1c94>] (dump_stack+0xa0/0xcc) [<804c1c94>] (dump_stack) from [<804e1ad8>] (check_preemption_disabled+0x130/0x134) [<804e1ad8>] (check_preemption_disabled) from [<804e1b1c>] (__this_cpu_preempt_check+0x1c/0x20) [<804e1b1c>] (__this_cpu_preempt_check) from [<80804284>] (__netif_receive_skb_core+0x118/0xa60) [<80804284>] (__netif_receive_skb_core) from [<80806ffc>] (__netif_receive_skb+0x38/0x94) [<80806ffc>] (__netif_receive_skb) from [<808070e8>] (netif_receive_skb_internal+0x90/0x21c) [<808070e8>] (netif_receive_skb_internal) from [<808072e4>] (netif_receive_skb+0x70/0x1f4) [<808072e4>] (netif_receive_skb) from [<8065006c>] (mcp25xxfd_can_int+0x8f8/0x9cc) [<8065006c>] (mcp25xxfd_can_int) from [<8019d2e4>] (irq_thread_fn+0x2c/0x64) [<8019d2e4>] (irq_thread_fn) from [<8019d644>] (irq_thread+0x180/0x24c) [<8019d644>] (irq_thread) from [<801529f4>] (kthread+0x11c/0x134) [<801529f4>] (kthread) from [<80108650>] (ret_from_fork+0x14/0x24) BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 caller is __this_cpu_preempt_check+0x1c/0x20 CPU: 0 PID: 805 Comm: irq/194-mcp25xx Tainted: G O 4.9.65-dey+gf832589 #44 Hardware name: Freescale i.MX6 UltraLite (Device Tree) [<80111790>] (unwind_backtrace) from [<8010d6cc>] (show_stack+0x20/0x24) [<8010d6cc>] (show_stack) from [<804c1c94>] (dump_stack+0xa0/0xcc) [<804c1c94>] (dump_stack) from [<804e1ad8>] (check_preemption_disabled+0x130/0x134) [<804e1ad8>] (check_preemption_disabled) from [<804e1b1c>] (__this_cpu_preempt_check+0x1c/0x20) [<804e1b1c>] (__this_cpu_preempt_check) from [<80804284>] (__netif_receive_skb_core+0x118/0xa60) [<80804284>] (__netif_receive_skb_core) from [<80806ffc>] (__netif_receive_skb+0x38/0x94) [<80806ffc>] (__netif_receive_skb) from [<808070e8>] (netif_receive_skb_internal+0x90/0x21c) [<808070e8>] (netif_receive_skb_internal) from [<808072e4>] (netif_receive_skb+0x70/0x1f4) [<808072e4>] (netif_receive_skb) from [<8065006c>] (mcp25xxfd_can_int+0x8f8/0x9cc) [<8065006c>] (mcp25xxfd_can_int) from [<8019d2e4>] (irq_thread_fn+0x2c/0x64) [<8019d2e4>] (irq_thread_fn) from [<8019d644>] (irq_thread+0x180/0x24c) [<8019d644>] (irq_thread) from [<801529f4>] (kthread+0x11c/0x134) [<801529f4>] (kthread) from [<80108650>] (ret_from_fork+0x14/0x24) can1 331 [8] 0F 00 00 00 00 00 00 00 BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 CONFIG_VIRTUALIZATION=y CONFIG_DEBUG_KERNEL=y CONFIG_FTRACE=y CONFIG_FUNCTION_TRACER=y CONFIG_FUNCTION_GRAPH_TRACER=y CONFIG_KPROBES=y CONIFG_DEBUG_BUGVERBOSE=y CONFIG_UNWIND_INFO=y CONIFG_STACK_UNWIND=y CONFIG_OF_DYNAMIC=y CONFIG_FRAME_POINTER=y # # Debug Lockups and Hangs # # CONFIG_LOCKUP_DETECTOR is not set # CONFIG_DETECT_HUNG_TASK is not set # CONFIG_WQ_WATCHDOG is not set # CONFIG_PANIC_ON_OOPS is not set CONFIG_PANIC_ON_OOPS_VALUE=0 CONFIG_PANIC_TIMEOUT=0 # CONFIG_SCHED_DEBUG is not set # CONFIG_SCHED_INFO is not set # CONFIG_SCHEDSTATS is not set # CONFIG_SCHED_STACK_END_CHECK is not set # CONFIG_DEBUG_TIMEKEEPING is not set # CONFIG_TIMER_STATS is not set CONFIG_DEBUG_PREEMPT=y # # # Lock Debugging (spinlocks, mutexes, etc...) # CONFIG_DEBUG_RT_MUTEXES=y CONFIG_DEBUG_SPINLOCK=y CONFIG_DEBUG_MUTEXES=y CONFIG_DEBUG_WW_MUTEX_SLOWPATH=y CONFIG_DEBUG_LOCK_ALLOC=y CONFIG_PROVE_LOCKING=y CONFIG_LOCKDEP=y CONFIG_LOCK_STAT=y CONFIG_DEBUG_LOCKDEP=y CONFIG_DEBUG_ATOMIC_SLEEP=y # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set # CONFIG_LOCK_TORTURE_TEST is not set CONFIG_TRACE_IRQFLAGS=y CONFIG_STACKTRACE=y # # Memory Debugging # # CONFIG_PAGE_EXTENSION is not set # CONFIG_DEBUG_PAGEALLOC is not set # CONFIG_PAGE_POISONING is not set # CONFIG_DEBUG_PAGE_REF is not set CONFIG_DEBUG_OBJECTS=y CONFIG_DEBUG_OBJECTS_SELFTEST=y CONFIG_DEBUG_OBJECTS_FREE=y CONFIG_DEBUG_OBJECTS_TIMERS=y CONFIG_DEBUG_OBJECTS_WORK=y CONFIG_DEBUG_OBJECTS_RCU_HEAD=y CONFIG_DEBUG_OBJECTS_PERCPU_COUNTER=y CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1 # CONFIG_SLUB_STATS is not set CONFIG_HAVE_DEBUG_KMEMLEAK=y CONFIG_DEBUG_KMEMLEAK=y CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=400 # CONFIG_DEBUG_KMEMLEAK_TEST is not set # CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF is not set # CONFIG_DEBUG_STACK_USAGE is not set # CONFIG_DEBUG_VM is not set # CONFIG_DEBUG_MEMORY_INIT is not set # CONFIG_DEBUG_PER_CPU_MAPS is not set # CONFIG_DEBUG_HIGHMEM is not set # CONFIG_DEBUG_SHIRQ is not set On Thu, Jul 25, 2019 at 6:50 AM Marc Kleine-Budde <mkl@xxxxxxxxxxxxxx> wrote: > > On 7/25/19 12:27 PM, Tom Prohaszka wrote: > > Here is the backtrace: > > > > can1 456 [8] 0F 00 00 00 00 00 00 00 > > can1 354 [8] 0F 00 00 00 00 00 00 00 > > can1 331 [8] 0F 00 00 00 00 00 00 00 > > can1 234 [8] 01 00 00 00 00 00 00 00 > > can1 044 [8] 00 00 00 00 00 00 07 00 > > can1 354 [8]^C can1 456 [8] 0F 00 00 00 00 00 00 00 > > Do you reproduce the problem by pressing Ctrl+c? > > > root@ccimx6ulcvdp:~/tmp# BUG: using __this_cpu_add() in preemptible > > [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > BUG: using __this_cpu_add() in preemptible [00000000] code: irq/194-mcp25xx/805 > > Hmm according to the code, it should print a backtrace here... > > See https://elixir.bootlin.com/linux/v4.9.65/source/lib/smp_processor_id.c#L46 > > > preempt_disable_notrace(); > > > > if (!printk_ratelimit()) > > goto out_enable; > > > > printk(KERN_ERR "BUG: using %s%s() in preemptible [%08x] code: %s/%d\n", > > what1, what2, preempt_count() - 1, current->comm, current->pid); > > > > print_symbol("caller is %s\n", (long)__builtin_return_address(0)); > > dump_stack(); > > Can you enable some of the in-kernel debugging stuff: > > Kernel hacking > -> Memory Debugging > -> Debug object operations (everyting) > -> Kernel memory leak detector (enable) > -> Debug preemptible kernel (enable) > -> Lock Debugging (spinlocks, mutexes, etc...) (everything, but not the self tests) > -> Stack backtrace support (enable) > > .. and send output when it breaks. > > Marc > > -- > Pengutronix e.K. | Marc Kleine-Budde | > Industrial Linux Solutions | Phone: +49-231-2826-924 | > Vertretung West/Dortmund | Fax: +49-5121-206917-5555 | > Amtsgericht Hildesheim, HRA 2686 | http://www.pengutronix.de | >