U-Boot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Tom Rini <trini@konsulko.com>
To: Jerome Forissier <jerome.forissier@linaro.org>
Cc: u-boot@lists.denx.de,
	Ilias Apalodimas <ilias.apalodimas@linaro.org>,
	Javier Tia <javier.tia@linaro.org>,
	Maxim Uvarov <muvarov@gmail.com>
Subject: Re: [PATCH v4 00/14] Introduce the lwIP network stack
Date: Tue, 18 Jun 2024 14:21:23 -0600	[thread overview]
Message-ID: <20240618202123.GW68077@bill-the-cat> (raw)
In-Reply-To: <cover.1718638104.git.jerome.forissier@linaro.org>

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

On Mon, Jun 17, 2024 at 05:32:52PM +0200, Jerome Forissier wrote:

> This is a rework of a patch series by Maxim Uvarov: "net/lwip: add lwip
> library for the network stack" [1]. The goal is to introduce the lwIP TCP/IP
> stack [2] [3] as an alternative to the current implementation in net/,
> selectable with Kconfig, and ultimately keep only lwIP if possible. Some
> reasons for doing so are:
> - Make the support of HTTPS in the wget command easier. Javier T. (CC'd)
> has some additional lwIP and Mbed TLS patches to do so. With that it
> becomes possible to fetch and launch a distro installer such as Debian
> etc. using a secure, authenticated connection directly from the U-Boot
> shell. Several use cases:
>   * Authentication: prevent MITM attack (third party replacing the
> binary with a different one)
>   * Confidentiality: prevent third parties from grabbing a copy of the
> image as it is being downloaded
>   * Allow connection to servers that do not support plain HTTP anymore
> (this is becoming more and more common on the Internet these days)
> - Possibly benefit from additional features implemented in lwIP
> - Less code to maintain in U-Boot

So, on a Pi 3 (rpi_3_defconfig) I see this now (and it passes normally):
========================================== FAILURES ===========================================
___________________________________ test_efi_helloworld_net ___________________________________
test/py/tests/test_efi_loader.py:163: in test_efi_helloworld_net
    assert expected_text in output
E   AssertionError: assert 'Hello, world' in 'No UEFI binary known at 200000'
------------------------------------ Captured stdout call -------------------------------------
U-Boot> tftpboot 200000 EFI/arm64/helloworld.efi
Using smsc95xx_eth device
TFTP from server 192.168.1.10; our IP address is 192.168.1.100
Filename 'EFI/arm64/helloworld.efi'.
Load address: 0x200000
Loading:
Bytes transferred = 4528 (11b0 hex)
U-Boot> U-Boot> crc32 200000 $filesize
CRC32 for 00200000 ... 002011af ==> 2b466005
U-Boot> U-Boot> bootefi 200000
No UEFI binary known at 200000
U-Boot>
=================================== short test summary info =================================== 
If I disable that test, it moves on to failing the same exact way for
grub. If I disable the grub test too. After that, oh, a bunch of other
tests get skipped because CMD_NET and similar aren't enabled now, and
the tests are wrong. I'll post that as another patch by itself. After
correcting for that, we're seemingly noticeably slower as I need to
increase the timeout for tftp'ing my 83MiB FIT image I use for kernel
testing. We no longer have the estimated speed message, so I can't as
easily say how much slower it is. After increasing the timeout, the
kernel boot test does work.

I can note that normally it takes ~18ms to get a dhcp reply, but with
lwIP it's now 132ms, and previously the kernel loaded at 2.7MiB/s
(which, not great) but if that has a similar level of slowdown, could
well explain it.

-- 
Tom

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

  parent reply	other threads:[~2024-06-18 20:21 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-17 15:32 [PATCH v4 00/14] Introduce the lwIP network stack Jerome Forissier
2024-06-17 15:32 ` [PATCH v4 01/14] flash: prefix error codes with FL_ Jerome Forissier
2024-06-18 16:22   ` Tom Rini
2024-06-19  7:29   ` Ilias Apalodimas
2024-06-17 15:32 ` [PATCH v4 02/14] net: introduce alternative implementation as net-lwip/ Jerome Forissier
2024-06-18 17:59   ` Tom Rini
2024-06-19  9:06     ` Jerome Forissier
2024-06-17 15:32 ` [PATCH v4 03/14] net: split include/net.h into net{, -common, -legacy, -lwip}.h Jerome Forissier
2024-06-17 15:32 ` [PATCH v4 04/14] net-lwip: build lwIP Jerome Forissier
2024-06-17 15:32 ` [PATCH v4 05/14] net-lwip: add DHCP support and dhcp commmand Jerome Forissier
2024-06-17 16:54   ` Heinrich Schuchardt
2024-06-19  9:37     ` Jerome Forissier
2024-06-19 10:07       ` Ilias Apalodimas
2024-06-17 15:32 ` [PATCH v4 06/14] net-lwip: add TFTP support and tftpboot command Jerome Forissier
2024-06-17 15:32 ` [PATCH v4 07/14] net-lwip: add ping command Jerome Forissier
2024-06-17 15:33 ` [PATCH v4 08/14] net-lwip: add dns command Jerome Forissier
2024-06-17 15:33 ` [PATCH v4 09/14] net: split cmd/net.c into cmd/net.c and cmd/net-common.c Jerome Forissier
2024-06-17 15:33 ` [PATCH v4 10/14] net-lwip: add wget command Jerome Forissier
2024-06-24  6:21   ` Jon Humphreys
2024-06-24  6:25     ` Jon Humphreys
2024-06-24  8:50       ` Jerome Forissier
2024-06-24  6:26     ` Jon Humphreys
2024-06-24  8:52       ` Jerome Forissier
2024-06-24  8:49     ` Jerome Forissier
2024-06-25  3:20       ` Jon Humphreys
2024-06-25  7:43         ` Jerome Forissier
2024-06-17 15:33 ` [PATCH v4 11/14] cmd: bdinfo: enable -e when CONFIG_CMD_NET_LWIP=y Jerome Forissier
2024-06-17 15:33 ` [PATCH v4 12/14] configs: add qemu_arm64_lwip_defconfig Jerome Forissier
2024-06-19 12:14   ` Ilias Apalodimas
2024-06-17 15:33 ` [PATCH v4 13/14] MAINTAINERS: net-lwip: add myself as a maintainer Jerome Forissier
2024-06-17 15:33 ` [PATCH v4 14/14] CI: add qemu_arm64_lwip to the test matrix Jerome Forissier
2024-06-18 20:21 ` Tom Rini [this message]
2024-06-19  7:24   ` [PATCH v4 00/14] Introduce the lwIP network stack Ilias Apalodimas
2024-06-19 14:47     ` Jerome Forissier
2024-06-19 15:07       ` Tom Rini
2024-06-19 16:45         ` Jerome Forissier
2024-06-19 17:19       ` Peter Robinson
2024-06-20  8:05         ` Jerome Forissier
2024-06-20 17:10 ` Tim Harvey
2024-06-21 12:59   ` Jerome Forissier
2024-06-21 16:08     ` Tim Harvey
2024-06-21 17:56       ` Jerome Forissier
2024-06-21 18:42       ` Fabio Estevam
2024-06-22  8:08         ` Maxim Uvarov
2024-06-24 22:28           ` Tim Harvey
2024-06-25  8:02             ` Jerome Forissier
2024-06-26 16:00               ` Tim Harvey
2024-06-28  9:50                 ` Jerome Forissier
2024-06-28 15:48                   ` Tim Harvey
2024-07-01  9:58                     ` Jerome Forissier
2024-07-01 16:06                       ` Tim Harvey
2024-06-21 14:57 ` Simon Glass
2024-06-21 17:55   ` Jerome Forissier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240618202123.GW68077@bill-the-cat \
    --to=trini@konsulko.com \
    --cc=ilias.apalodimas@linaro.org \
    --cc=javier.tia@linaro.org \
    --cc=jerome.forissier@linaro.org \
    --cc=muvarov@gmail.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox