[PATCH] Revert "net: eth_bootdev_hunt() should not run DHCP"

Simon Glass sjg at chromium.org
Tue Apr 1 19:57:15 CEST 2025


Hi,

On Wed, 2 Apr 2025 at 05:13, Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
>
> On 01.04.25 17:51, Simon Glass wrote:
> > On Tue, 1 Apr 2025 at 21:38, Heiko Stuebner <heiko at sntech.de> wrote:
> >>
> >> This reverts commit 1f68057e03206e6597ca8b2be8bb1c49d4bd47d0.
> >>
> >> Commit 1f68057e0320 ("net: eth_bootdev_hunt() should not run DHCP")
> >> aims to reduce EFI boot times by disabling the dhcp_run when
> >> checking ethernet bootdevices, by preventing it from running double,
> >> with the reasoning
> >>
> >>      We need to call eth_bootdev_hunt() when setting up the EFI sub-system to
> >>      supply the simple network protocol. We don't need an IP address set up.
> >>
> >> That might by true for EFI, but not for everything else, because when
> >> running distro-boot and for example the PXE method in it, nothing will
> >> set up an IP address now.
>
> The removed call was dhcp_run(addr, NULL, true);
>
> We have:
>
> distro_efi_read_bootflow_net():
> boot/bootmeth_efi.c:205:        ret = dhcp_run(addr, NULL, true);
>
> script_read_bootflow_net():
> boot/bootmeth_script.c:132:     ret = dhcp_run(addr, fname, true);
>
> extlinux_pxe_read_bootflow() seems to be lacking the call.
>
> So instead of reverting
> 1f68057e0320 ("net: eth_bootdev_hunt() should not run DHCP")
> we should add the missing call in extlinux_pxe_read_bootflow().
>

The original design was to run DHCP once, in the hunter. That seems to
have changed, due to it causing problems with EFI?

I'd like to go back to doing it in the hunter. It really doesn't make
sense for each bootmeth to do its own DHCP again, does it?

Regards,
Simon


More information about the U-Boot mailing list