Skip to content

Commit f6a55c9

Browse files
rluboskartben
authored andcommitted
net: coap_client: Fix CoAP client thread priority
The default thread priority for the CoAP client thread is set to NUM_PREEMPT_PRIORITIES which is not a valid thread priority, as the lowest application thread priority is actually NUM_PREEMPT_PRIORITIES - 1. Because of this, CoAP client library gave an assert on boot if assertions were enabled. Kconfig does not allow for arithmetics when setting integer defaults, therefore handle this at the preprocessor stage by limiting the actual priority assigned to the CoAP client thread to a valid range. Signed-off-by: Robert Lubos <[email protected]>
1 parent 5601c18 commit f6a55c9

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

subsys/net/lib/coap/coap_client.c

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1121,6 +1121,10 @@ struct coap_client_option coap_client_option_initial_block2(void)
11211121
return block2;
11221122
}
11231123

1124+
#define COAP_CLIENT_THREAD_PRIORITY CLAMP(CONFIG_COAP_CLIENT_THREAD_PRIORITY, \
1125+
K_HIGHEST_APPLICATION_THREAD_PRIO, \
1126+
K_LOWEST_APPLICATION_THREAD_PRIO)
1127+
11241128
K_THREAD_DEFINE(coap_client_recv_thread, CONFIG_COAP_CLIENT_STACK_SIZE,
11251129
coap_client_recv, NULL, NULL, NULL,
1126-
CONFIG_COAP_CLIENT_THREAD_PRIORITY, 0, 0);
1130+
COAP_CLIENT_THREAD_PRIORITY, 0, 0);

0 commit comments

Comments
 (0)