[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5d0e6d7b-d127-46be-8985-9be33a490aa0@oss.qualcomm.com>
Date: Mon, 3 Nov 2025 11:14:10 +0800
From: Baochen Qiang <baochen.qiang@....qualcomm.com>
To: "Yu Zhang(Yuriy)" <yu.zhang@....qualcomm.com>,
Baochen Qiang <baochen.qiang@....qualcomm.com>, jjohnson@...nel.org
Cc: linux-kernel@...r.kernel.org, linux-wireless@...r.kernel.org,
ath11k@...ts.infradead.org
Subject: Re: [PATCH ath-next 2/6] wifi: ath11k: Register debugfs for CFR
configuration
On 11/2/2025 5:21 PM, Yu Zhang(Yuriy) wrote:
>
>
> On 10/31/2025 10:43 AM, Baochen Qiang wrote:
>>
>>
>> On 10/30/2025 12:31 PM, Yu Zhang(Yuriy) wrote:
>>
>>> @@ -88,6 +275,7 @@ void ath11k_cfr_deinit(struct ath11k_base *ab)
>>> ar = ab->pdevs[i].ar;
>>> cfr = &ar->cfr;
>>> + ath11k_cfr_debug_unregister(ar);
>>> ath11k_cfr_ring_free(ar);
>>> spin_lock_bh(&cfr->lut_lock);
>>> @@ -140,6 +328,8 @@ int ath11k_cfr_init(struct ath11k_base *ab)
>>> }
>>> cfr->lut_num = num_lut_entries;
>>> +
>>> + ath11k_cfr_debug_register(ar);
>>> }
>>> return 0;
>>
>> miss _debug_unregister() in the error handling?
>>
>>
> The documention for debugfs_create_file() tells us:
> * NOTE: it's expected that most callers should _ignore_ the errors returned
> * by this function. Other debugfs functions handle the fact that the "dentry"
> * passed to them could be an error and they don't crash in that case.
> * Drivers should generally work fine even if debugfs fails to init anyway.
>
> So IMO any failure to create the file should be ignored.
Maybe I was not clear ...
I was not meaning the error check on ath11k_cfr_debug_register() or debugfs_create_file(),
but was meaning that in the err handling below it, _debug_unregistered needs to be added:
cfr->lut_num = num_lut_entries;
+
+ ath11k_cfr_debug_register(ar);
}
return 0;
err:
for (i = i - 1; i >= 0; i--) {
ar = ab->pdevs[i].ar;
cfr = &ar->cfr;
+ ath11k_cfr_debug_unregister()
ath11k_cfr_ring_free(ar);
spin_lock_bh(&cfr->lut_lock);
kfree(cfr->lut);
cfr->lut = NULL;
spin_unlock_bh(&cfr->lut_lock);
}
return ret;
}
>
>
Powered by blists - more mailing lists