From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dggrg01-dlp.huawei.com (unknown [45.249.212.187]) by dpdk.org (Postfix) with ESMTP id 3964B98 for ; Mon, 16 Jan 2017 08:26:06 +0100 (CET) Received: from 172.30.72.56 (EHLO DGGEMA403-HUB.china.huawei.com) ([172.30.72.56]) by dggrg01-dlp.huawei.com (MOS 4.4.6-GA FastPath queued) with ESMTP id AHS03403; Mon, 16 Jan 2017 15:26:03 +0800 (CST) Received: from DGGEMA505-MBX.china.huawei.com ([169.254.1.109]) by DGGEMA403-HUB.china.huawei.com ([10.3.20.44]) with mapi id 14.03.0301.000; Mon, 16 Jan 2017 15:25:54 +0800 From: wangyunjian To: "declan.doherty@intel.com" , "tomaszx.kulasek@intel.com" , "dev@dpdk.org" CC: caihe Thread-Topic: [dpdk-dev] a question about the commit "414b202343ce8ad"(bonding: fix initial link status of slave) Thread-Index: AdJvwq+BE291LeKBTZ2+EPOQbPFeAA== Date: Mon, 16 Jan 2017 07:25:54 +0000 Message-ID: <34EFBCA9F01B0748BEB6B629CE643AE60BA99B9D@DGGEMA505-MBX.china.huawei.com> Accept-Language: en-US Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.177.24.66] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-CFilter-Loop: Reflected X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A020202.587C758B.0315, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0, ip=169.254.1.109, so=2014-11-16 11:51:01, dmn=2013-03-21 17:37:32 X-Mirapoint-Loop-Id: 55df6f5d0dce6bc29da2684732728d04 Subject: [dpdk-dev] a question about the commit "414b202343ce8ad"(bonding: fix initial link status of slave) X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Jan 2017 07:26:09 -0000 The commit 414b202343ce8ad (bonding: fix initial link status of slave) invo= kes lsc callback, the lsc callback may be executed at same time when slave_configure() and bo= nd_ethdev_slave_link_status_change_monitor () competing for calling the lsc callback. The panic will be triggered when bo= nd ethdev is started(bonding mode 4). I think the lsc callback need lock to be protected. My dpdk version is dpdk= -16.04. Dpdk log: 2017-01-16T12:20:49.950294+08:00|debug|ovs-vswitchd[22249]|ixgbe_dev_link_s= tatus_print[3292]|PMD|: ixgbe_dev_link_status_print(): Port 1: Link Up - sp= eed 10000 Mbps - full-duplex 2017-01-16T12:20:49.950434+08:00|debug|ovs-vswitchd[22249]|ixgbe_dev_link_s= tatus_print[3301]|PMD|: ixgbe_dev_link_status_print(): PCI Address: 0000:03= :00:1 2017-01-16T12:20:50.149944+08:00|debug|ovs-vswitchd[22249]|ixgbe_dev_link_s= tatus_print[3292]|PMD|: ixgbe_dev_link_status_print(): Port 1: Link Up - sp= eed 10000 Mbps - full-duplex 2017-01-16T12:20:50.150119+08:00|debug|ovs-vswitchd[22249]|ixgbe_dev_link_s= tatus_print[3301]|PMD|: ixgbe_dev_link_status_print(): PCI Address: 0000:03= :00:1 2017-01-16T12:20:59.950180+08:00|debug|ovs-vswitchd[22249]|rte_eth_dev_info= _get[1669]|EAL|: port_id=3D0, nb_ports=3D3 2017-01-16T12:20:59.950336+08:00|debug|ovs-vswitchd[22249]|ixgbe_dev_rx_que= ue_setup[2743]|PMD|: ixgbe_dev_rx_queue_setup(): sw_ring=3D0x7fd3948c0c40 s= w_sc_ring=3D0x7fd3948beb00 hw_ring=3D0x7fd3948c2d80 dma_addr=3D0xca44c2d80 2017-01-16T12:20:59.950477+08:00|debug|ovs-vswitchd[22249]|rte_eth_dev_info= _get[1669]|EAL|: port_id=3D0, nb_ports=3D3 2017-01-16T12:20:59.950617+08:00|debug|ovs-vswitchd[22249]|ixgbe_dev_rx_que= ue_setup[2743]|PMD|: ixgbe_dev_rx_queue_setup(): sw_ring=3D0x7fd3948ac5c0 s= w_sc_ring=3D0x7fd3948aa480 hw_ring=3D0x7fd3948ae700 dma_addr=3D0xca44ae700 2017-01-16T12:20:59.950766+08:00|debug|ovs-vswitchd[22249]|rte_eth_dev_info= _get[1669]|EAL|: port_id=3D0, nb_ports=3D3 2017-01-16T12:20:59.950915+08:00|debug|ovs-vswitchd[22249]|ixgbe_dev_rx_que= ue_setup[2743]|PMD|: ixgbe_dev_rx_queue_setup(): sw_ring=3D0x7fd394897f40 s= w_sc_ring=3D0x7fd394895e00 hw_ring=3D0x7fd39489a080 dma_addr=3D0xca449a080 2017-01-16T12:20:59.951110+08:00|debug|ovs-vswitchd[22249]|rte_eth_dev_info= _get[1669]|EAL|: port_id=3D0, nb_ports=3D3 2017-01-16T12:20:59.951252+08:00|debug|ovs-vswitchd[22249]|ixgbe_dev_tx_que= ue_setup[2385]|PMD|: ixgbe_dev_tx_queue_setup(): sw_ring=3D0x7fd394881c40 h= w_ring=3D0x7fd394885c80 dma_addr=3D0xca4485c80 2017-01-16T12:20:59.951390+08:00|debug|ovs-vswitchd[22249]|ixgbe_set_tx_fun= ction[2193]|PMD|: ixgbe_set_tx_function(): Using simple tx code path 2017-01-16T12:20:59.951531+08:00|debug|ovs-vswitchd[22249]|rte_eth_dev_info= _get[1669]|EAL|: port_id=3D0, nb_ports=3D3 2017-01-16T12:20:59.951669+08:00|debug|ovs-vswitchd[22249]|ixgbe_dev_tx_que= ue_setup[2385]|PMD|: ixgbe_dev_tx_queue_setup(): sw_ring=3D0x7fd39486dac0 h= w_ring=3D0x7fd394871b00 dma_addr=3D0xca4471b00 2017-01-16T12:20:59.951806+08:00|debug|ovs-vswitchd[22249]|ixgbe_set_tx_fun= ction[2193]|PMD|: ixgbe_set_tx_function(): Using simple tx code path 2017-01-16T12:20:59.951944+08:00|debug|ovs-vswitchd[22249]|rte_eth_dev_info= _get[1669]|EAL|: port_id=3D0, nb_ports=3D3 2017-01-16T12:20:59.952095+08:00|debug|ovs-vswitchd[22249]|ixgbe_dev_tx_que= ue_setup[2385]|PMD|: ixgbe_dev_tx_queue_setup(): sw_ring=3D0x7fd394859940 h= w_ring=3D0x7fd39485d980 dma_addr=3D0xca445d980 2017-01-16T12:20:59.952238+08:00|debug|ovs-vswitchd[22249]|ixgbe_set_tx_fun= ction[2193]|PMD|: ixgbe_set_tx_function(): Using simple tx code path 2017-01-16T12:20:59.952376+08:00|debug|ovs-vswitchd[22249]|rte_eth_dev_info= _get[1669]|EAL|: port_id=3D0, nb_ports=3D3 2017-01-16T12:20:59.952513+08:00|debug|ovs-vswitchd[22249]|ixgbe_dev_tx_que= ue_setup[2385]|PMD|: ixgbe_dev_tx_queue_setup(): sw_ring=3D0x7fd3948457c0 h= w_ring=3D0x7fd394849800 dma_addr=3D0xca4449800 2017-01-16T12:20:59.952652+08:00|debug|ovs-vswitchd[22249]|ixgbe_set_tx_fun= ction[2193]|PMD|: ixgbe_set_tx_function(): Using simple tx code path 2017-01-16T12:21:00.006370+08:00|debug|ovs-vswitchd[22249]|ixgbe_set_rx_fun= ction[4170]|PMD|: ixgbe_set_rx_function(): Port[0] doesn't meet Vector Rx p= reconditions or RTE_IXGBE_INC_VECTOR is not enabled 2017-01-16T12:21:00.006510+08:00|debug|ovs-vswitchd[22249]|ixgbe_set_rx_fun= ction[4236]|PMD|: ixgbe_set_rx_function(): Rx Burst Bulk Alloc Precondition= s are satisfied. Rx Burst Bulk Alloc function will be used on port=3D0. 2017-01-16T12:21:00.150066+08:00|debug|ovs-vswitchd[22249]|memzone_reserve_= aligned_thread_unsafe[146]|EAL|: memzone_reserve_aligned_thread_unsafe(): m= emzone already exists 2017-01-16T12:21:00.150241+08:00|debug|ovs-vswitchd[22249]|rte_ring_create[= 204]|RING|: Cannot reserve memory 2017-01-16T12:21:00.150385+08:00|debug|ovs-vswitchd[22249]|bond_mode_8023ad= _activate_slave[1001]|PMD|: Slave 1: Failed to create rx ring 'slave_1_rx':= File exists