Hi Devesh, I love your patch! Yet something to improve: [auto build test ERROR on rdma/for-next] [also build test ERROR on next-20190222] [cannot apply to v5.0-rc4] [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/Devesh-Sharma/bnxt_re-fix-the-regression-due-to-changes-in-alloc_pbl/20190223-033010 base: https://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git for-next config: powerpc-allyesconfig (attached as .config) compiler: powerpc64-linux-gnu-gcc (Debian 8.2.0-11) 8.2.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree GCC_VERSION=8.2.0 make.cross ARCH=powerpc All errors (new ones prefixed by >>): drivers/infiniband/hw/bnxt_re/ib_verbs.c: In function 'bnxt_re_destroy_qp': >> drivers/infiniband/hw/bnxt_re/ib_verbs.c:806:31: error: 'struct bnxt_re_qp' has no member named 'res'; did you mean 'rdev'? if (!rdma_is_kernel_res(&qp->res)) { ^~~ rdev vim +806 drivers/infiniband/hw/bnxt_re/ib_verbs.c 790 791 /* Queue Pairs */ 792 int bnxt_re_destroy_qp(struct ib_qp *ib_qp) 793 { 794 struct bnxt_re_qp *qp = container_of(ib_qp, struct bnxt_re_qp, ib_qp); 795 struct bnxt_re_dev *rdev = qp->rdev; 796 unsigned int flags; 797 int rc; 798 799 bnxt_qplib_flush_cqn_wq(&qp->qplib_qp); 800 rc = bnxt_qplib_destroy_qp(&rdev->qplib_res, &qp->qplib_qp); 801 if (rc) { 802 dev_err(rdev_to_dev(rdev), "Failed to destroy HW QP"); 803 return rc; 804 } 805 > 806 if (!rdma_is_kernel_res(&qp->res)) { 807 flags = bnxt_re_lock_cqs(qp); 808 bnxt_qplib_clean_qp(&qp->qplib_qp); 809 bnxt_re_unlock_cqs(qp, flags); 810 } 811 812 bnxt_qplib_free_qp_res(&rdev->qplib_res, &qp->qplib_qp); 813 814 if (ib_qp->qp_type == IB_QPT_GSI && rdev->qp1_sqp) { 815 rc = bnxt_qplib_destroy_ah(&rdev->qplib_res, 816 &rdev->sqp_ah->qplib_ah, false); 817 if (rc) { 818 dev_err(rdev_to_dev(rdev), 819 "Failed to destroy HW AH for shadow QP"); 820 return rc; 821 } 822 823 bnxt_qplib_clean_qp(&qp->qplib_qp); 824 rc = bnxt_qplib_destroy_qp(&rdev->qplib_res, 825 &rdev->qp1_sqp->qplib_qp); 826 if (rc) { 827 dev_err(rdev_to_dev(rdev), 828 "Failed to destroy Shadow QP"); 829 return rc; 830 } 831 bnxt_qplib_free_qp_res(&rdev->qplib_res, 832 &rdev->qp1_sqp->qplib_qp); 833 mutex_lock(&rdev->qp_lock); 834 list_del(&rdev->qp1_sqp->list); 835 atomic_dec(&rdev->qp_count); 836 mutex_unlock(&rdev->qp_lock); 837 838 kfree(rdev->sqp_ah); 839 kfree(rdev->qp1_sqp); 840 rdev->qp1_sqp = NULL; 841 rdev->sqp_ah = NULL; 842 } 843 844 if (!IS_ERR_OR_NULL(qp->rumem)) 845 ib_umem_release(qp->rumem); 846 if (!IS_ERR_OR_NULL(qp->sumem)) 847 ib_umem_release(qp->sumem); 848 849 mutex_lock(&rdev->qp_lock); 850 list_del(&qp->list); 851 atomic_dec(&rdev->qp_count); 852 mutex_unlock(&rdev->qp_lock); 853 kfree(qp); 854 return 0; 855 } 856 --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip