From: kernel test robot <lkp@intel.com>
To: Shai Malin <smalin@marvell.com>, linux-scsi@vger.kernel.org
Cc: kbuild-all@lists.01.org, GR-QLogic-Storage-Upstream@marvell.com,
smalin@marvell.com, malin1024@gmail.com,
Manish Rangankar <mrangankar@marvell.com>
Subject: Re: [PATCH] scsi: qedi: Add support for fastpath doorvell recovery
Date: Thu, 5 Aug 2021 03:45:46 +0800 [thread overview]
Message-ID: <202108050312.lvljIfme-lkp@intel.com> (raw)
In-Reply-To: <20210804154335.4559-1-smalin@marvell.com>
[-- Attachment #1: Type: text/plain, Size: 8958 bytes --]
Hi Shai,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on scsi/for-next]
[also build test ERROR on mkp-scsi/for-next v5.14-rc4 next-20210804]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Shai-Malin/scsi-qedi-Add-support-for-fastpath-doorvell-recovery/20210804-234654
base: https://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi.git for-next
config: ia64-allmodconfig (attached as .config)
compiler: ia64-linux-gcc (GCC) 10.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/0day-ci/linux/commit/10706db207ac7784bf30729cba2c3ced86920e8a
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Shai-Malin/scsi-qedi-Add-support-for-fastpath-doorvell-recovery/20210804-234654
git checkout 10706db207ac7784bf30729cba2c3ced86920e8a
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-10.3.0 make.cross O=build_dir ARCH=ia64 SHELL=/bin/bash drivers/scsi/qedi/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
drivers/scsi/qedi/qedi_iscsi.c: In function 'qedi_iscsi_offload_conn':
>> drivers/scsi/qedi/qedi_iscsi.c:504:16: error: expected identifier or '(' before '->' token
504 | struct qedi_ep->db_data.params
| ^~
>> drivers/scsi/qedi/qedi_iscsi.c:592:2: error: 'rc' undeclared (first use in this function); did you mean 'rq'?
592 | rc = qedi_ops->common->db_recovery_add(qedi->cdev,
| ^~
| rq
drivers/scsi/qedi/qedi_iscsi.c:592:2: note: each undeclared identifier is reported only once for each function it appears in
>> drivers/scsi/qedi/qedi_iscsi.c:593:13: error: 'qedi_ep' is a pointer; did you mean to use '->'?
593 | qedi_ep.p_doorbell,
| ^
| ->
drivers/scsi/qedi/qedi_iscsi.c:594:14: error: 'qedi_ep' is a pointer; did you mean to use '->'?
594 | &qedi_ep.db_data,
| ^
| ->
>> drivers/scsi/qedi/qedi_iscsi.c:598:10: error: 'rval' undeclared (first use in this function)
598 | return rval;
| ^~~~
drivers/scsi/qedi/qedi_iscsi.c:605:21: error: 'qedi_ep' is a pointer; did you mean to use '->'?
605 | qedi_ep.p_doorbell,
| ^
| ->
drivers/scsi/qedi/qedi_iscsi.c:606:22: error: 'qedi_ep' is a pointer; did you mean to use '->'?
606 | &qedi_ep.db_data);
| ^
| ->
drivers/scsi/qedi/qedi_iscsi.c: In function 'qedi_ep_disconnect':
drivers/scsi/qedi/qedi_iscsi.c:1130:2: error: 'rc' undeclared (first use in this function); did you mean 'rq'?
1130 | rc = qedi_ops->common->db_recovery_del(qedi->cdev,
| ^~
| rq
drivers/scsi/qedi/qedi_iscsi.c:1131:20: error: 'qedi_ep' is a pointer; did you mean to use '->'?
1131 | qedi_ep.p_doorbell,
| ^
| ->
drivers/scsi/qedi/qedi_iscsi.c:1132:21: error: 'qedi_ep' is a pointer; did you mean to use '->'?
1132 | &qedi_ep.db_data);
| ^
| ->
drivers/scsi/qedi/qedi_iscsi.c: In function 'qedi_iscsi_offload_conn':
drivers/scsi/qedi/qedi_iscsi.c:613:1: error: control reaches end of non-void function [-Werror=return-type]
613 | }
| ^
cc1: some warnings being treated as errors
--
drivers/scsi/qedi/qedi_fw.c: In function 'qedi_ring_doorbell':
>> drivers/scsi/qedi/qedi_fw.c:939:64: error: expected ';' before 'asm'
939 | qedi_conn->ep->db_data.sq_prod = qedi_conn->ep->fw_sq_prod_idx
| ^
| ;
vim +504 drivers/scsi/qedi/qedi_iscsi.c
499
500 static int qedi_iscsi_offload_conn(struct qedi_endpoint *qedi_ep)
501 {
502 struct qed_iscsi_params_offload *conn_info;
503 struct qedi_ctx *qedi = qedi_ep->qedi;
> 504 struct qedi_ep->db_data.params
505 int rval;
506 int i;
507
508 conn_info = kzalloc(sizeof(*conn_info), GFP_KERNEL);
509 if (!conn_info) {
510 QEDI_ERR(&qedi->dbg_ctx,
511 "Failed to allocate memory ep=%p\n", qedi_ep);
512 return -ENOMEM;
513 }
514
515 ether_addr_copy(conn_info->src.mac, qedi_ep->src_mac);
516 ether_addr_copy(conn_info->dst.mac, qedi_ep->dst_mac);
517
518 conn_info->src.ip[0] = ntohl(qedi_ep->src_addr[0]);
519 conn_info->dst.ip[0] = ntohl(qedi_ep->dst_addr[0]);
520
521 if (qedi_ep->ip_type == TCP_IPV4) {
522 conn_info->ip_version = 0;
523 QEDI_INFO(&qedi->dbg_ctx, QEDI_LOG_CONN,
524 "After ntohl: src_addr=%pI4, dst_addr=%pI4\n",
525 qedi_ep->src_addr, qedi_ep->dst_addr);
526 } else {
527 for (i = 1; i < 4; i++) {
528 conn_info->src.ip[i] = ntohl(qedi_ep->src_addr[i]);
529 conn_info->dst.ip[i] = ntohl(qedi_ep->dst_addr[i]);
530 }
531
532 conn_info->ip_version = 1;
533 QEDI_INFO(&qedi->dbg_ctx, QEDI_LOG_CONN,
534 "After ntohl: src_addr=%pI6, dst_addr=%pI6\n",
535 qedi_ep->src_addr, qedi_ep->dst_addr);
536 }
537
538 conn_info->src.port = qedi_ep->src_port;
539 conn_info->dst.port = qedi_ep->dst_port;
540
541 conn_info->layer_code = ISCSI_SLOW_PATH_LAYER_CODE;
542 conn_info->sq_pbl_addr = qedi_ep->sq_pbl_dma;
543 conn_info->vlan_id = qedi_ep->vlan_id;
544
545 SET_FIELD(conn_info->tcp_flags, TCP_OFFLOAD_PARAMS_TS_EN, 1);
546 SET_FIELD(conn_info->tcp_flags, TCP_OFFLOAD_PARAMS_DA_EN, 1);
547 SET_FIELD(conn_info->tcp_flags, TCP_OFFLOAD_PARAMS_DA_CNT_EN, 1);
548 SET_FIELD(conn_info->tcp_flags, TCP_OFFLOAD_PARAMS_KA_EN, 1);
549
550 conn_info->default_cq = (qedi_ep->fw_cid % qedi->num_queues);
551
552 conn_info->ka_max_probe_cnt = DEF_KA_MAX_PROBE_COUNT;
553 conn_info->dup_ack_theshold = 3;
554 conn_info->rcv_wnd = 65535;
555
556 conn_info->ss_thresh = 65535;
557 conn_info->srtt = 300;
558 conn_info->rtt_var = 150;
559 conn_info->flow_label = 0;
560 conn_info->ka_timeout = DEF_KA_TIMEOUT;
561 conn_info->ka_interval = DEF_KA_INTERVAL;
562 conn_info->max_rt_time = DEF_MAX_RT_TIME;
563 conn_info->ttl = DEF_TTL;
564 conn_info->tos_or_tc = DEF_TOS;
565 conn_info->remote_port = qedi_ep->dst_port;
566 conn_info->local_port = qedi_ep->src_port;
567
568 conn_info->mss = qedi_calc_mss(qedi_ep->pmtu,
569 (qedi_ep->ip_type == TCP_IPV6),
570 1, (qedi_ep->vlan_id != 0));
571
572 conn_info->cwnd = DEF_MAX_CWND * conn_info->mss;
573 conn_info->rcv_wnd_scale = 4;
574 conn_info->da_timeout_value = 200;
575 conn_info->ack_frequency = 2;
576
577 QEDI_INFO(&qedi->dbg_ctx, QEDI_LOG_INFO,
578 "Default cq index [%d], mss [%d]\n",
579 conn_info->default_cq, conn_info->mss);
580
581 /* Prepare the doorbell parameters */
582 qedi_ep->db_data.agg_flags = 0;
583 qedi_ep->db_data.params = 0;
584 SET_FIELD(qedi_ep->db_data.params, ISCSI_DB_DATA_DEST, DB_DEST_XCM);
585 SET_FIELD(qedi_ep->db_data.params, ISCSI_DB_DATA_AGG_CMD,
586 DB_AGG_CMD_MAX);
587 SET_FIELD(qedi_ep->db_data.params, ISCSI_DB_DATA_AGG_VAL_SEL,
588 DQ_XCM_ISCSI_SQ_PROD_CMD);
589 SET_FIELD(qedi_ep->db_data.params, ISCSI_DB_DATA_BYPASS_EN, 1);
590
591 /* register doorbell with doorbell recovery mechanism */
> 592 rc = qedi_ops->common->db_recovery_add(qedi->cdev,
> 593 qedi_ep.p_doorbell,
594 &qedi_ep.db_data,
595 DB_REC_WIDTH_32B, DB_REC_KERNEL);
596 if (rc) {
597 kfree(conn_info);
> 598 return rval;
599 }
600
601 rval = qedi_ops->offload_conn(qedi->cdev, qedi_ep->handle, conn_info);
602 if (rval)
603 /* delete doorbell from doorbell recovery mechanism */
604 rc = qedi_ops->common->db_recovery_del(qedi->cdev,
605 qedi_ep.p_doorbell,
606 &qedi_ep.db_data);
607
608 QEDI_ERR(&qedi->dbg_ctx, "offload_conn returned %d, ep=%p\n",
609 rval, qedi_ep);
610
611 kfree(conn_info);
612 return rval;
613 }
614
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 64450 bytes --]
prev parent reply other threads:[~2021-08-04 19:46 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-04 15:43 [PATCH] scsi: qedi: Add support for fastpath doorvell recovery Shai Malin
2021-08-04 19:45 ` kernel test robot [this message]
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=202108050312.lvljIfme-lkp@intel.com \
--to=lkp@intel.com \
--cc=GR-QLogic-Storage-Upstream@marvell.com \
--cc=kbuild-all@lists.01.org \
--cc=linux-scsi@vger.kernel.org \
--cc=malin1024@gmail.com \
--cc=mrangankar@marvell.com \
--cc=smalin@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox