Compare commits

...

3 Commits

Author SHA1 Message Date
Arif Alam
60a714f15d ath11k: improve peer deletion timeout error handling and fix memory leak
Signed-off-by: Arif Alam <arif.alam@netexperience.com>
2025-09-04 01:13:04 -04:00
Arif Alam
c27b015a63 est_client: fix certificate issuer matching
Signed-off-by: Arif Alam <arif.alam@netexperience.com>
2025-08-29 22:52:28 -04:00
Arif Alam
02c2e6945b est_client: cloud_discovery: fixup demo environment
Signed-off-by: Arif Alam <arif.alam@netexperience.com>
2025-08-28 21:39:54 -04:00
4 changed files with 71 additions and 3 deletions

View File

@@ -0,0 +1,10 @@
--- a/drivers/net/wireless/ath/ath11k/peer.c
+++ b/drivers/net/wireless/ath/ath11k/peer.c
@@ -902,6 +902,7 @@ int ath11k_peer_create(struct ath11k *ar
if (vdev_id == param->vdev_id)
return -EINVAL;
+ ath11k_dp_peer_cleanup(ar, vdev_id, param->peer_addr);
ath11k_peer_delete(ar, vdev_id, param->peer_addr);
}

View File

@@ -0,0 +1,54 @@
From f211976a35c898f39d5a2602dd2a076a7b7cebd2 Mon Sep 17 00:00:00 2001
From: Arif Alam <arif.alam@netexperience.com>
Date: Tue, 2 Sep 2025 20:07:06 -0400
Subject: [PATCH] ath11k: improve peer deletion timeout and error handling
Signed-off-by: Arif Alam <arif.alam@netexperience.com>
---
drivers/net/wireless/ath/ath11k/peer.c | 9 ++++++---
drivers/net/wireless/ath/ath11k/peer.h | 2 ++
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/drivers/net/wireless/ath/ath11k/peer.c b/drivers/net/wireless/ath/ath11k/peer.c
index 1907067..d5dbf40 100644
--- a/drivers/net/wireless/ath/ath11k/peer.c
+++ b/drivers/net/wireless/ath/ath11k/peer.c
@@ -771,7 +771,7 @@ int ath11k_wait_for_peer_delete_done(struct ath11k *ar, u32 vdev_id,
}
time_left = wait_for_completion_timeout(&ar->peer_delete_done,
- 3 * HZ);
+ msecs_to_jiffies(ATH11K_PEER_DELETE_MSG_TIMEOUT_MS));
if (time_left == 0) {
ath11k_warn(ar->ab, "Timeout in receiving peer delete response\n");
return -ETIMEDOUT;
@@ -857,8 +857,11 @@ int ath11k_peer_delete(struct ath11k *ar, u32 vdev_id, u8 *addr)
}
ret = ath11k_wait_for_peer_delete_done(ar, vdev_id, addr);
- if (ret)
- return ret;
+ if (ret) {
+ ath11k_warn(ar->ab,
+ "failed wait for peer %pM delete done id %d ret %d\n",
+ addr, vdev_id, ret);
+ }
ATH11K_MEMORY_STATS_DEC(ar->ab, per_peer_object,
sizeof(struct ath11k_peer));
diff --git a/drivers/net/wireless/ath/ath11k/peer.h b/drivers/net/wireless/ath/ath11k/peer.h
index c1a6464..ca20627 100644
--- a/drivers/net/wireless/ath/ath11k/peer.h
+++ b/drivers/net/wireless/ath/ath11k/peer.h
@@ -6,6 +6,8 @@
#ifndef ATH11K_PEER_H
#define ATH11K_PEER_H
+#define ATH11K_PEER_DELETE_MSG_TIMEOUT_MS 100
+
struct ppdu_user_delayba {
u8 reserved0;
u16 sw_peer_id;
--
2.50.1

View File

@@ -49,10 +49,12 @@ function detect_certificate_type() {
let issuer = pipe.read("all");
pipe.close();
if (!match(issuer, /Telecom Infra Project Issuing CA/)) {
if (match(issuer, /OpenLAN Demo Birth CA/)) {
ulog(LOG_INFO, 'Certificate type is "Demo" \n');
cds_server = 'discovery-qa.open-lan.org';
timeouts.expiry_threshold = 3 * 24 * 60 * 60;
} else if (match(issuer, /OpenLAN Birth Issuing CA/)) {
ulog(LOG_INFO, 'Certificate type is "Production"\n');
} else {
ulog(LOG_INFO, 'Certificate type is "TIP"\n');
}

View File

@@ -16,9 +16,11 @@ function set_est_server() {
let issuer = pipe.read("all");
pipe.close();
if (!match(issuer, /Telecom Infra Project Issuing CA/)) {
if (match(issuer, /OpenLAN Demo Birth CA/)) {
ulog(LOG_INFO, 'Certificate type is "Demo" \n');
est_server = 'qaest.certificates.open-lan.org:8001';
} else if (match(issuer, /OpenLAN Birth Issuing CA/)) {
ulog(LOG_INFO, 'Certificate type is "Production"\n');
} else {
ulog(LOG_INFO, 'Certificate type is "TIP"\n');
}
@@ -165,7 +167,7 @@ function fwtool() {
let issuer = pipe.read("all");
pipe.close();
if (!(match(issuer, /OpenLAN/) && match(issuer, /Birth CA/)))
if (!(match(issuer, /OpenLAN/) && match(issuer, /Birth/)))
return 0;
ulog(LOG_INFO, 'The issuer is insta\n');