[syslinux] [PATCH 3/4] Removing the udp_reader efi_binding
gene.cumm at gmail.com
Wed May 31 04:45:00 PDT 2017
On Wed, May 31, 2017 at 3:56 AM, Julien Viard de Galbert via Syslinux
<syslinux at zytor.com> wrote:
> This extra socket cause the EFI udp stack to duplicate every packet
> to be able to provide them to both udp_reader and socket->net.efi.binding.
> The ones in socket->net.efi.binding were never read so they accumulated in
> the stack on EFI side making the stack slower and slower.
> Slow enough to not be able to download a kernel+initramfs before the EFI
> timeout (5 minutes).
> Signed-off-by: Julien Viard de Galbert <jviarddegalbert at online.net>
> efi/udp.c | 24 ++----------------------
> 1 file changed, 2 insertions(+), 22 deletions(-)
That almost certainly explains the decaying download rates.
> extern EFI_GUID Udp4ServiceBindingProtocol, Udp4Protocol;
> - * This UDP binding is configured to operate in promiscuous mode. It is
> - * only used for reading packets. It has no associated state unlike
> - * socket->net.efi.binding, which has a remote IP address and port
> - * number.
> - */
This part has me puzzled why Matt was creating a promiscuous binding
instead of re-using the existing binding.
More information about the Syslinux