All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Tanmay Jagdale <tanmay@marvell.com>,
	bbrezillon@kernel.org, arno@natisbad.org, schalla@marvell.com,
	herbert@gondor.apana.org.au, davem@davemloft.net,
	sgoutham@marvell.com, lcherian@marvell.com, gakula@marvell.com,
	jerinj@marvell.com, hkelam@marvell.com, sbhatta@marvell.com,
	andrew+netdev@lunn.ch, edumazet@google.com, kuba@kernel.org,
	pabeni@redhat.com, bbhushan2@marvell.com, bhelgaas@google.com,
	pstanner@redhat.com, gregkh@linuxfoundation.org,
	linux@treblig.org, krzysztof.kozlowski@linaro.org,
	giovanni.cabiddu@intel.com
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
	linux-crypto@vger.kernel.org, linux-kernel@vger.kernel.org,
	netdev@vger.kernel.org, rkannoth@marvell.com, sumang@marvell.com,
	gcherian@marvell.com, Tanmay Jagdale <tanmay@marvell.com>
Subject: Re: [net-next PATCH v1 11/15] octeontx2-pf: ipsec: Handle NPA threshold interrupt
Date: Wed, 7 May 2025 20:04:55 +0800	[thread overview]
Message-ID: <202505071904.TWc5095k-lkp@intel.com> (raw)
In-Reply-To: <20250502132005.611698-12-tanmay@marvell.com>

Hi Tanmay,

kernel test robot noticed the following build warnings:

[auto build test WARNING on net-next/main]

url:    https://github.com/intel-lab-lkp/linux/commits/Tanmay-Jagdale/crypto-octeontx2-Share-engine-group-info-with-AF-driver/20250502-213203
base:   net-next/main
patch link:    https://lore.kernel.org/r/20250502132005.611698-12-tanmay%40marvell.com
patch subject: [net-next PATCH v1 11/15] octeontx2-pf: ipsec: Handle NPA threshold interrupt
config: x86_64-allyesconfig (https://download.01.org/0day-ci/archive/20250507/202505071904.TWc5095k-lkp@intel.com/config)
compiler: clang version 20.1.2 (https://github.com/llvm/llvm-project 58df0ef89dd64126512e4ee27b4ac3fd8ddf6247)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250507/202505071904.TWc5095k-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202505071904.TWc5095k-lkp@intel.com/

All warnings (new ones prefixed by >>):

   drivers/net/ethernet/marvell/octeontx2/nic/cn10k_ipsec.c:488:6: warning: variable 'pool' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
     488 |         if (err)
         |             ^~~
   drivers/net/ethernet/marvell/octeontx2/nic/cn10k_ipsec.c:512:23: note: uninitialized use occurs here
     512 |         qmem_free(pfvf->dev, pool->stack);
         |                              ^~~~
   drivers/net/ethernet/marvell/octeontx2/nic/cn10k_ipsec.c:488:2: note: remove the 'if' if its condition is always false
     488 |         if (err)
         |         ^~~~~~~~
     489 |                 goto pool_fail;
         |                 ~~~~~~~~~~~~~~
   drivers/net/ethernet/marvell/octeontx2/nic/cn10k_ipsec.c:466:24: note: initialize the variable 'pool' to silence this warning
     466 |         struct otx2_pool *pool;
         |                               ^
         |                                = NULL
>> drivers/net/ethernet/marvell/octeontx2/nic/cn10k_ipsec.c:528:20: warning: variable 'qset' set but not used [-Wunused-but-set-variable]
     528 |         struct otx2_qset *qset = NULL;
         |                           ^
>> drivers/net/ethernet/marvell/octeontx2/nic/cn10k_ipsec.c:591:8: warning: variable 'ptr' set but not used [-Wunused-but-set-variable]
     591 |         void *ptr;
         |               ^
   3 warnings generated.


vim +/qset +528 drivers/net/ethernet/marvell/octeontx2/nic/cn10k_ipsec.c

   521	
   522	static void cn10k_ipsec_npa_refill_inb_ipsecq(struct work_struct *work)
   523	{
   524		struct cn10k_ipsec *ipsec = container_of(work, struct cn10k_ipsec,
   525							 refill_npa_inline_ipsecq);
   526		struct otx2_nic *pfvf = container_of(ipsec, struct otx2_nic, ipsec);
   527		struct otx2_pool *pool = NULL;
 > 528		struct otx2_qset *qset = NULL;
   529		u64 val, *ptr, op_int = 0, count;
   530		int err, pool_id, idx;
   531		dma_addr_t bufptr;
   532	
   533		qset = &pfvf->qset;
   534	
   535		val = otx2_read64(pfvf, NPA_LF_QINTX_INT(0));
   536		if (!(val & 1))
   537			return;
   538	
   539		ptr = otx2_get_regaddr(pfvf, NPA_LF_AURA_OP_INT);
   540		val = otx2_atomic64_add(((u64)pfvf->ipsec.inb_ipsec_pool << 44), ptr);
   541	
   542		/* Error interrupt bits */
   543		if (val & 0xff)
   544			op_int = (val & 0xff);
   545	
   546		/* Refill buffers on a Threshold interrupt */
   547		if (val & (1 << 16)) {
   548			/* Get the current number of buffers consumed */
   549			ptr = otx2_get_regaddr(pfvf, NPA_LF_AURA_OP_CNT);
   550			count = otx2_atomic64_add(((u64)pfvf->ipsec.inb_ipsec_pool << 44), ptr);
   551			count &= GENMASK_ULL(35, 0);
   552	
   553			/* Refill */
   554			pool_id = pfvf->ipsec.inb_ipsec_pool;
   555			pool = &pfvf->qset.pool[pool_id];
   556	
   557			for (idx = 0; idx < count; idx++) {
   558				err = otx2_alloc_rbuf(pfvf, pool, &bufptr, pool_id, idx);
   559				if (err) {
   560					netdev_err(pfvf->netdev,
   561						   "Insufficient memory for IPsec pool buffers\n");
   562					break;
   563				}
   564				pfvf->hw_ops->aura_freeptr(pfvf, pool_id,
   565							    bufptr + OTX2_HEAD_ROOM);
   566			}
   567	
   568			op_int |= (1 << 16);
   569		}
   570	
   571		/* Clear/ACK Interrupt */
   572		if (op_int)
   573			otx2_write64(pfvf, NPA_LF_AURA_OP_INT,
   574				     ((u64)pfvf->ipsec.inb_ipsec_pool << 44) | op_int);
   575	}
   576	
   577	static irqreturn_t cn10k_ipsec_npa_inb_ipsecq_intr_handler(int irq, void *data)
   578	{
   579		struct otx2_nic *pf = data;
   580	
   581		schedule_work(&pf->ipsec.refill_npa_inline_ipsecq);
   582	
   583		return IRQ_HANDLED;
   584	}
   585	
   586	static int cn10k_inb_cpt_init(struct net_device *netdev)
   587	{
   588		struct otx2_nic *pfvf = netdev_priv(netdev);
   589		int ret = 0, vec;
   590		char *irq_name;
 > 591		void *ptr;
   592		u64 val;
   593	
   594		ret = cn10k_ipsec_setup_nix_rx_hw_resources(pfvf);
   595		if (ret) {
   596			netdev_err(netdev, "Failed to setup NIX HW resources for IPsec\n");
   597			return ret;
   598		}
   599	
   600		/* Work entry for refilling the NPA queue for ingress inline IPSec */
   601		INIT_WORK(&pfvf->ipsec.refill_npa_inline_ipsecq,
   602			  cn10k_ipsec_npa_refill_inb_ipsecq);
   603	
   604		/* Register NPA interrupt */
   605		vec = pfvf->hw.npa_msixoff;
   606		irq_name = &pfvf->hw.irq_name[vec * NAME_SIZE];
   607		snprintf(irq_name, NAME_SIZE, "%s-npa-qint", pfvf->netdev->name);
   608	
   609		ret = request_irq(pci_irq_vector(pfvf->pdev, vec),
   610				  cn10k_ipsec_npa_inb_ipsecq_intr_handler, 0,
   611				  irq_name, pfvf);
   612		if (ret) {
   613			dev_err(pfvf->dev,
   614				"RVUPF%d: IRQ registration failed for NPA QINT%d\n",
   615				rvu_get_pf(pfvf->pcifunc), 0);
   616			return ret;
   617		}
   618	
   619		/* Enable NPA threshold interrupt */
   620		ptr = otx2_get_regaddr(pfvf, NPA_LF_AURA_OP_INT);
   621		val = BIT_ULL(43) | BIT_ULL(17);
   622		otx2_write64(pfvf, NPA_LF_AURA_OP_INT,
   623			     ((u64)pfvf->ipsec.inb_ipsec_pool << 44) | val);
   624	
   625		/* Enable interrupt */
   626		otx2_write64(pfvf, NPA_LF_QINTX_ENA_W1S(0), BIT_ULL(0));
   627	
   628		return ret;
   629	}
   630	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

  reply	other threads:[~2025-05-07 12:06 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-05-02 13:19 [net-next PATCH v1 00/15] Enable Inbound IPsec offload on Marvell CN10K SoC Tanmay Jagdale
2025-05-02 13:19 ` [net-next PATCH v1 01/15] crypto: octeontx2: Share engine group info with AF driver Tanmay Jagdale
2025-05-02 13:19 ` [net-next PATCH v1 02/15] octeontx2-af: Configure crypto hardware for inline ipsec Tanmay Jagdale
2025-05-06 20:24   ` Simon Horman
2025-05-08 10:56     ` Bharat Bhushan
2025-05-02 13:19 ` [net-next PATCH v1 03/15] octeontx2-af: Setup Large Memory Transaction for crypto Tanmay Jagdale
2025-05-02 13:19 ` [net-next PATCH v1 04/15] octeontx2-af: Handle inbound inline ipsec config in AF Tanmay Jagdale
2025-05-07  9:19   ` Simon Horman
2025-05-07  9:28     ` Simon Horman
2025-05-13  6:08       ` Tanmay Jagdale
2025-05-02 13:19 ` [net-next PATCH v1 05/15] crypto: octeontx2: Remove inbound inline ipsec config Tanmay Jagdale
2025-05-02 13:19 ` [net-next PATCH v1 06/15] octeontx2-af: Add support for CPT second pass Tanmay Jagdale
2025-05-07  7:58   ` kernel test robot
2025-05-07 12:36   ` Simon Horman
2025-05-13  5:18     ` Tanmay Jagdale
2025-05-02 13:19 ` [net-next PATCH v1 07/15] octeontx2-af: Add support for SPI to SA index translation Tanmay Jagdale
2025-05-03 16:12   ` Kalesh Anakkur Purayil
2025-05-13  5:08     ` Tanmay Jagdale
2025-05-07 12:45   ` Simon Horman
2025-05-13  6:12     ` Tanmay Jagdale
2025-05-02 13:19 ` [net-next PATCH v1 08/15] octeontx2-af: Add mbox to alloc/free BPIDs Tanmay Jagdale
2025-05-02 13:19 ` [net-next PATCH v1 09/15] octeontx2-pf: ipsec: Allocate Ingress SA table Tanmay Jagdale
2025-05-07 12:56   ` Simon Horman
2025-05-22  9:21     ` Tanmay Jagdale
2025-05-02 13:19 ` [net-next PATCH v1 10/15] octeontx2-pf: ipsec: Setup NIX HW resources for inbound flows Tanmay Jagdale
2025-05-07 10:03   ` kernel test robot
2025-05-07 13:46   ` Simon Horman
2025-05-22  9:56     ` Tanmay Jagdale
2025-05-02 13:19 ` [net-next PATCH v1 11/15] octeontx2-pf: ipsec: Handle NPA threshold interrupt Tanmay Jagdale
2025-05-07 12:04   ` kernel test robot [this message]
2025-05-07 14:20   ` Simon Horman
2025-05-02 13:19 ` [net-next PATCH v1 12/15] octeontx2-pf: ipsec: Initialize ingress IPsec Tanmay Jagdale
2025-05-02 13:19 ` [net-next PATCH v1 13/15] octeontx2-pf: ipsec: Manage NPC rules and SPI-to-SA table entries Tanmay Jagdale
2025-05-07 15:58   ` Simon Horman
2025-05-22 10:01     ` Tanmay Jagdale
2025-05-02 13:19 ` [net-next PATCH v1 14/15] octeontx2-pf: ipsec: Process CPT metapackets Tanmay Jagdale
2025-05-07 16:30   ` Simon Horman
2025-05-23  4:08     ` Tanmay Jagdale
2025-05-02 13:19 ` [net-next PATCH v1 15/15] octeontx2-pf: ipsec: Add XFRM state and policy hooks for inbound flows Tanmay Jagdale
2025-05-07  6:42   ` kernel test robot
2025-05-07 18:31   ` Simon Horman
2025-05-05 17:52 ` [net-next PATCH v1 00/15] Enable Inbound IPsec offload on Marvell CN10K SoC Leon Romanovsky
2025-05-13  5:11   ` Tanmay Jagdale

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202505071904.TWc5095k-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=andrew+netdev@lunn.ch \
    --cc=arno@natisbad.org \
    --cc=bbhushan2@marvell.com \
    --cc=bbrezillon@kernel.org \
    --cc=bhelgaas@google.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=gakula@marvell.com \
    --cc=gcherian@marvell.com \
    --cc=giovanni.cabiddu@intel.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=herbert@gondor.apana.org.au \
    --cc=hkelam@marvell.com \
    --cc=jerinj@marvell.com \
    --cc=krzysztof.kozlowski@linaro.org \
    --cc=kuba@kernel.org \
    --cc=lcherian@marvell.com \
    --cc=linux-crypto@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@treblig.org \
    --cc=llvm@lists.linux.dev \
    --cc=netdev@vger.kernel.org \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=pabeni@redhat.com \
    --cc=pstanner@redhat.com \
    --cc=rkannoth@marvell.com \
    --cc=sbhatta@marvell.com \
    --cc=schalla@marvell.com \
    --cc=sgoutham@marvell.com \
    --cc=sumang@marvell.com \
    --cc=tanmay@marvell.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.