From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shahaf Shuler Subject: Re: mlx5 under FreeBSD Date: Sun, 3 Mar 2019 08:43:41 +0000 Message-ID: References: <1203238912.103536.1542300483728.JavaMail.zimbra@perftech.com> <4060784.NMgGY7Cv01@xps> <164311280.707048.1542583391811.JavaMail.zimbra@perftech.com> <383796151.782033.1542640162186.JavaMail.zimbra@perftech.com> <20181119090810.02543f44@xeon-e3> <1145619802.1261333.1542820311675.JavaMail.zimbra@perftech.com> <20181121121204.297ef328@xeon-e3> <832315875.3148291.1551455882901.JavaMail.zimbra@perftech.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Cc: Thomas Monjalon , dev , Yongseok Koh To: Mit Matelske , stephen Return-path: Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70044.outbound.protection.outlook.com [40.107.7.44]) by dpdk.org (Postfix) with ESMTP id 5CA51F94 for ; Sun, 3 Mar 2019 09:43:43 +0100 (CET) In-Reply-To: <832315875.3148291.1551455882901.JavaMail.zimbra@perftech.com> Content-Language: en-US List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Friday, March 1, 2019 5:58 PM, Mit Matelske: > Subject: Re: [dpdk-dev] mlx5 under FreeBSD >=20 > I was wondering if I could lean on the experts to help me out with an iss= ue? > I'm finally testing this port but don't understand why the following erro= r is > happening: >=20 > net_mlx5: mlx5_rxq.c:2151: mlx5_hrxq_drop_new(): port 0 cannot allocate > QP for drop queue >=20 > The driver is giving the following error corresponding with that DPDK > message: >=20 > Feb 28 15:00:44 fb100g1 kernel: mlx5_core0: ERR: mlx5_cmd_check:701:(pid > 6819): CREATE_TIR(0x900) op_mod(0x0) failed, status bad parameter(0x3), > syndrome (0x569ee6) Hard to say why. I tried to look for the syndrome above on FW but couldn't = find. Are you sure this is correct one?=20 Which FW version you use?=20 >=20 > The mlx5_core_create_tir function completes successfully for the en drive= r, > just not the ib driver when trying to build the hash tables. Any ideas? >=20 > I've instrumented libmlx5.so.1, mlx5.ko and mlx5ib.ko to debug this and > everything looks fine according to my limited knowledge. Not sure why th= e > card is balking on this action. >=20 > Thanks! >=20 > Mit Matelske >=20 > ----- Original Message ----- > From: "stephen" > To: "Mit Matelske" > Cc: "shahafs" , "Thomas Monjalon" > , "dev" , "Yongseok Koh" > > Sent: Wednesday, November 21, 2018 2:12:04 PM > Subject: Re: [dpdk-dev] mlx5 under FreeBSD >=20 > On Wed, 21 Nov 2018 11:11:51 -0600 (CST) Mit Matelske > wrote: >=20 > > > > > > Rather than building a complex shim, why not just have an OS > > > dependent section of the driver. The bigger issue is that the > > > kernel side functionality in BSD is different or missing. For exampl= e TAP > API is different and not multi-queue. > > > > Once I started working on it, I had to go this route. I haven't been > > able to but much time into it yet, but it is coming along: > > > > EAL: PCI device 0000:b3:00.0 on NUMA socket 0 > > EAL: probe driver: 15b3:1013 net_mlx5 > > net_mlx5: mlx5.c:1315: mlx5_pci_probe(): checking device "mlx5_0" > > uverbs0 /sys/class/infiniband_verbs/uverbs0 > > /sys/class/infiniband/mlx5_0 > > net_mlx5: mlx5.c:1325: mlx5_pci_probe(): PCI information matches for > device "mlx5_0" > > net_mlx5: mlx5.c:1315: mlx5_pci_probe(): checking device "mlx5_1" > > uverbs1 /sys/class/infiniband_verbs/uverbs1 > > /sys/class/infiniband/mlx5_1 > > net_mlx5: mlx5.c:1382: mlx5_pci_probe(): no switch support detected > > net_mlx5: mlx5.c:796: mlx5_dev_spawn(): MPW isn't supported > > net_mlx5: mlx5.c:852: mlx5_dev_spawn(): tunnel offloading disabled due > > to old OFED/rdma-core version > > net_mlx5: mlx5.c:864: mlx5_dev_spawn(): MPLS over GRE/UDP tunnel > > offloading disabled due to old OFED/rdma-core version or firmware > > configuration > > net_mlx5: mlx5.c:877: mlx5_dev_spawn(): naming Ethernet device > "0000:b3:00.0" > > net_mlx5: mlx5.c:1007: mlx5_dev_spawn(): checksum offloading is > > supported > > net_mlx5: mlx5.c:1024: mlx5_dev_spawn(): maximum Rx indirection table > > size is 512 > > net_mlx5: mlx5.c:1028: mlx5_dev_spawn(): VLAN stripping is not > > supported > > net_mlx5: mlx5.c:1032: mlx5_dev_spawn(): FCS stripping configuration > > is not supported > > net_mlx5: mlx5.c:1037: mlx5_dev_spawn(): hardware Rx end alignment > > padding is not supported > > net_mlx5: mlx5.c:1052: mlx5_dev_spawn(): MPS is disabled > > net_mlx5: mlx5.c:628: mlx5_uar_init_primary(): port 0 reserved UAR > > address space: 0x880000000 > > net_mlx5: mlx5.c:1107: mlx5_dev_spawn(): port 0 MAC address is > > 00:90:0b:78:2a:ea > > net_mlx5: mlx5.c:1114: mlx5_dev_spawn(): port 0 ifname is "mce0" > > net_mlx5: mlx5.c:1127: mlx5_dev_spawn(): port 0 MTU is 1500 > > net_mlx5: mlx5.c:1142: mlx5_dev_spawn(): flow rules relying on switch > > offloads will not be supported: cannot open libmnl socket: Address > > family not supported by protocol family > > net_mlx5: mlx5.c:1176: mlx5_dev_spawn(): port 0 forcing Ethernet > > interface up > > net_mlx5: mlx5_ethdev.c:735: mlx5_link_update_unlocked_gs(): port 0 > > ioctl(SIOCGIFFLAGS) failed: No such file or directory > > net_mlx5: mlx5_ethdev.c:664: mlx5_link_update_unlocked_gset(): port 0 > > ioctl(SIOCGIFFLAGS) failed: No such file or directory > > net_mlx5: mlx5_rxq.c:2150: mlx5_hrxq_drop_new(): port 0 cannot > > allocate QP for drop queue Segmentation fault (core dumped) > > > > Working through mlx5_ethdev now... > > > > Mit >=20 > Also if you are targeting Azure or Hyper-V, then don't bother porting > TAP/VDEV_NETVSC/Failsafe model because that is being replaced by netvsc > native PMD. It would be easier to just get that working. > It would mean writing a uio equivalent driver for FreeBSD.