From 4f52c9ea2e16179eead10a306843f181232a2be7 Mon Sep 17 00:00:00 2001 From: Lubomir Rintel Date: Sun, 5 Aug 2012 16:33:20 +0200 Subject: [PATCH] inet: Reply to TASK messages even if we're waiting for STAT reply As they can come anytime upon receipt of interrupt by the ethernet driver. This is the same thing as is done for CONF replies. A simple test case would be the following via ssh connection: while getaddr; do :; done Change-Id: I68f4403360b3eefe67fc602c4855ca1abd649475 --- servers/inet/mnx_eth.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/servers/inet/mnx_eth.c b/servers/inet/mnx_eth.c index d3967eb92..1625b4fb6 100644 --- a/servers/inet/mnx_eth.c +++ b/servers/inet/mnx_eth.c @@ -277,6 +277,17 @@ void eth_rec(message *m) } if (loc_port->etp_osdep.etp_state == OEPS_GETSTAT_SENT) { + if (m_type == DL_TASK_REPLY) + { + flags= m->DL_FLAGS; + + if (flags & DL_PACK_SEND) + write_int(loc_port); + if (flags & DL_PACK_RECV) + read_int(loc_port, m->DL_COUNT); + return; + } + if (m_type != DL_STAT_REPLY) { printf( -- 2.44.0