Intel-Wired-Lan Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Alexander Lobakin <alexandr.lobakin@intel.com>
To: intel-wired-lan@osuosl.org
Subject: [Intel-wired-lan] [PATCH net-next 05/19] iecm: add vport alloc and virtchnl messages
Date: Fri, 28 Jan 2022 13:39:47 +0100	[thread overview]
Message-ID: <20220128123947.21363-1-alexandr.lobakin@intel.com> (raw)
In-Reply-To: <202201281200.CI9u45bS-lkp@intel.com>

From: kernel test robot <lkp@intel.com>
Date: Fri, 28 Jan 2022 12:19:10 +0800

> Hi Alan,
> 
> Thank you for the patch! Perhaps something to improve:
> 
> [auto build test WARNING on net-next/master]
> 
> url:    https://github.com/0day-ci/linux/commits/Alan-Brady/Add-iecm-and-idpf/20220128-085513
> base:   https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git e2cf07654efb0fd7bbcb475c6f74be7b5755a8fd
> config: i386-allyesconfig (https://download.01.org/0day-ci/archive/20220128/202201281200.CI9u45bS-lkp at intel.com/config)
> compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
> reproduce (this is a W=1 build):
>         # https://github.com/0day-ci/linux/commit/1233d9631b312eea5aebbce63590e27f9993bacc
>         git remote add linux-review https://github.com/0day-ci/linux
>         git fetch --no-tags linux-review Alan-Brady/Add-iecm-and-idpf/20220128-085513
>         git checkout 1233d9631b312eea5aebbce63590e27f9993bacc
>         # save the config file to linux build tree
>         mkdir build_dir
>         make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/net/ethernet/intel/iecm/
> 
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@intel.com>
> 
> All warnings (new ones prefixed by >>):
> 
>    drivers/net/ethernet/intel/iecm/iecm_virtchnl.c: In function 'iecm_vport_queue_ids_init':
> >> drivers/net/ethernet/intel/iecm/iecm_virtchnl.c:1396:1: warning: the frame size of 1052 bytes is larger than 1024 bytes [-Wframe-larger-than=]
>     1396 | }
>          | ^
> 
> 
> vim +1396 drivers/net/ethernet/intel/iecm/iecm_virtchnl.c
> 
>   1322	
>   1323	/**
>   1324	 * iecm_vport_queue_ids_init - Initialize queue ids from Mailbox parameters
>   1325	 * @vport: virtual port for which the queues ids are initialized
>   1326	 *
>   1327	 * Will initialize all queue ids with ids received as mailbox parameters.
>   1328	 * Returns 0 on success, negative if all the queues are not initialized.
>   1329	 */
>   1330	static int iecm_vport_queue_ids_init(struct iecm_vport *vport)
>   1331	{
>   1332		struct virtchnl2_create_vport *vport_params;
>   1333		struct virtchnl2_queue_reg_chunks *chunks;
>   1334		/* We may never deal with more than 256 same type of queues */
>   1335	#define IECM_MAX_QIDS	256
>   1336		u32 qids[IECM_MAX_QIDS];

I'll elaborate on this warning a bit: you declare 4 * 256 = 1 Kb
array directly on the stack here.

1 Kb is a limit inside the kernel, it won't cause any issues since
stacks on x86 are huge, but raises such warnings and we should
listen to them, especially given that compile tests are now being
done with -Werror.

Just use kzalloc(array_size(IECM_MAX_QIDS, sizeof(u32))) + kfree()
here to avoid that.

>   1337		int num_ids;
>   1338		u16 q_type;
>   1339	
>   1340		if (vport->adapter->config_data.req_qs_chunks) {
>   1341			struct virtchnl2_add_queues *vc_aq =
>   1342				(struct virtchnl2_add_queues *)
>   1343				vport->adapter->config_data.req_qs_chunks;
>   1344			chunks = &vc_aq->chunks;
>   1345		} else {
>   1346			vport_params = (struct virtchnl2_create_vport *)
>   1347					vport->adapter->vport_params_recvd[0];
>   1348			chunks = &vport_params->chunks;
>   1349		}
>   1350	
>   1351		num_ids = iecm_vport_get_queue_ids(qids, IECM_MAX_QIDS,
>   1352						   VIRTCHNL2_QUEUE_TYPE_TX,
>   1353						   chunks);
>   1354		if (num_ids != vport->num_txq)
>   1355			return -EINVAL;
>   1356		num_ids = __iecm_vport_queue_ids_init(vport, qids, num_ids,
>   1357						      VIRTCHNL2_QUEUE_TYPE_TX);
>   1358		if (num_ids != vport->num_txq)
>   1359			return -EINVAL;
>   1360		num_ids = iecm_vport_get_queue_ids(qids, IECM_MAX_QIDS,
>   1361						   VIRTCHNL2_QUEUE_TYPE_RX,
>   1362						   chunks);
>   1363		if (num_ids != vport->num_rxq)
>   1364			return -EINVAL;
>   1365		num_ids = __iecm_vport_queue_ids_init(vport, qids, num_ids,
>   1366						      VIRTCHNL2_QUEUE_TYPE_RX);
>   1367		if (num_ids != vport->num_rxq)
>   1368			return -EINVAL;
>   1369	
>   1370		if (iecm_is_queue_model_split(vport->txq_model)) {
>   1371			q_type = VIRTCHNL2_QUEUE_TYPE_TX_COMPLETION;
>   1372			num_ids = iecm_vport_get_queue_ids(qids, IECM_MAX_QIDS, q_type,
>   1373							   chunks);
>   1374			if (num_ids != vport->num_complq)
>   1375				return -EINVAL;
>   1376			num_ids = __iecm_vport_queue_ids_init(vport, qids,
>   1377							      num_ids,
>   1378							      q_type);
>   1379			if (num_ids != vport->num_complq)
>   1380				return -EINVAL;
>   1381		}
>   1382	
>   1383		if (iecm_is_queue_model_split(vport->rxq_model)) {
>   1384			q_type = VIRTCHNL2_QUEUE_TYPE_RX_BUFFER;
>   1385			num_ids = iecm_vport_get_queue_ids(qids, IECM_MAX_QIDS, q_type,
>   1386							   chunks);
>   1387			if (num_ids != vport->num_bufq)
>   1388				return -EINVAL;
>   1389			num_ids = __iecm_vport_queue_ids_init(vport, qids, num_ids,
>   1390							      q_type);
>   1391			if (num_ids != vport->num_bufq)
>   1392				return -EINVAL;
>   1393		}
>   1394	
>   1395		return 0;
> > 1396	}
>   1397	
> 
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/kbuild-all at lists.01.org

Thanks,
Al

  reply	other threads:[~2022-01-28 12:39 UTC|newest]

Thread overview: 83+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-28  0:09 [Intel-wired-lan] [PATCH net-next 00/19] Add iecm and idpf Alan Brady
2022-01-28  0:09 ` [Intel-wired-lan] [PATCH net-next 01/19] virtchnl: Add new virtchnl2 ops Alan Brady
2022-02-02 22:13   ` Brady, Alan
2022-01-28  0:09 ` [Intel-wired-lan] [PATCH net-next 02/19] iecm: add basic module init and documentation Alan Brady
2022-01-28 11:56   ` Alexander Lobakin
2022-02-02 22:15     ` Brady, Alan
2022-02-01 19:44   ` Shannon Nelson
2022-02-03  3:08     ` Brady, Alan
2022-01-28  0:09 ` [Intel-wired-lan] [PATCH net-next 03/19] iecm: add probe and remove Alan Brady
2022-02-01 20:02   ` Shannon Nelson
2022-02-03  3:13     ` Brady, Alan
2022-01-28  0:09 ` [Intel-wired-lan] [PATCH net-next 04/19] iecm: add api_init and controlq init Alan Brady
2022-01-28 12:09   ` Alexander Lobakin
2022-02-02 22:16     ` Brady, Alan
2022-02-01 21:26   ` Shannon Nelson
2022-02-03  3:24     ` Brady, Alan
2022-02-03  3:40       ` Brady, Alan
2022-02-03  5:26         ` Shannon Nelson
2022-02-03 13:13       ` Alexander Lobakin
2022-01-28  0:09 ` [Intel-wired-lan] [PATCH net-next 05/19] iecm: add vport alloc and virtchnl messages Alan Brady
2022-01-28  4:19   ` kernel test robot
2022-01-28 12:39     ` Alexander Lobakin [this message]
2022-02-02 22:23       ` Brady, Alan
2022-01-28 12:32   ` Alexander Lobakin
2022-02-02 22:21     ` Brady, Alan
2022-02-03 13:23       ` Alexander Lobakin
2022-01-28  0:09 ` [Intel-wired-lan] [PATCH net-next 06/19] iecm: add virtchnl messages for queues Alan Brady
2022-01-28 13:03   ` Alexander Lobakin
2022-02-02 22:48     ` Brady, Alan
2022-02-03 10:08       ` Maciej Fijalkowski
2022-02-03 14:09       ` Alexander Lobakin
2022-01-28  0:09 ` [Intel-wired-lan] [PATCH net-next 07/19] iecm: finish virtchnl messages Alan Brady
2022-01-28 13:19   ` Alexander Lobakin
2022-02-02 23:06     ` Brady, Alan
2022-02-03 15:05       ` Alexander Lobakin
2022-02-03 15:16         ` Maciej Fijalkowski
2022-01-28  0:09 ` [Intel-wired-lan] [PATCH net-next 08/19] iecm: add interrupts and configure netdev Alan Brady
2022-01-28 13:34   ` Alexander Lobakin
2022-02-02 23:17     ` Brady, Alan
2022-02-03 15:55       ` Alexander Lobakin
2022-01-28  0:09 ` [Intel-wired-lan] [PATCH net-next 09/19] iecm: alloc vport TX resources Alan Brady
2022-02-02 23:45   ` Brady, Alan
2022-02-03 17:56     ` Alexander Lobakin
2022-01-28  0:10 ` [Intel-wired-lan] [PATCH net-next 10/19] iecm: alloc vport RX resources Alan Brady
2022-01-28 14:16   ` Alexander Lobakin
2022-02-03  0:13     ` Brady, Alan
2022-02-03 18:29       ` Alexander Lobakin
2022-01-28  0:10 ` [Intel-wired-lan] [PATCH net-next 11/19] iecm: add start_xmit and set_rx_mode Alan Brady
2022-01-28 16:35   ` Alexander Lobakin
2022-01-28  0:10 ` [Intel-wired-lan] [PATCH net-next 12/19] iecm: finish netdev_ops Alan Brady
2022-01-28 17:06   ` Alexander Lobakin
2022-01-28  0:10 ` [Intel-wired-lan] [PATCH net-next 13/19] iecm: implement splitq napi_poll Alan Brady
2022-01-28  5:21   ` kernel test robot
2022-01-28 17:44     ` Alexander Lobakin
2022-02-03  1:15       ` Brady, Alan
2022-01-28 17:38   ` Alexander Lobakin
2022-02-03  1:07     ` Brady, Alan
2022-02-04 11:50       ` Alexander Lobakin
2022-01-28  0:10 ` [Intel-wired-lan] [PATCH net-next 14/19] iecm: implement singleq napi_poll Alan Brady
2022-01-28 17:57   ` Alexander Lobakin
2022-02-03  1:45     ` Brady, Alan
2022-02-03 19:05       ` Alexander Lobakin
2022-01-28  0:10 ` [Intel-wired-lan] [PATCH net-next 15/19] iecm: implement ethtool callbacks Alan Brady
2022-01-28 18:13   ` Alexander Lobakin
2022-02-03  2:13     ` Brady, Alan
2022-02-03 19:54       ` Alexander Lobakin
2022-01-28  0:10 ` [Intel-wired-lan] [PATCH net-next 16/19] iecm: implement flow director Alan Brady
2022-01-28 19:04   ` Alexander Lobakin
2022-02-03  2:41     ` Brady, Alan
2022-02-04 10:08       ` Alexander Lobakin
2022-01-28  0:10 ` [Intel-wired-lan] [PATCH net-next 17/19] iecm: implement cloud filters Alan Brady
2022-01-28 19:38   ` Alexander Lobakin
2022-02-03  2:53     ` Brady, Alan
2022-01-28  0:10 ` [Intel-wired-lan] [PATCH net-next 18/19] iecm: add advanced rss Alan Brady
2022-01-28 19:53   ` Alexander Lobakin
2022-02-03  2:55     ` Brady, Alan
2022-02-03 10:46       ` Maciej Fijalkowski
2022-02-04 10:22       ` Alexander Lobakin
2022-01-28  0:10 ` [Intel-wired-lan] [PATCH net-next 19/19] idpf: introduce idpf driver Alan Brady
2022-01-28 20:08   ` Alexander Lobakin
2022-02-03  3:07     ` Brady, Alan
2022-02-04 10:35       ` Alexander Lobakin
2022-02-04 12:05 ` [Intel-wired-lan] [PATCH net-next 00/19] Add iecm and idpf Alexander Lobakin

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=20220128123947.21363-1-alexandr.lobakin@intel.com \
    --to=alexandr.lobakin@intel.com \
    --cc=intel-wired-lan@osuosl.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox