From ea009740e94b0874e091578c0745efc2fd788e18 Mon Sep 17 00:00:00 2001 From: Sarannya S Date: Wed, 1 Jun 2022 15:33:10 +0530 Subject: [PATCH] net: qrtr: Use xa_load in qrtr_get_service_id In qrtr_get_service_id, use xa_load instead of node_get to check if the node exists or not. Calling node_get from interrupt context can cause potential deadlock since it calls into xa_store to allocate the node if it does not exist. Change-Id: Ida9f7a113417f0d184c0903004d94dd2eca6c472 Signed-off-by: Sarannya S --- net/qrtr/ns.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/qrtr/ns.c b/net/qrtr/ns.c index 845f21c8e1d0..28516cdeffb4 100644 --- a/net/qrtr/ns.c +++ b/net/qrtr/ns.c @@ -104,7 +104,7 @@ unsigned int qrtr_get_service_id(unsigned int node_id, unsigned int port_id) struct qrtr_node *node; unsigned long index; - node = node_get(node_id); + node = xa_load(&nodes, node_id); if (!node) return 0;