Message ID | cover.1717680809.git.jerome.forissier@linaro.org |
---|---|
Headers | show |
Series | Introduce the lwIP network stack | expand |
On Thu, Jun 06, 2024 at 03:35:55PM +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 Alright, on Pi 3, I think we have more "output changed, test fails" problems: ========================================== FAILURES =========================================== _____________________________________ test_efi_fit_launch _____________________________________ test/py/tests/test_efi_fit.py:452: in test_efi_fit_launch launch_efi(False, False) test/py/tests/test_efi_fit.py:394: in launch_efi net_set_up = net_dhcp() test/py/tests/test_efi_fit.py:178: in net_dhcp assert 'DHCP client bound to address ' in output E AssertionError: assert 'DHCP client bound to address ' in 'Waiting for Ethernet connection... done.\r\neth0: smsc95xx_eth b8:27:eb:fc:64:a6 active' ------------------------------------ Captured stdout call ------------------------------------- U-Boot> usb start U-Boot> U-Boot> setenv autoload no U-Boot> U-Boot> dhcp Waiting for Ethernet connection... done. eth0: smsc95xx_eth b8:27:eb:fc:64:a6 active U-Boot> =================================== short test summary info =================================== I'm going to skip that set of tests and see how far we get but I suspect it'll keep failing on DHCP output being different.
On 6/6/24 18:56, Tom Rini wrote: > On Thu, Jun 06, 2024 at 03:35:55PM +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 > > Alright, on Pi 3, I think we have more "output changed, test fails" > problems: > ========================================== FAILURES =========================================== > _____________________________________ test_efi_fit_launch _____________________________________ > test/py/tests/test_efi_fit.py:452: in test_efi_fit_launch > launch_efi(False, False) > test/py/tests/test_efi_fit.py:394: in launch_efi > net_set_up = net_dhcp() > test/py/tests/test_efi_fit.py:178: in net_dhcp > assert 'DHCP client bound to address ' in output > E AssertionError: assert 'DHCP client bound to address ' in 'Waiting for Ethernet connection... done.\r\neth0: smsc95xx_eth b8:27:eb:fc:64:a6 active' > ------------------------------------ Captured stdout call ------------------------------------- > U-Boot> usb start > U-Boot> U-Boot> setenv autoload no > U-Boot> U-Boot> dhcp > Waiting for Ethernet connection... done. > eth0: smsc95xx_eth b8:27:eb:fc:64:a6 active > U-Boot> > =================================== short test summary info =================================== > > I'm going to skip that set of tests and see how far we get but I suspect > it'll keep failing on DHCP output being different. As discussed offline with Ilias it might be a timeout issue, although 2000 ms for DHCP_TIMEOUT_MS seems a large value to me, it might not be enough in your environment. Can you please try to increase it? NET effectively has a timeout of 28 seconds if we take the retries into account. Thanks,
On Fri, Jun 07, 2024 at 11:11:49AM +0200, Jerome Forissier wrote: > > > On 6/6/24 18:56, Tom Rini wrote: > > On Thu, Jun 06, 2024 at 03:35:55PM +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 > > > > Alright, on Pi 3, I think we have more "output changed, test fails" > > problems: > > ========================================== FAILURES =========================================== > > _____________________________________ test_efi_fit_launch _____________________________________ > > test/py/tests/test_efi_fit.py:452: in test_efi_fit_launch > > launch_efi(False, False) > > test/py/tests/test_efi_fit.py:394: in launch_efi > > net_set_up = net_dhcp() > > test/py/tests/test_efi_fit.py:178: in net_dhcp > > assert 'DHCP client bound to address ' in output > > E AssertionError: assert 'DHCP client bound to address ' in 'Waiting for Ethernet connection... done.\r\neth0: smsc95xx_eth b8:27:eb:fc:64:a6 active' > > ------------------------------------ Captured stdout call ------------------------------------- > > U-Boot> usb start > > U-Boot> U-Boot> setenv autoload no > > U-Boot> U-Boot> dhcp > > Waiting for Ethernet connection... done. > > eth0: smsc95xx_eth b8:27:eb:fc:64:a6 active > > U-Boot> > > =================================== short test summary info =================================== > > > > I'm going to skip that set of tests and see how far we get but I suspect > > it'll keep failing on DHCP output being different. > > As discussed offline with Ilias it might be a timeout issue, although 2000 ms > for DHCP_TIMEOUT_MS seems a large value to me, it might not be enough in your > environment. Can you please try to increase it? NET effectively has a timeout > of 28 seconds if we take the retries into account. I increased it to 20000 ms and no change.