Hi Muneendra, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on scsi/for-next] [also build test WARNING on mkp-scsi/for-next next-20201218] [cannot apply to cgroup/for-next v5.10] [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/Muneendra/blkcg-Support-to-track-FC-storage-blk-io-traffic/20201216-202913 base: https://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi.git for-next config: powerpc64-randconfig-r023-20201217 (attached as .config) compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project cee1e7d14f4628d6174b33640d502bff3b54ae45) 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 # install powerpc64 cross compiling tool for clang build # apt-get install binutils-powerpc64-linux-gnu # https://github.com/0day-ci/linux/commit/2c2a03c1111ef8a2c5aac440b227390d40d1e2cb git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Muneendra/blkcg-Support-to-track-FC-storage-blk-io-traffic/20201216-202913 git checkout 2c2a03c1111ef8a2c5aac440b227390d40d1e2cb # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=powerpc64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All warnings (new ones prefixed by >>): >> drivers/scsi/lpfc/lpfc_ct.c:3749:1: warning: no previous prototype for function 'lpfc_cmpl_ct_cmd_vmid' [-Wmissing-prototypes] lpfc_cmpl_ct_cmd_vmid(struct lpfc_hba *phba, struct lpfc_iocbq *cmdiocb, ^ drivers/scsi/lpfc/lpfc_ct.c:3748:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void ^ static 1 warning generated. vim +/lpfc_cmpl_ct_cmd_vmid +3749 drivers/scsi/lpfc/lpfc_ct.c 3747 3748 void > 3749 lpfc_cmpl_ct_cmd_vmid(struct lpfc_hba *phba, struct lpfc_iocbq *cmdiocb, 3750 struct lpfc_iocbq *rspiocb) 3751 { 3752 struct lpfc_vport *vport = cmdiocb->vport; 3753 struct lpfc_dmabuf *inp = cmdiocb->context1; 3754 struct lpfc_dmabuf *outp = cmdiocb->context2; 3755 struct lpfc_sli_ct_request *ctcmd = inp->virt; 3756 struct lpfc_sli_ct_request *ctrsp = outp->virt; 3757 u16 rsp = ctrsp->CommandResponse.bits.CmdRsp; 3758 struct app_id_object *app; 3759 u32 cmd, hash; 3760 struct lpfc_vmid *vmp; 3761 u8 *data = outp->virt; 3762 int i; 3763 3764 cmd = be16_to_cpu(ctcmd->CommandResponse.bits.CmdRsp); 3765 if (cmd == SLI_CTAS_DALLAPP_ID) 3766 lpfc_ct_free_iocb(phba, cmdiocb); 3767 3768 if (lpfc_els_chk_latt(vport) || rspiocb->iocb.ulpStatus) { 3769 if (cmd != SLI_CTAS_DALLAPP_ID) 3770 return; 3771 } 3772 /* Check for a CT LS_RJT response */ 3773 if (rsp == be16_to_cpu(SLI_CT_RESPONSE_FS_RJT)) { 3774 if (cmd != SLI_CTAS_DALLAPP_ID) 3775 lpfc_printf_vlog(vport, KERN_DEBUG, LOG_DISCOVERY, 3776 "3306 VMID FS_RJT Data: x%x %x %x\n", 3777 cmd, ctrsp->ReasonCode, ctrsp->Explanation); 3778 if ((cmd != SLI_CTAS_DALLAPP_ID) || 3779 (ctrsp->ReasonCode != SLI_CT_UNABLE_TO_PERFORM_REQ) || 3780 (ctrsp->Explanation != SLI_CT_APP_ID_NOT_AVAILABLE)) { 3781 /* If DALLAPP_ID failed retry later */ 3782 if (cmd == SLI_CTAS_DALLAPP_ID) 3783 vport->load_flag |= FC_DEREGISTER_ALL_APP_ID; 3784 return; 3785 } 3786 } 3787 3788 switch (cmd) { 3789 case SLI_CTAS_RAPP_IDENT: 3790 app = (struct app_id_object *)(RAPP_IDENT_OFFSET + data); 3791 lpfc_printf_vlog(vport, KERN_DEBUG, LOG_DISCOVERY, 3792 "6712 RAPP_IDENT app id %d port id %x id\n" 3793 "len %d\n", be32_to_cpu(app->app_id), 3794 be32_to_cpu(app->port_id), 3795 app->obj.entity_id_len); 3796 3797 if (app->obj.entity_id_len == 0 || app->port_id == 0) 3798 return; 3799 3800 hash = lpfc_vmid_hash_fn(app->obj.entity_id, 3801 app->obj.entity_id_len); 3802 vmp = lpfc_get_vmid_from_hastable(vport, hash, 3803 app->obj.entity_id); 3804 if (vmp) { 3805 vmp->un.app_id = be32_to_cpu(app->app_id); 3806 vmp->flag |= LPFC_VMID_REGISTERED; 3807 vmp->flag &= ~LPFC_VMID_REQ_REGISTER; 3808 /* Set IN USE flag */ 3809 vport->vmid_flag |= LPFC_VMID_IN_USE; 3810 } else { 3811 lpfc_printf_vlog(vport, KERN_DEBUG, 3812 LOG_DISCOVERY, "6901 No entry found\n" 3813 "%s hash %d\n", app->obj.entity_id, 3814 hash); 3815 } 3816 break; 3817 case SLI_CTAS_DAPP_IDENT: 3818 app = (struct app_id_object *)(DAPP_IDENT_OFFSET + data); 3819 lpfc_printf_vlog(vport, KERN_DEBUG, LOG_DISCOVERY, 3820 "6713 DAPP_IDENT app id %d port id %x", 3821 cpu_to_be32(app->app_id), 3822 cpu_to_be32(app->port_id)); 3823 break; 3824 case SLI_CTAS_DALLAPP_ID: 3825 lpfc_printf_vlog(vport, KERN_DEBUG, LOG_DISCOVERY, 3826 "8856 Deregistered all app ids"); 3827 for (i = 0; i < phba->cfg_max_vmid; i++) { 3828 vmp = &vport->vmid[i]; 3829 if (vmp->flag != LPFC_VMID_SLOT_FREE) 3830 memset(vmp, 0, sizeof(struct lpfc_vmid)); 3831 } 3832 for (i = 0; i < LPFC_VMID_HASH_SIZE; i++) 3833 vport->hash_table[i] = NULL; 3834 vport->load_flag |= FC_ALLOW_VMID; 3835 break; 3836 default: 3837 lpfc_printf_vlog(vport, KERN_DEBUG, LOG_DISCOVERY, 3838 "8857 Invalid command code"); 3839 } 3840 } 3841 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org