From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mit Matelske Subject: Re: mlx5 under FreeBSD Date: Mon, 4 Mar 2019 10:44:56 -0600 (CST) Message-ID: <873778686.3682315.1551717896130.JavaMail.zimbra@perftech.com> References: <1203238912.103536.1542300483728.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=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: stephen , Thomas Monjalon , dev , Yongseok Koh To: shahafs Return-path: Received: from smtp-gw.pt.net (smtp-gw.pt.net [206.210.194.15]) by dpdk.org (Postfix) with ESMTP id 762F82B9E for ; Mon, 4 Mar 2019 17:44:58 +0100 (CET) In-Reply-To: List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" dev.mlx5_core.1.hw.board_id: LNR3270110033 dev.mlx5_core.1.hw.fw_version: 12.17.2020 Thanks! Mit Matelske ----- Original Message ----- From: "shahafs" To: "Mit Matelske" , "stephen" Cc: "Thomas Monjalon" , "dev" , "Yongseok Koh" Sent: Sunday, March 3, 2019 2:43:41 AM Subject: RE: [dpdk-dev] mlx5 under FreeBSD Friday, March 1, 2019 5:58 PM, Mit Matelske: > Subject: Re: [dpdk-dev] mlx5 under FreeBSD > > I was wondering if I could lean on the experts to help me out with an issue? > I'm finally testing this port but don't understand why the following error is > happening: > > net_mlx5: mlx5_rxq.c:2151: mlx5_hrxq_drop_new(): port 0 cannot allocate > QP for drop queue > > The driver is giving the following error corresponding with that DPDK > message: > > 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? Which FW version you use? > > The mlx5_core_create_tir function completes successfully for the en driver, > just not the ib driver when trying to build the hash tables. Any ideas? > > 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 the > card is balking on this action. > > Thanks! > > Mit Matelske > > ----- 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 > > On Wed, 21 Nov 2018 11:11:51 -0600 (CST) Mit Matelske > wrote: > > > > > > > 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 example 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 > > 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.