Hi Raju, Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on net-next/master] url: https://github.com/0day-ci/linux/commits/Raju-Rangoju/cxgb4-Reference-count-MPS-TCAM-entries-within-a-PF/20190624-230630 reproduce: # apt-get install sparse # sparse version: v0.6.1-rc1-7-g2b96cd8-dirty make ARCH=x86_64 allmodconfig make C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' If you fix the issue, kindly add following tag Reported-by: kbuild test robot <l...@intel.com> sparse warnings: (new ones prefixed by >>) >> drivers/net/ethernet/chelsio/cxgb4/cxgb4_mps.c:17:51: sparse: sparse: >> incorrect type in argument 1 (different base types) @@ expected struct >> atomic_t [usertype] *v @@ got ct atomic_t [usertype] *v @@ >> drivers/net/ethernet/chelsio/cxgb4/cxgb4_mps.c:17:51: sparse: expected >> struct atomic_t [usertype] *v >> drivers/net/ethernet/chelsio/cxgb4/cxgb4_mps.c:17:51: sparse: got struct >> refcount_struct * vim +17 drivers/net/ethernet/chelsio/cxgb4/cxgb4_mps.c 5 6 static int cxgb4_mps_ref_dec_by_mac(struct adapter *adap, 7 const u8 *addr, const u8 *mask) 8 { 9 u8 bitmask[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; 10 struct mps_entries_ref *mps_entry, *tmp; 11 int ret = -EINVAL; 12 13 spin_lock_bh(&adap->mps_ref_lock); 14 list_for_each_entry_safe(mps_entry, tmp, &adap->mps_ref, list) { 15 if (ether_addr_equal(mps_entry->addr, addr) && 16 ether_addr_equal(mps_entry->mask, mask ? mask : bitmask)) { > 17 if (!atomic_dec_and_test(&mps_entry->refcnt)) { 18 spin_unlock_bh(&adap->mps_ref_lock); 19 return -EBUSY; 20 } 21 list_del(&mps_entry->list); 22 kfree(mps_entry); 23 ret = 0; 24 break; 25 } 26 } 27 spin_unlock_bh(&adap->mps_ref_lock); 28 return ret; 29 } 30 --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation