--- a/third_party/lwip/src/api/tcpip.c
+++ b/third_party/lwip/src/api/tcpip.c
@@ -55,8 +55,8 @@
#define TCPIP_MSG_VAR_FREE(name) API_VAR_FREE(MEMP_TCPIP_MSG_API, name)
-/* global variables */
-static tcpip_init_done_fn tcpip_init_done;
-static void *tcpip_init_done_arg;
+/* global variables — volatile: set in tcpip_init(), read in tcpip_thread() */
+static volatile tcpip_init_done_fn tcpip_init_done;
+static void * volatile tcpip_init_done_arg;
static sys_mbox_t tcpip_mbox;