Message ID | 20170919171004.10331-5-Viswas.G@microsemi.com (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
Hi Viswas,
[auto build test WARNING on mkp-scsi/for-next]
[also build test WARNING on v4.14-rc1 next-20170920]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Viswas-G/pm80xx-updates/20170920-202506
base: https://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git for-next
config: x86_64-randconfig-a0-09202136 (attached as .config)
compiler: gcc-4.4 (Debian 4.4.7-8) 4.4.7
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64
All warnings (new ones prefixed by >>):
drivers/scsi/pm8001/pm80xx_hwi.c: In function 'pm80xx_chip_phy_ctl_req':
>> drivers/scsi/pm8001/pm80xx_hwi.c:4507: warning: unused variable 'ret'
vim +/ret +4507 drivers/scsi/pm8001/pm80xx_hwi.c
f5860992d Sakthivel K 2013-04-17 4492
f5860992d Sakthivel K 2013-04-17 4493 /**
f5860992d Sakthivel K 2013-04-17 4494 * pm80xx_chip_phy_ctl_req - support the local phy operation
f5860992d Sakthivel K 2013-04-17 4495 * @pm8001_ha: our hba card information.
f5860992d Sakthivel K 2013-04-17 4496 * @num: the inbound queue number
f5860992d Sakthivel K 2013-04-17 4497 * @phy_id: the phy id which we wanted to operate
f5860992d Sakthivel K 2013-04-17 4498 * @phy_op:
f5860992d Sakthivel K 2013-04-17 4499 */
f5860992d Sakthivel K 2013-04-17 4500 static int pm80xx_chip_phy_ctl_req(struct pm8001_hba_info *pm8001_ha,
f5860992d Sakthivel K 2013-04-17 4501 u32 phyId, u32 phy_op)
f5860992d Sakthivel K 2013-04-17 4502 {
18e9bdf60 Viswas G 2017-09-19 4503 u32 tag;
18e9bdf60 Viswas G 2017-09-19 4504 int rc;
f5860992d Sakthivel K 2013-04-17 4505 struct local_phy_ctl_req payload;
f5860992d Sakthivel K 2013-04-17 4506 struct inbound_queue_table *circularQ;
f5860992d Sakthivel K 2013-04-17 @4507 int ret;
f5860992d Sakthivel K 2013-04-17 4508 u32 opc = OPC_INB_LOCAL_PHY_CONTROL;
f5860992d Sakthivel K 2013-04-17 4509 memset(&payload, 0, sizeof(payload));
18e9bdf60 Viswas G 2017-09-19 4510 rc = pm8001_tag_alloc(pm8001_ha, &tag);
18e9bdf60 Viswas G 2017-09-19 4511 if (rc)
18e9bdf60 Viswas G 2017-09-19 4512 return rc;
f5860992d Sakthivel K 2013-04-17 4513 circularQ = &pm8001_ha->inbnd_q_tbl[0];
18e9bdf60 Viswas G 2017-09-19 4514 payload.tag = cpu_to_le32(tag);
f5860992d Sakthivel K 2013-04-17 4515 payload.phyop_phyid =
f5860992d Sakthivel K 2013-04-17 4516 cpu_to_le32(((phy_op & 0xFF) << 8) | (phyId & 0xFF));
18e9bdf60 Viswas G 2017-09-19 4517 return pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &payload, 0);
f5860992d Sakthivel K 2013-04-17 4518 }
f5860992d Sakthivel K 2013-04-17 4519
:::::: The code at line 4507 was first introduced by commit
:::::: f5860992db55c9e36b0f120dff73f0c34abe510d [SCSI] pm80xx: Added SPCv/ve specific hardware functionalities and relevant changes in common files
:::::: TO: Sakthivel K <Sakthivel.SaravananKamalRaju@pmcs.com>
:::::: CC: James Bottomley <JBottomley@Parallels.com>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
On Wed, Sep 20, 2017 at 5:18 PM, kbuild test robot <lkp@intel.com> wrote: > Hi Viswas, > > [auto build test WARNING on mkp-scsi/for-next] > [also build test WARNING on v4.14-rc1 next-20170920] > [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] > > url: https://github.com/0day-ci/linux/commits/Viswas-G/pm80xx-updates/20170920-202506 > base: https://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git for-next > config: x86_64-randconfig-a0-09202136 (attached as .config) > compiler: gcc-4.4 (Debian 4.4.7-8) 4.4.7 > reproduce: > # save the attached .config to linux build tree > make ARCH=x86_64 > > All warnings (new ones prefixed by >>): > > drivers/scsi/pm8001/pm80xx_hwi.c: In function 'pm80xx_chip_phy_ctl_req': >>> drivers/scsi/pm8001/pm80xx_hwi.c:4507: warning: unused variable 'ret' > > vim +/ret +4507 drivers/scsi/pm8001/pm80xx_hwi.c Indeed, ret is unused, Viswas, could you send a update patch to fix the warning in this patch and patch5. Thanks > > f5860992d Sakthivel K 2013-04-17 4492 > f5860992d Sakthivel K 2013-04-17 4493 /** > f5860992d Sakthivel K 2013-04-17 4494 * pm80xx_chip_phy_ctl_req - support the local phy operation > f5860992d Sakthivel K 2013-04-17 4495 * @pm8001_ha: our hba card information. > f5860992d Sakthivel K 2013-04-17 4496 * @num: the inbound queue number > f5860992d Sakthivel K 2013-04-17 4497 * @phy_id: the phy id which we wanted to operate > f5860992d Sakthivel K 2013-04-17 4498 * @phy_op: > f5860992d Sakthivel K 2013-04-17 4499 */ > f5860992d Sakthivel K 2013-04-17 4500 static int pm80xx_chip_phy_ctl_req(struct pm8001_hba_info *pm8001_ha, > f5860992d Sakthivel K 2013-04-17 4501 u32 phyId, u32 phy_op) > f5860992d Sakthivel K 2013-04-17 4502 { > 18e9bdf60 Viswas G 2017-09-19 4503 u32 tag; > 18e9bdf60 Viswas G 2017-09-19 4504 int rc; > f5860992d Sakthivel K 2013-04-17 4505 struct local_phy_ctl_req payload; > f5860992d Sakthivel K 2013-04-17 4506 struct inbound_queue_table *circularQ; > f5860992d Sakthivel K 2013-04-17 @4507 int ret; > f5860992d Sakthivel K 2013-04-17 4508 u32 opc = OPC_INB_LOCAL_PHY_CONTROL; > f5860992d Sakthivel K 2013-04-17 4509 memset(&payload, 0, sizeof(payload)); > 18e9bdf60 Viswas G 2017-09-19 4510 rc = pm8001_tag_alloc(pm8001_ha, &tag); > 18e9bdf60 Viswas G 2017-09-19 4511 if (rc) > 18e9bdf60 Viswas G 2017-09-19 4512 return rc; > f5860992d Sakthivel K 2013-04-17 4513 circularQ = &pm8001_ha->inbnd_q_tbl[0]; > 18e9bdf60 Viswas G 2017-09-19 4514 payload.tag = cpu_to_le32(tag); > f5860992d Sakthivel K 2013-04-17 4515 payload.phyop_phyid = > f5860992d Sakthivel K 2013-04-17 4516 cpu_to_le32(((phy_op & 0xFF) << 8) | (phyId & 0xFF)); > 18e9bdf60 Viswas G 2017-09-19 4517 return pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &payload, 0); > f5860992d Sakthivel K 2013-04-17 4518 } > f5860992d Sakthivel K 2013-04-17 4519 > > :::::: The code at line 4507 was first introduced by commit > :::::: f5860992db55c9e36b0f120dff73f0c34abe510d [SCSI] pm80xx: Added SPCv/ve specific hardware functionalities and relevant changes in common files > > :::::: TO: Sakthivel K <Sakthivel.SaravananKamalRaju@pmcs.com> > :::::: CC: James Bottomley <JBottomley@Parallels.com> > > --- > 0-DAY kernel test infrastructure Open Source Technology Center > https://lists.01.org/pipermail/kbuild-all Intel Corporation
diff --git a/drivers/scsi/pm8001/pm8001_hwi.c b/drivers/scsi/pm8001/pm8001_hwi.c index 10546faac58c..bc4a6f649ec9 100644 --- a/drivers/scsi/pm8001/pm8001_hwi.c +++ b/drivers/scsi/pm8001/pm8001_hwi.c @@ -3198,11 +3198,13 @@ pm8001_mpi_get_nvmd_resp(struct pm8001_hba_info *pm8001_ha, void *piomb) int pm8001_mpi_local_phy_ctl(struct pm8001_hba_info *pm8001_ha, void *piomb) { + u32 tag; struct local_phy_ctl_resp *pPayload = (struct local_phy_ctl_resp *)(piomb + 4); u32 status = le32_to_cpu(pPayload->status); u32 phy_id = le32_to_cpu(pPayload->phyop_phyid) & ID_BITS; u32 phy_op = le32_to_cpu(pPayload->phyop_phyid) & OP_BITS; + tag = le32_to_cpu(pPayload->tag); if (status != 0) { PM8001_MSG_DBG(pm8001_ha, pm8001_printk("%x phy execute %x phy op failed!\n", @@ -3211,6 +3213,7 @@ int pm8001_mpi_local_phy_ctl(struct pm8001_hba_info *pm8001_ha, void *piomb) PM8001_MSG_DBG(pm8001_ha, pm8001_printk("%x phy execute %x phy op success!\n", phy_id, phy_op)); + pm8001_tag_free(pm8001_ha, tag); return 0; } diff --git a/drivers/scsi/pm8001/pm80xx_hwi.c b/drivers/scsi/pm8001/pm80xx_hwi.c index 2b26445d1b97..baab8a19c78e 100644 --- a/drivers/scsi/pm8001/pm80xx_hwi.c +++ b/drivers/scsi/pm8001/pm80xx_hwi.c @@ -4500,17 +4500,21 @@ static int pm80xx_chip_reg_dev_req(struct pm8001_hba_info *pm8001_ha, static int pm80xx_chip_phy_ctl_req(struct pm8001_hba_info *pm8001_ha, u32 phyId, u32 phy_op) { + u32 tag; + int rc; struct local_phy_ctl_req payload; struct inbound_queue_table *circularQ; int ret; u32 opc = OPC_INB_LOCAL_PHY_CONTROL; memset(&payload, 0, sizeof(payload)); + rc = pm8001_tag_alloc(pm8001_ha, &tag); + if (rc) + return rc; circularQ = &pm8001_ha->inbnd_q_tbl[0]; - payload.tag = cpu_to_le32(1); + payload.tag = cpu_to_le32(tag); payload.phyop_phyid = cpu_to_le32(((phy_op & 0xFF) << 8) | (phyId & 0xFF)); - ret = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &payload, 0); - return ret; + return pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &payload, 0); } static u32 pm80xx_chip_is_our_interupt(struct pm8001_hba_info *pm8001_ha)