From: kbuild test robot <lkp@intel.com>
To: James Smart <jsmart2021@gmail.com>
Cc: kbuild-all@lists.01.org, linux-scsi@vger.kernel.org,
maier@linux.ibm.com, dwagner@suse.de, bvanassche@acm.org,
James Smart <jsmart2021@gmail.com>,
Ram Vegesna <ram.vegesna@broadcom.com>
Subject: Re: [PATCH v2 32/32] elx: efct: Tie into kernel Kconfig and build process
Date: Tue, 24 Dec 2019 15:45:22 +0800 [thread overview]
Message-ID: <201912241509.I0YjqP4r%lkp@intel.com> (raw)
In-Reply-To: <20191220223723.26563-33-jsmart2021@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 9211 bytes --]
Hi James,
I love your patch! Perhaps something to improve:
[auto build test WARNING on mkp-scsi/for-next]
[also build test WARNING on scsi/for-next linus/master v5.5-rc3 next-20191220]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/James-Smart/efct-Broadcom-Emulex-FC-Target-driver/20191224-054519
base: https://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git for-next
config: i386-allyesconfig (attached as .config)
compiler: gcc-7 (Debian 7.5.0-3) 7.5.0
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
In file included from include/linux/pci.h:37:0,
from drivers/scsi/elx/efct/efct_driver.h:23,
from drivers/scsi/elx/efct/efct_driver.c:7:
drivers/scsi/elx/efct/efct_driver.c: In function 'efct_request_firmware_update':
>> drivers/scsi/elx/efct/efct_driver.c:530:10: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'size_t {aka const unsigned int}' [-Wformat=]
"Invalid FW image found Magic: 0x%x Size: %ld\n",
^
include/linux/device.h:1691:22: note: in definition of macro 'dev_fmt'
#define dev_fmt(fmt) fmt
^~~
>> drivers/scsi/elx/efct/../include/efc_common.h:32:3: note: in expansion of macro 'dev_warn'
dev_warn(&((efc)->pcidev)->dev, fmt, ##args)
^~~~~~~~
>> drivers/scsi/elx/efct/efct_driver.c:529:3: note: in expansion of macro 'efc_log_warn'
efc_log_warn(efct,
^~~~~~~~~~~~
--
In file included from include/linux/pci.h:37:0,
from drivers/scsi/elx/efct/efct_driver.h:23,
from drivers/scsi/elx/efct/efct_scsi.c:7:
drivers/scsi/elx/efct/efct_scsi.c: In function 'efct_scsi_build_sgls':
>> drivers/scsi/elx/efct/efct_scsi.c:346:13: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'size_t {aka unsigned int}' [-Wformat=]
"sgl[%d] len of %ld is not multiple of blocksize\n",
^
include/linux/device.h:1691:22: note: in definition of macro 'dev_fmt'
#define dev_fmt(fmt) fmt
^~~
>> drivers/scsi/elx/efct/../include/efc_common.h:38:3: note: in expansion of macro 'dev_dbg'
dev_dbg(&((efc)->pcidev)->dev, fmt, ##args)
^~~~~~~
>> drivers/scsi/elx/efct/efct_scsi.c:345:6: note: in expansion of macro 'efc_log_test'
efc_log_test(efct,
^~~~~~~~~~~~
--
In file included from include/linux/pci.h:37:0,
from drivers/scsi/elx/libefc_sli/sli4.h:15,
from drivers/scsi/elx/libefc_sli/sli4.c:11:
drivers/scsi/elx/libefc_sli/sli4.c: In function 'sli_cmd_read_topology':
>> drivers/scsi/elx/libefc_sli/sli4.c:3753:23: warning: format '%jd' expects argument of type 'intmax_t', but argument 3 has type 'size_t {aka unsigned int}' [-Wformat=]
efc_log_info(sli4, "loop map buffer too small %jd\n",
^
include/linux/device.h:1691:22: note: in definition of macro 'dev_fmt'
#define dev_fmt(fmt) fmt
^~~
>> drivers/scsi/elx/libefc_sli/../include/efc_common.h:35:3: note: in expansion of macro 'dev_info'
dev_info(&((efc)->pcidev)->dev, fmt, ##args)
^~~~~~~~
>> drivers/scsi/elx/libefc_sli/sli4.c:3753:4: note: in expansion of macro 'efc_log_info'
efc_log_info(sli4, "loop map buffer too small %jd\n",
^~~~~~~~~~~~
vim +530 drivers/scsi/elx/efct/efct_driver.c
3bd67f890edb8f James Smart 2019-12-20 507
3bd67f890edb8f James Smart 2019-12-20 508 static int
3bd67f890edb8f James Smart 2019-12-20 509 efct_request_firmware_update(struct efct *efct)
3bd67f890edb8f James Smart 2019-12-20 510 {
3bd67f890edb8f James Smart 2019-12-20 511 int rc = 0;
3bd67f890edb8f James Smart 2019-12-20 512 u8 file_name[256], fw_change_status = 0;
3bd67f890edb8f James Smart 2019-12-20 513 const struct firmware *fw;
3bd67f890edb8f James Smart 2019-12-20 514 struct efct_hw_grp_hdr *fw_image;
3bd67f890edb8f James Smart 2019-12-20 515
3bd67f890edb8f James Smart 2019-12-20 516 snprintf(file_name, 256, "%s.grp", efct->model);
3bd67f890edb8f James Smart 2019-12-20 517 rc = request_firmware(&fw, file_name, &efct->pcidev->dev);
3bd67f890edb8f James Smart 2019-12-20 518 if (rc) {
3bd67f890edb8f James Smart 2019-12-20 519 efc_log_err(efct, "Firmware file(%s) not found.\n", file_name);
3bd67f890edb8f James Smart 2019-12-20 520 return rc;
3bd67f890edb8f James Smart 2019-12-20 521 }
3bd67f890edb8f James Smart 2019-12-20 522 fw_image = (struct efct_hw_grp_hdr *)fw->data;
3bd67f890edb8f James Smart 2019-12-20 523
3bd67f890edb8f James Smart 2019-12-20 524 /* Check if firmware provided is compatible with this particular
3bd67f890edb8f James Smart 2019-12-20 525 * Adapter of not
3bd67f890edb8f James Smart 2019-12-20 526 */
3bd67f890edb8f James Smart 2019-12-20 527 if ((be32_to_cpu(fw_image->magic_number) != EFCT_HW_OBJECT_G5) &&
3bd67f890edb8f James Smart 2019-12-20 528 (be32_to_cpu(fw_image->magic_number) != EFCT_HW_OBJECT_G6)) {
3bd67f890edb8f James Smart 2019-12-20 @529 efc_log_warn(efct,
3bd67f890edb8f James Smart 2019-12-20 @530 "Invalid FW image found Magic: 0x%x Size: %ld\n",
3bd67f890edb8f James Smart 2019-12-20 531 be32_to_cpu(fw_image->magic_number), fw->size);
3bd67f890edb8f James Smart 2019-12-20 532 rc = -1;
3bd67f890edb8f James Smart 2019-12-20 533 goto exit;
3bd67f890edb8f James Smart 2019-12-20 534 }
3bd67f890edb8f James Smart 2019-12-20 535
3bd67f890edb8f James Smart 2019-12-20 536 if (!strncmp(efct->fw_version, fw_image->revision,
3bd67f890edb8f James Smart 2019-12-20 537 strnlen(fw_image->revision, 16))) {
3bd67f890edb8f James Smart 2019-12-20 538 efc_log_debug(efct,
3bd67f890edb8f James Smart 2019-12-20 539 "No update req. Firmware is already up to date.\n");
3bd67f890edb8f James Smart 2019-12-20 540 rc = 0;
3bd67f890edb8f James Smart 2019-12-20 541 goto exit;
3bd67f890edb8f James Smart 2019-12-20 542 }
3bd67f890edb8f James Smart 2019-12-20 543 rc = efct_firmware_write(efct, fw->data, fw->size, &fw_change_status);
3bd67f890edb8f James Smart 2019-12-20 544 if (rc) {
3bd67f890edb8f James Smart 2019-12-20 545 efc_log_err(efct,
3bd67f890edb8f James Smart 2019-12-20 546 "Firmware update failed. Return code = %d\n", rc);
3bd67f890edb8f James Smart 2019-12-20 547 } else {
3bd67f890edb8f James Smart 2019-12-20 548 efc_log_info(efct, "Firmware updated successfully\n");
3bd67f890edb8f James Smart 2019-12-20 549 switch (fw_change_status) {
3bd67f890edb8f James Smart 2019-12-20 550 case 0x00:
3bd67f890edb8f James Smart 2019-12-20 551 efc_log_debug(efct,
3bd67f890edb8f James Smart 2019-12-20 552 "No reset needed, new firmware is active.\n");
3bd67f890edb8f James Smart 2019-12-20 553 break;
3bd67f890edb8f James Smart 2019-12-20 554 case 0x01:
3bd67f890edb8f James Smart 2019-12-20 555 efc_log_warn(efct,
3bd67f890edb8f James Smart 2019-12-20 556 "A physical device reset (host reboot) is needed to activate the new firmware\n");
3bd67f890edb8f James Smart 2019-12-20 557 break;
3bd67f890edb8f James Smart 2019-12-20 558 case 0x02:
3bd67f890edb8f James Smart 2019-12-20 559 case 0x03:
3bd67f890edb8f James Smart 2019-12-20 560 efc_log_debug(efct,
3bd67f890edb8f James Smart 2019-12-20 561 "firmware is resetting to activate the new firmware\n");
3bd67f890edb8f James Smart 2019-12-20 562 efct_fw_reset(efct);
3bd67f890edb8f James Smart 2019-12-20 563 break;
3bd67f890edb8f James Smart 2019-12-20 564 default:
3bd67f890edb8f James Smart 2019-12-20 565 efc_log_debug(efct,
3bd67f890edb8f James Smart 2019-12-20 566 "Unexected value change_status: %d\n",
3bd67f890edb8f James Smart 2019-12-20 567 fw_change_status);
3bd67f890edb8f James Smart 2019-12-20 568 break;
3bd67f890edb8f James Smart 2019-12-20 569 }
3bd67f890edb8f James Smart 2019-12-20 570 }
3bd67f890edb8f James Smart 2019-12-20 571
3bd67f890edb8f James Smart 2019-12-20 572 exit:
3bd67f890edb8f James Smart 2019-12-20 573 release_firmware(fw);
3bd67f890edb8f James Smart 2019-12-20 574
3bd67f890edb8f James Smart 2019-12-20 575 return rc;
3bd67f890edb8f James Smart 2019-12-20 576 }
3bd67f890edb8f James Smart 2019-12-20 577
:::::: The code at line 530 was first introduced by commit
:::::: 3bd67f890edb8fd4fc7c9902b8f11e2041571d9a elx: efct: Driver initialization routines
:::::: TO: James Smart <jsmart2021@gmail.com>
:::::: CC: 0day robot <lkp@intel.com>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 70326 bytes --]
next prev parent reply other threads:[~2019-12-24 7:46 UTC|newest]
Thread overview: 77+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-20 22:36 [PATCH v2 00/32] [NEW] efct: Broadcom (Emulex) FC Target driver James Smart
2019-12-20 22:36 ` [PATCH v2 01/32] elx: libefc_sli: SLI-4 register offsets and field definitions James Smart
2020-01-08 7:11 ` Hannes Reinecke
2020-01-09 0:59 ` James Smart
2019-12-20 22:36 ` [PATCH v2 02/32] elx: libefc_sli: SLI Descriptors and Queue entries James Smart
2020-01-08 7:24 ` Hannes Reinecke
2020-01-09 1:00 ` James Smart
2019-12-20 22:36 ` [PATCH v2 03/32] elx: libefc_sli: Data structures and defines for mbox commands James Smart
2020-01-08 7:32 ` Hannes Reinecke
2020-01-09 1:03 ` James Smart
2019-12-20 22:36 ` [PATCH v2 04/32] elx: libefc_sli: queue create/destroy/parse routines James Smart
2020-01-08 7:45 ` Hannes Reinecke
2020-01-09 1:04 ` James Smart
2019-12-20 22:36 ` [PATCH v2 05/32] elx: libefc_sli: Populate and post different WQEs James Smart
2020-01-08 7:54 ` Hannes Reinecke
2020-01-09 1:04 ` James Smart
2019-12-20 22:36 ` [PATCH v2 06/32] elx: libefc_sli: bmbx routines and SLI config commands James Smart
2020-01-08 8:05 ` Hannes Reinecke
2019-12-20 22:36 ` [PATCH v2 07/32] elx: libefc_sli: APIs to setup SLI library James Smart
2020-01-08 8:22 ` Hannes Reinecke
2020-01-09 1:29 ` James Smart
2019-12-20 22:36 ` [PATCH v2 08/32] elx: libefc: Generic state machine framework James Smart
2020-01-09 7:05 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 09/32] elx: libefc: Emulex FC discovery library APIs and definitions James Smart
2020-01-09 7:16 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 10/32] elx: libefc: FC Domain state machine interfaces James Smart
2020-01-09 7:27 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 11/32] elx: libefc: SLI and FC PORT " James Smart
2020-01-09 7:34 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 12/32] elx: libefc: Remote node " James Smart
2020-01-09 8:31 ` Hannes Reinecke
2020-01-09 9:57 ` Daniel Wagner
2019-12-20 22:37 ` [PATCH v2 13/32] elx: libefc: Fabric " James Smart
2020-01-09 8:34 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 14/32] elx: libefc: FC node ELS and state handling James Smart
2020-01-09 8:39 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 15/32] elx: efct: Data structures and defines for hw operations James Smart
2020-01-09 8:41 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 16/32] elx: efct: Driver initialization routines James Smart
2020-01-09 9:01 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 17/32] elx: efct: Hardware queues creation and deletion James Smart
2020-01-09 9:10 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 18/32] elx: efct: RQ buffer, memory pool allocation and deallocation APIs James Smart
2020-01-09 9:13 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 19/32] elx: efct: Hardware IO and SGL initialization James Smart
2020-01-09 9:22 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 20/32] elx: efct: Hardware queues processing James Smart
2020-01-09 9:24 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 21/32] elx: efct: Unsolicited FC frame processing routines James Smart
2020-01-09 9:26 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 22/32] elx: efct: Extended link Service IO handling James Smart
2020-01-09 9:38 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 23/32] elx: efct: SCSI IO handling routines James Smart
2020-01-09 9:41 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 24/32] elx: efct: LIO backend interface routines James Smart
2020-01-09 3:56 ` Bart Van Assche
2019-12-20 22:37 ` [PATCH v2 25/32] elx: efct: Hardware IO submission routines James Smart
2020-01-09 9:52 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 26/32] elx: efct: link statistics and SFP data James Smart
2020-01-09 10:12 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 27/32] elx: efct: xport and hardware teardown routines James Smart
2020-01-09 10:14 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 28/32] elx: efct: IO timeout handling routines James Smart
2020-01-09 11:27 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 29/32] elx: efct: Firmware update, async link processing James Smart
2020-01-09 11:45 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 30/32] elx: efct: scsi_transport_fc host interface support James Smart
2020-01-09 11:46 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 31/32] elx: efct: Add Makefile and Kconfig for efct driver James Smart
2019-12-20 23:17 ` Randy Dunlap
2020-01-09 11:47 ` Hannes Reinecke
2019-12-20 22:37 ` [PATCH v2 32/32] elx: efct: Tie into kernel Kconfig and build process James Smart
2019-12-24 7:45 ` kbuild test robot [this message]
2019-12-24 21:01 ` Nathan Chancellor
2019-12-25 16:09 ` James Smart
2020-01-09 11:47 ` Hannes Reinecke
2019-12-29 18:27 ` [PATCH v2 00/32] [NEW] efct: Broadcom (Emulex) FC Target driver Sebastian Herbszt
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=201912241509.I0YjqP4r%lkp@intel.com \
--to=lkp@intel.com \
--cc=bvanassche@acm.org \
--cc=dwagner@suse.de \
--cc=jsmart2021@gmail.com \
--cc=kbuild-all@lists.01.org \
--cc=linux-scsi@vger.kernel.org \
--cc=maier@linux.ibm.com \
--cc=ram.vegesna@broadcom.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;
as well as URLs for NNTP newsgroup(s).