Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934012AbaDIStV (ORCPT ); Wed, 9 Apr 2014 14:49:21 -0400 Received: from mail-lb0-f176.google.com ([209.85.217.176]:45217 "EHLO mail-lb0-f176.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933454AbaDIStT (ORCPT ); Wed, 9 Apr 2014 14:49:19 -0400 MIME-Version: 1.0 In-Reply-To: References: <20140409182553.GE10526@twins.programming.kicks-ass.net> Date: Wed, 9 Apr 2014 11:49:17 -0700 Message-ID: Subject: Re: current->sched_class->yield_task is NULL, any hint? From: Lin Ming To: Peter Zijlstra Cc: "linux-arm-kernel@lists.infradead.org" , lkml Content-Type: text/plain; charset=ISO-8859-1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Apr 9, 2014 at 11:32 AM, Lin Ming wrote: > On Wed, Apr 9, 2014 at 11:25 AM, Peter Zijlstra wrote: >> On Wed, Apr 09, 2014 at 10:43:32AM -0700, Lin Ming wrote: >>> Hi Peter, >>> >>> I hit a panic in sys_sched_yield() because(for some unknown reason) >>> current->sched_class->yield_task is NULL. >>> It's an ARM embedded board with 3.4-rt kernel. >>> >>> Could you share any hint for the possible causes? >> >> What class does current->sched_class point to? > > [12890.088232] Process swapper/0 (pid: 0, stack limit = 0xc07042f0) > > It's idle task. I think it should be idle_sched_class. > But let me double check it. idle_sched_class has no "yield_task" defined. Does it mean that idle task should not call yield() at all? [12890.088232] Process swapper/0 (pid: 0, stack limit = 0xc07042f0) [12890.094092] Stack: (0xc0705860 to 0xc0706000) [12890.584616] Backtrace: [12890.586996] [] (sys_sched_yield+0x0/0x90) from [] (yield+0x2c/0x30) [12890.598258] [] (yield+0x0/0x30) from [] (netlink_broadcast_filtered+0x3ec/0x400) [12890.607170] [] (netlink_broadcast_filtered+0x0/0x400) from [] (netlink_broadcast+0x28/0x30) [12890.616998] [] (netlink_broadcast+0x0/0x30) from [] (msg_netlink_broadcast+0xa8/0xb4) [12890.626337] [] (msg_netlink_broadcast+0x0/0xb4) from [] (br_igmp_send_netlink_msg+0xb0/0xbc) [12890.636256] [] (br_igmp_send_netlink_msg+0x0/0xbc) from [] (br_igmp_mc_fdb_add+0x424/0x6c0) [12890.646084] [] (br_igmp_mc_fdb_add+0x0/0x6c0) from [] (br_igmp_process_v3+0x4a8/0x518) [12890.655515] [] (br_igmp_process_v3+0x0/0x518) from [] (br_igmp_snooping+0x36c/0x3e4) [12890.664762] [] (br_igmp_snooping+0x0/0x3e4) from [] (br_igmp_mc_forward+0x7c/0x270) [12890.673918] [] (br_igmp_mc_forward+0x0/0x270) from [] (br_handle_frame_finish+0x160/0x358) [12890.683654] [] (br_handle_frame_finish+0x0/0x358) from [] (br_nf_pre_routing_finish+0x348/0x364) [12890.693940] [] (br_nf_pre_routing_finish+0x0/0x364) from [] (br_nf_pre_routing+0x5e0/0x630) [12890.709291] [] (br_nf_pre_routing+0x0/0x630) from [] (nf_iterate+0x68/0xa4) [12890.717746] [] (nf_iterate+0x0/0xa4) from [] (nf_hook_slow+0x68/0x124) [12890.725803] [] (nf_hook_slow+0x0/0x124) from [] (br_handle_frame+0x294/0x2e4) [12890.734471] [] (br_handle_frame+0x0/0x2e4) from [] (__netif_receive_skb+0x3b0/0x514) [12890.743718] [] (__netif_receive_skb+0x0/0x514) from [] (netif_receive_skb+0xa8/0xbc) [12890.752966] [] (netif_receive_skb+0x0/0xbc) from [] (napi_skb_finish+0x34/0x50) [12890.765235] [] (napi_skb_finish+0x0/0x50) from [] (napi_gro_receive+0xfc/0x100) [12890.777566] [] (napi_gro_receive+0x0/0x100) from [] (nss_gmac_receive+0x48/0x4c [qca_nss_gmac]) [12890.787759] [] (nss_gmac_receive+0x0/0x4c [qca_nss_gmac]) from [] (nss_core_handle_napi+0x440/0xa78 [qca_nss_drv]) [12890.802989] [] (nss_core_handle_napi+0x0/0xa78 [qca_nss_drv]) from [] (net_rx_action+0x84/0x174) [12890.813244] [] (net_rx_action+0x0/0x174) from [] (__do_softirq+0xbc/0x160) [12890.821637] [] (__do_softirq+0x0/0x160) from [] (irq_exit+0x58/0xa4) [12890.829542] [] (irq_exit+0x0/0xa4) from [] (handle_IRQ+0x8c/0xb8) [12890.840651] [] (handle_IRQ+0x0/0xb8) from [] (gic_handle_irq+0x70/0xc4) [12890.857681] [] (gic_handle_irq+0x0/0xc4) from [] (__irq_svc+0x40/0x70) > > Thanks. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/