From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-vk0-f68.google.com (mail-vk0-f68.google.com [209.85.213.68]) by dpdk.org (Postfix) with ESMTP id 727EC1B677 for ; Wed, 6 Jun 2018 13:46:39 +0200 (CEST) Received: by mail-vk0-f68.google.com with SMTP id w8-v6so3537078vkh.4 for ; Wed, 06 Jun 2018 04:46:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=semihalf-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=NOIFGMnAIvEdUY5epvHLtNeowvZGOdpiwl2VroQkDck=; b=OstUGe8By3E01No5yLNxC9uQ3y+8MbdHqRQnm8yqkmO7FE88nJtG0IeM1clRjYXQ9b 6PXvqVwOlkGBFS4S6Ju1jYEZVBcfGwqnEFWIRXO+pM1GgmQiRqBPddQkHRjXkshYMaCr qFKub2JJ7+NaZxBEdC7KYwJyEmgSIqkAt5kdcqwTJWQeY+wwuQVuGbLuwaBuXPgxaIT7 8jE+5ZSgia/ZHvZUt7+mgkc8oWuHoTIseXtdVIQlW59kJziYk51qJ8Wod3He6yEsW9XO RapWWls1DFwTRCVdWwBQNsAT/d4tiPkRyLrnH/02lloP0+3lrWi5vOewsoTNH6i4bYBr z69w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=NOIFGMnAIvEdUY5epvHLtNeowvZGOdpiwl2VroQkDck=; b=apOGsx3/oeV7uv4zVHGG9I7/YuFFfmAg/Ep54qCljn2gaMl7VeeLuibxjDsb/SSa0A 60HpxGW7vP8XqMbmhSxluuc9lMyH9uVL9KUNNiy+BAT9I+1487hqB5QWC80LPd6p2rVr AU88jgRYQmhaRHGa3gvPogvmP4nj6cRIcHxZl7530eMb1lwsOhNAdagNofYJRDe/Qqy3 V/qq1LVUjoKJJFkteUj34/eQ/qy0yLIjqyL7eB1jNCcPOusJKtvOZ5GQD9hykQYbdKEv S819i7jQ4bltcWsyksKx6Wmm0Cs74jaGtFP51xcaKRrgb5Mfgh0jpv/2xfCas4WeQXjd SjlQ== X-Gm-Message-State: APt69E1xjjG1cSPaZ3zf/QRp+cDqRTBX16PSiWKHyHh21gEGLyOwMqEW RpWYxu/BVmMZcuuF0JumtNHO3wSGBuw4DO05NCYOSQ== X-Google-Smtp-Source: ADUXVKJjA+t07XOqsSrkYTik+YNpQJiogH/fZofEERWsexpjBsfxo17UPPu9DyzaFYvL+T7kC06bIveSENs2/pG3xk4= X-Received: by 2002:a1f:ecc3:: with SMTP id k186-v6mr1643078vkh.46.1528285598732; Wed, 06 Jun 2018 04:46:38 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a67:62c7:0:0:0:0:0 with HTTP; Wed, 6 Jun 2018 04:46:38 -0700 (PDT) In-Reply-To: <30ba546f-b7b7-cb74-6ae4-3387250a7936@intel.com> References: <20180604120918.16904-1-mk@semihalf.com> <30ba546f-b7b7-cb74-6ae4-3387250a7936@intel.com> From: =?UTF-8?Q?Micha=C5=82_Krawczyk?= Date: Wed, 6 Jun 2018 13:46:38 +0200 Message-ID: To: Ferruh Yigit Cc: dev@dpdk.org, Marcin Wojtas , =?UTF-8?B?UmFmYcWCIEtvemlr?= , "Tzalik, Guy" , "Schmeilin, Evgeny" , Thomas Monjalon , "Matushevsky, Alexander" , Anatoly Burakov Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Subject: Re: [dpdk-dev] [PATCH v2 00/26] net/ena: new features and fixes 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: Wed, 06 Jun 2018 11:46:39 -0000 Hi Ferruh, 2018-06-05 18:42 GMT+02:00 Ferruh Yigit : > > On 6/4/2018 1:09 PM, Michal Krawczyk wrote: > > The ENA driver was updated with the new features and few fixes and mino= r > > changes are introduced. > > First of all, the communication layer which is delivered by vendor was > > updated - the version in the HEAD is a bit outdated now. ENA is able to > > communicate with the driver through Admin queue by using admin interrup= ts > > instead of polling. > > Admin interrupts are also used for handling AENQ events, which are used= for > > the following new features: > > - LSC handlers > > - watchdog and device rest > > - monitoring the admin queue > > - handling ENA notifications (getting hints from device) > > For the watchdog and admin queue monitoring, the timers had to be used,= so > > the makefile was modified to do not cut out the librte_timer. > > > > From other fixes and changes: > > - legacy LLQ was removed which is now deprecated API > > - Rx out of order completion was added to enable cleaning up packets = out > > of order > > - Tx mbufs are now linearized if they exceed supported number of segm= ents > > - pass information about maximum number of Tx and Rx descriptors > > - the IO queue number is now taking into consideration maximum number= of > > sq and cq > > - Tx id requested for sending is now being validated and the reset is > > being triggered if it is invalid > > - branch predictioning was added for better performance > > - error checking and returned values were fixed > > - macros for allocating memory in communication layer were fixed > > - information about numa mode is now being passed to the NIC > > > > --- > > v2: > > * Rebased on top of dpdk-next-net > > * Added link speed patch > > * Added fix when allocating coherent memory in the PMD > > Hi Micha=C5=82, > > I am getting build error for ICC [1] and shared library [2], can you plea= se check? > > > [1] > .../drivers/net/ena/base/ena_com.c(323): error #592: variable "flags" is = used > before its value is set > ENA_SPINLOCK_LOCK(admin_queue->q_lock, flags); > ^ > .../drivers/net/ena/base/ena_com.c(534): error #3656: variable "flags" ma= y be > used before its value is set > ENA_SPINLOCK_LOCK(admin_queue->q_lock, flags); > ^ > .../drivers/net/ena/base/ena_com.c(589): error #592: variable "flags" is = used > before its value is set > ENA_SPINLOCK_LOCK(admin_queue->q_lock, flags); > ^ > .../drivers/net/ena/base/ena_com.c(634): error #592: variable "flags" is = used > before its value is set > ENA_SPINLOCK_LOCK(mmio_read->lock, flags); > ^ > .../drivers/net/ena/base/ena_com.c(1297): error #592: variable "flags" is= used > before its value is set > ENA_SPINLOCK_LOCK(admin_queue->q_lock, flags); > ^ > .../drivers/net/ena/base/ena_com.c(1341): error #592: variable "flags" is= used > before its value is set > ENA_SPINLOCK_LOCK(admin_queue->q_lock, flags); > ^ > That should be easy to fix - I prepared the patch but I want to send it with second fix together. > > > [2] > ena_ethdev.o: In function `eth_ena_pci_probe': > .../drivers/net/ena/ena_ethdev.c:(.text+0x6de): undefined reference to > `rte_timer_subsystem_init' > .../drivers/net/ena/ena_ethdev.c:(.text+0x6ea): undefined reference to > `rte_timer_init' > ena_ethdev.o: In function `eth_ena_pci_remove': > .../drivers/net/ena/ena_ethdev.c:(.text+0x854): undefined reference to > `rte_timer_stop_sync' > ena_ethdev.o: In function `ena_start': > .../drivers/net/ena/ena_ethdev.c:(.text+0x1ff6): undefined reference to > `rte_timer_reset' > ena_ethdev.o: In function `ena_stop': > .../drivers/net/ena/ena_ethdev.c:(.text+0x21a1): undefined reference to > `rte_timer_stop_sync' > ena_ethdev.o: In function `ena_close': > .../drivers/net/ena/ena_ethdev.c:(.text+0x21d8): undefined reference to > `rte_timer_stop_sync' > Strange that this happens, it should be fixed in the patch: mk: link librte_timer with --whole-archive which seems to be no longer needed, because similar commit is already applied (eb54ef42b02f94c4093556fdd6b51e2d7fd0df47). That should resolve the issue with linking (at least for gcc it is helping) by linking timer library with --whole-archive. Could you, please, send me build logs so I could look closer if it is properly built with ICC as I don't have access to it? Thanks, Micha=C5=82