Re: [PATCH v6 2/3] net: bootp: BOOTP/DHCPv4 retransmission improvements

Tom Rini
2024-05-08T15:32:58Z

[-- Attachment #1: Type: text/plain, Size: 2079 bytes --]

On Mon, Apr 29, 2024 at 11:33:57AM -0700, Sean Edmond wrote:

> This patch introduces 3 improvements to align with RFC 951:
> - retransmission backoff interval maximum is configurable
> - initial retranmission backoff interval is configurable
> - transaction ID is kept the same for each BOOTP/DHCPv4 request
>
> In applications where thousands of nodes are serviced by a single DHCP
> server, maximizing the retransmission backoff interval at 2 seconds (the
> current u-boot default) exerts high pressure on the DHCP server and
> network layer.
>
> RFC 951 “7.2. Client Retransmission Strategy” states that the
> retransmission backoff interval should be limited to 60 seconds. This
> patch allows the interval to be configurable using the environment
> variable "bootpretransmitperiodmax"
>
> The initial retranmission backoff period defaults to 250ms, which is
> also too small for these scenarios with many clients. This patch makes
> the initial retransmission interval to be configurable using the
> environment variable "bootpretransmitperiodinit".
>
> Also, on a retransmission it is not expected for the transaction ID to
> change (only the 'secs' field should be updated). Let's save the
> transaction ID and use the same transaction ID for each BOOTP/DHCPv4
> exchange.
>
> Signed-off-by: Sean Edmond <seanedmond@microsoft.com>

On numerous platforms we now get:
+(imx8qm_dmsse20a1) WARNING 'mx8qm-ahab-container.img' not found, resulting binary is not-functional
+(imx8qm_dmsse20a1) net/bootp.c: In function 'bootp_reset':
+(imx8qm_dmsse20a1) net/bootp.c:741:15: error: unused variable 'ep' [-Werror=unused-variable]
+(imx8qm_dmsse20a1) 741 | char *ep; /* Environment pointer */
+(imx8qm_dmsse20a1) | ^~
+(imx8qm_dmsse20a1) cc1: all warnings being treated as errors
+(imx8qm_dmsse20a1) make[2]: *** [scripts/Makefile.build:257: net/bootp.o] Error 1
+(imx8qm_dmsse20a1) make[1]: *** [Makefile:1892: net] Error 2
+(imx8qm_dmsse20a1) make: *** [Makefile:177: sub-make] Error 2

--
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]