From e409b8c5d28a1d755d06779aa2a338e04ac72984 Mon Sep 17 00:00:00 2001 From: Prateek Patil Date: Wed, 28 Feb 2024 17:27:00 +0530 Subject: [PATCH] icnss2: Remove __GFP_DIRECT_RECLAIM flag to claim memory faster To avoid watchdog bark in 10s timeout due to compaction latency in very bad fragmentation situation, Remove __GFP_DIRECT_RECLAIM flag to kzalloc to avoid delay, which will help to claim memory faster. Change-Id: I9d57e28c6e94dbd5cf02aaa9c6f84fe4b60fe36d CRs-Fixed: 3746405 --- icnss2/qmi.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/icnss2/qmi.c b/icnss2/qmi.c index 39d559a8ec..2d66444316 100644 --- a/icnss2/qmi.c +++ b/icnss2/qmi.c @@ -3509,6 +3509,7 @@ int icnss_wlfw_get_info_send_sync(struct icnss_priv *plat_priv, int type, struct wlfw_get_info_resp_msg_v01 *resp; struct qmi_txn txn; int ret = 0; + int flags = GFP_KERNEL & ~__GFP_DIRECT_RECLAIM; if (cmd_len > QMI_WLFW_MAX_DATA_SIZE_V01) return -EINVAL; @@ -3516,11 +3517,11 @@ int icnss_wlfw_get_info_send_sync(struct icnss_priv *plat_priv, int type, if (test_bit(ICNSS_FW_DOWN, &plat_priv->state)) return -EINVAL; - req = kzalloc(sizeof(*req), GFP_KERNEL); + req = kzalloc(sizeof(*req), flags); if (!req) return -ENOMEM; - resp = kzalloc(sizeof(*resp), GFP_KERNEL); + resp = kzalloc(sizeof(*resp), flags); if (!resp) { kfree(req); return -ENOMEM;