From 65bcce29d5d7ad3831513fe14c76791287847597 Mon Sep 17 00:00:00 2001 From: Nilesh Javali Date: Fri, 24 Aug 2018 06:38:45 -0400 Subject: [PATCH] iscsiuio: limit retries of performing dhcpv6 before declaring dhcp failure After successful stateless router adv., the restart of handle_ndp thread infinitely checks dhcpv6 causing IPv6 DHCP sequence failure. Limit the retries of dhcpv6 validation. Signed-off-by: Nilesh Javali --- iscsiuio/src/uip/ipv6_ndpc.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/iscsiuio/src/uip/ipv6_ndpc.c b/iscsiuio/src/uip/ipv6_ndpc.c index a396cb784bd3..bb07c1dd64ff 100644 --- a/iscsiuio/src/uip/ipv6_ndpc.c +++ b/iscsiuio/src/uip/ipv6_ndpc.c @@ -134,6 +134,7 @@ wait_rtr: } while (!(ipv6c->flags & IPV6_FLAGS_ROUTER_ADV_RECEIVED)); LOG_DEBUG("%s: ndpc_handle got rtr adv", s->nic->log_name); + s->retry_count = 0; no_rtr_adv: s->state = NDPC_STATE_RTR_ADV; @@ -200,9 +201,13 @@ wait_dhcp: } else { /* Static IPv6 */ if (ustack->ip_config == IPV6_CONFIG_DHCP) { - LOG_DEBUG("%s: ndpc_handle DHCP failed", - s->nic->log_name); - PT_RESTART(&s->pt); + s->retry_count++; + if (s->retry_count > DHCPV6_NUM_OF_RETRY) { + LOG_DEBUG("%s: ndpc_handle DHCP failed", + s->nic->log_name); + } else { + PT_RESTART(&s->pt); + } } staticv6: ipv6_disable_dhcpv6(ipv6c); -- 2.17.2