drivers/net/wireless/ath/ath12k/dp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
Destroy the rhash_tbl before returning the error code.
Fixes: a88cf5f71adf ("wifi: ath12k: Add hash table for ath12k_dp_link_peer")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
---
drivers/net/wireless/ath/ath12k/dp.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/wireless/ath/ath12k/dp.c b/drivers/net/wireless/ath/ath12k/dp.c
index 9f05eea6695a..ab54c8a84d3e 100644
--- a/drivers/net/wireless/ath/ath12k/dp.c
+++ b/drivers/net/wireless/ath/ath12k/dp.c
@@ -1513,7 +1513,7 @@ static int ath12k_dp_setup(struct ath12k_base *ab)
HAL_WBM_IDLE_LINK, srng, n_link_desc);
if (ret) {
ath12k_warn(ab, "failed to setup link desc: %d\n", ret);
- return ret;
+ goto rhash_destroy;
}
ret = ath12k_dp_cc_init(ab);
--
2.51.0
On Thu, 18 Dec 2025 10:44:20 +0300, Dan Carpenter wrote:
> Destroy the rhash_tbl before returning the error code.
>
>
Applied, thanks!
[1/1] wifi: ath12k: clean up on error in ath12k_dp_setup()
commit: 40feb23c726369700918b9c35db987f9fe3c6498
Best regards,
--
Jeff Johnson <jeff.johnson@oss.qualcomm.com>
Hi Dan,
kernel test robot noticed the following build errors:
[auto build test ERROR on next-20251217]
url: https://github.com/intel-lab-lkp/linux/commits/Dan-Carpenter/wifi-ath12k-clean-up-on-error-in-ath12k_dp_setup/20251218-154554
base: next-20251217
patch link: https://lore.kernel.org/r/aUOw1J0TU4VgeXj6%40stanley.mountain
patch subject: [PATCH next] wifi: ath12k: clean up on error in ath12k_dp_setup()
config: riscv-allyesconfig (https://download.01.org/0day-ci/archive/20251222/202512221824.sz1jZjhH-lkp@intel.com/config)
compiler: clang version 16.0.6 (https://github.com/llvm/llvm-project 7cbf1a2591520c2491aa35339f227775f4d3adf6)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251222/202512221824.sz1jZjhH-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202512221824.sz1jZjhH-lkp@intel.com/
All errors (new ones prefixed by >>):
>> drivers/net/wireless/ath/ath12k/dp.c:1767:8: error: use of undeclared label 'rhash_destroy'
goto rhash_destroy;
^
1 error generated.
vim +/rhash_destroy +1767 drivers/net/wireless/ath/ath12k/dp.c
1734
1735 int ath12k_dp_alloc(struct ath12k_base *ab)
1736 {
1737 struct ath12k_dp *dp = &ab->dp;
1738 struct hal_srng *srng = NULL;
1739 size_t size = 0;
1740 u32 n_link_desc = 0;
1741 int ret;
1742 int i;
1743
1744 dp->ab = ab;
1745
1746 INIT_LIST_HEAD(&dp->reo_cmd_list);
1747 INIT_LIST_HEAD(&dp->reo_cmd_cache_flush_list);
1748 INIT_LIST_HEAD(&dp->reo_cmd_update_rx_queue_list);
1749 spin_lock_init(&dp->reo_cmd_lock);
1750 spin_lock_init(&dp->reo_rxq_flush_lock);
1751
1752 dp->reo_cmd_cache_flush_count = 0;
1753 dp->idle_link_rbm = ath12k_dp_get_idle_link_rbm(ab);
1754
1755 ret = ath12k_wbm_idle_ring_setup(ab, &n_link_desc);
1756 if (ret) {
1757 ath12k_warn(ab, "failed to setup wbm_idle_ring: %d\n", ret);
1758 return ret;
1759 }
1760
1761 srng = &ab->hal.srng_list[dp->wbm_idle_ring.ring_id];
1762
1763 ret = ath12k_dp_link_desc_setup(ab, dp->link_desc_banks,
1764 HAL_WBM_IDLE_LINK, srng, n_link_desc);
1765 if (ret) {
1766 ath12k_warn(ab, "failed to setup link desc: %d\n", ret);
> 1767 goto rhash_destroy;
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
On 12/18/2025 3:44 PM, Dan Carpenter wrote:
> Destroy the rhash_tbl before returning the error code.
Would be better if the actual problem can be described first.
>
> Fixes: a88cf5f71adf ("wifi: ath12k: Add hash table for ath12k_dp_link_peer")
> Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
> ---
> drivers/net/wireless/ath/ath12k/dp.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/wireless/ath/ath12k/dp.c b/drivers/net/wireless/ath/ath12k/dp.c
> index 9f05eea6695a..ab54c8a84d3e 100644
> --- a/drivers/net/wireless/ath/ath12k/dp.c
> +++ b/drivers/net/wireless/ath/ath12k/dp.c
> @@ -1513,7 +1513,7 @@ static int ath12k_dp_setup(struct ath12k_base *ab)
> HAL_WBM_IDLE_LINK, srng, n_link_desc);
> if (ret) {
> ath12k_warn(ab, "failed to setup link desc: %d\n", ret);
> - return ret;
> + goto rhash_destroy;
> }
>
> ret = ath12k_dp_cc_init(ab);
However since this is trivial ...
Reviewed-by: Baochen Qiang <baochen.qiang@oss.qualcomm.com>
On 12/18/2025 1:14 PM, Dan Carpenter wrote:
> Destroy the rhash_tbl before returning the error code.
>
> Fixes: a88cf5f71adf ("wifi: ath12k: Add hash table for ath12k_dp_link_peer")
> Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
nit: The next branch in ath is actually ath-next.
Reviewed-by: Vasanthakumar Thiagarajan <vasanthakumar.thiagarajan@oss.qualcomm.com>
On Fri, Dec 19, 2025 at 10:54:03AM +0530, Vasanthakumar Thiagarajan wrote:
>
>
> On 12/18/2025 1:14 PM, Dan Carpenter wrote:
> > Destroy the rhash_tbl before returning the error code.
> >
> > Fixes: a88cf5f71adf ("wifi: ath12k: Add hash table for ath12k_dp_link_peer")
> > Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
>
> nit: The next branch in ath is actually ath-next.
I'm working with over 400 different branches, right? I can't keep track
of them all so I just put "next" if it's in linux-next and leave it
blanke if it's in Linus's tree. It's automated.
regards,
dan carpenter
On Fri, Dec 19, 2025 at 10:18:02AM +0300, Dan Carpenter wrote:
> On Fri, Dec 19, 2025 at 10:54:03AM +0530, Vasanthakumar Thiagarajan wrote:
> >
> >
> > On 12/18/2025 1:14 PM, Dan Carpenter wrote:
> > > Destroy the rhash_tbl before returning the error code.
> > >
> > > Fixes: a88cf5f71adf ("wifi: ath12k: Add hash table for ath12k_dp_link_peer")
> > > Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
> >
> > nit: The next branch in ath is actually ath-next.
>
> I'm working with over 400 different branches, right? I can't keep track
> of them all so I just put "next" if it's in linux-next and leave it
> blanke if it's in Linus's tree. It's automated.
For automated QC, it's really easy to automate on the recieving side.
In some ways, since there is only one place which recieves code and
does QC and a hundred different people sending patches, then it makes
more sense to do it on the recieving side.
This rule started with Dave Miller. He was handling a hundred patches
a day. Everything in networking except for wireless. Also Sparc and
ata. This was before I invented the Fixes tag, so that wasn't an
option. Greg and Andrew still handle that level of traffic but they
just use Fixes tags to automate their process.
regards,
dan carpenter
© 2016 - 2026 Red Hat, Inc.