Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 0/4] new builtin kernel with entropy for the test infra
@ 2019-08-03  5:22 Ricardo Martincoski
  2019-08-03  5:22 ` [Buildroot] [PATCH 1/4] support/testing: add builtin armv5 kernel 4.19 with entropy Ricardo Martincoski
                   ` (4 more replies)
  0 siblings, 5 replies; 14+ messages in thread
From: Ricardo Martincoski @ 2019-08-03  5:22 UTC (permalink / raw)
  To: buildroot

Hello,

This small series adds a new builtin kernel image to the test infra.
It contains the VirtIORNG driver so the target will have enough entropy at
startup, a requirement for more and more packages being tested.

It also uses this new builtin kernel to speed-up some test cases (atop,
syslog-ng, python-crossbar, python-nacl) and fix others (python-txtorcon,
python-treq).

The binaries I used can be found here [1] and have this version string:
>Linux version 4.19.16 (br-user at runner-ed2dce3a-project-3755559-concurrent-0) (gcc version 4.9.4 (Buildroot 2017.08-git-01078-g95b1dae)) #1 Fri Aug 2 23:05:09 UTC 2019

One can see a complete run of "-runtime-tests" before [2] and after [3] this
series in the URLs below.

In order to provide a v1 of this series, I created a naming convention for the
artifacts and also for the string passed to emulator.py in parameter "kernel".
It was the first naming that came to mind, so of course it is open to
suggestions/improvements.

[1] https://gitlab.com/RicardoMartincoski/buildroot/commit/2ed44c7471cf5db246b592e24e9b2cfd69702f0f
[2] https://gitlab.com/RicardoMartincoski/buildroot/pipelines/74501223
[3] https://gitlab.com/RicardoMartincoski/buildroot/pipelines/74516103

Regards,
Ricardo
---
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Romain Naour <romain.naour@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

Ricardo Martincoski (4):
  support/testing: add builtin armv5 kernel 4.19 with entropy
  support/testing: test syslog-ng with builtin kernel
  support/testing: test python-* with builtin kernel
  support/testing: test atop with builtin kernel

 .../conf/syslog-ng-kernel-fragment.config     |  3 --
 support/testing/infra/emulator.py             | 10 ++++++
 support/testing/tests/package/test_atop.py    | 35 ++++++++++---------
 support/testing/tests/package/test_python.py  |  2 +-
 .../tests/package/test_python_crossbar.py     |  2 --
 .../tests/package/test_python_pynacl.py       |  4 ---
 .../testing/tests/package/test_syslog_ng.py   | 20 +++--------
 7 files changed, 33 insertions(+), 43 deletions(-)
 delete mode 100644 support/testing/conf/syslog-ng-kernel-fragment.config

-- 
2.17.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 1/4] support/testing: add builtin armv5 kernel 4.19 with entropy
  2019-08-03  5:22 [Buildroot] [PATCH 0/4] new builtin kernel with entropy for the test infra Ricardo Martincoski
@ 2019-08-03  5:22 ` Ricardo Martincoski
  2019-08-03 12:51   ` Peter Korsgaard
  2019-08-03  5:22 ` [Buildroot] [PATCH 2/4] support/testing: test syslog-ng with builtin kernel Ricardo Martincoski
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 14+ messages in thread
From: Ricardo Martincoski @ 2019-08-03  5:22 UTC (permalink / raw)
  To: buildroot

More and more packages being tested by the test infra, e.g. syslog-ng,
need entropy at startup, usually reading from /dev/random.

Some test cases can also depend on a kernel version newer than the
builtin ones already provided by the test infra:
 - 3.11.0 for armv5;
 - 4.0.0 for armv7.

Add a new builtin kernel to be used by such test cases.
Add it for armv5 so most test cases that switch to use this kernel can
keep using BASIC_TOOLCHAIN_CONFIG.
Use the same kernel version and kernel config as qemu_arm_versatile plus
HW_RANDOM_VIRTIO for VirtIORNG to be usable.
Copy the actual binary file from the syslog-ng runtime test at current
master @ 29e1cb8884.
Since there is already a 'kernel-versatile' file and we must keep it
with this name for reproducibility purposes, create a simple naming
convention for newer builtin kernel images and dtb files:
kernel-<defconfig>-<kernel_series_version>
<dtb_name>-<kernel_series_version>.dtb
Pass '-device virtio-rng-pci' to qemu when this kernel is used.

Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Romain Naour <romain.naour@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
---
 support/testing/infra/emulator.py | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/support/testing/infra/emulator.py b/support/testing/infra/emulator.py
index 3d3e1750c6..29008cb940 100644
--- a/support/testing/infra/emulator.py
+++ b/support/testing/infra/emulator.py
@@ -63,6 +63,16 @@ class Emulator(object):
                     kernel = infra.download(self.downloaddir,
                                             "kernel-versatile")
                     qemu_cmd += ["-M", "versatilepb"]
+            elif kernel == "builtin-4.19":
+                if arch == "armv5":
+                    kernel_cmdline.append("console=ttyAMA0")
+                    kernel = infra.download(self.downloaddir,
+                                            "kernel-versatile-4.19")
+                    dtb = infra.download(self.downloaddir,
+                                         "versatile-pb-4.19.dtb")
+                    qemu_cmd += ["-dtb", dtb]
+                    qemu_cmd += ["-M", "versatilepb"]
+                    qemu_cmd += ["-device", "virtio-rng-pci"]
 
             qemu_cmd += ["-kernel", kernel]
 
-- 
2.17.1

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 2/4] support/testing: test syslog-ng with builtin kernel
  2019-08-03  5:22 [Buildroot] [PATCH 0/4] new builtin kernel with entropy for the test infra Ricardo Martincoski
  2019-08-03  5:22 ` [Buildroot] [PATCH 1/4] support/testing: add builtin armv5 kernel 4.19 with entropy Ricardo Martincoski
@ 2019-08-03  5:22 ` Ricardo Martincoski
  2019-08-03 12:52   ` Peter Korsgaard
  2019-08-03  5:22 ` [Buildroot] [PATCH 3/4] support/testing: test python-* " Ricardo Martincoski
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 14+ messages in thread
From: Ricardo Martincoski @ 2019-08-03  5:22 UTC (permalink / raw)
  To: buildroot

Use the new builtin kernel 4.19 with VirtIORNG to provide entropy to
test syslog-ng.

Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
---
 .../conf/syslog-ng-kernel-fragment.config     |  3 ---
 .../testing/tests/package/test_syslog_ng.py   | 20 ++++---------------
 2 files changed, 4 insertions(+), 19 deletions(-)
 delete mode 100644 support/testing/conf/syslog-ng-kernel-fragment.config

diff --git a/support/testing/conf/syslog-ng-kernel-fragment.config b/support/testing/conf/syslog-ng-kernel-fragment.config
deleted file mode 100644
index 5b96e418be..0000000000
--- a/support/testing/conf/syslog-ng-kernel-fragment.config
+++ /dev/null
@@ -1,3 +0,0 @@
-CONFIG_HW_RANDOM=y
-CONFIG_HW_RANDOM_VIRTIO=y
-CONFIG_VIRTIO_PCI=y
diff --git a/support/testing/tests/package/test_syslog_ng.py b/support/testing/tests/package/test_syslog_ng.py
index d1444d3d0d..9a82ba91da 100644
--- a/support/testing/tests/package/test_syslog_ng.py
+++ b/support/testing/tests/package/test_syslog_ng.py
@@ -6,29 +6,17 @@ import infra.basetest
 class TestSyslogNg(infra.basetest.BRTest):
     config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \
         """
-        BR2_LINUX_KERNEL=y
-        BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-        BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.16"
-        BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-        BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/arm-versatile/linux.config"
-        BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{}"
-        BR2_LINUX_KERNEL_DTS_SUPPORT=y
-        BR2_LINUX_KERNEL_INTREE_DTS_NAME="versatile-pb"
         BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
         BR2_PACKAGE_SYSLOG_NG=y
         BR2_TARGET_ROOTFS_CPIO=y
         # BR2_TARGET_ROOTFS_TAR is not set
-        """.format(infra.filepath("conf/syslog-ng-kernel-fragment.config"))
+        """
 
     def test_run(self):
-        kernel = os.path.join(self.builddir, "images", "zImage")
         cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio")
-        dtb = os.path.join(self.builddir, "images", "versatile-pb.dtb")
-        options = ["-M", "versatilepb",
-                   "-dtb", dtb,
-                   "-initrd", cpio_file,
-                   "-device", "virtio-rng-pci"]
-        self.emulator.boot(arch="armv5", kernel=kernel, options=options)
+        self.emulator.boot(arch="armv5",
+                           kernel="builtin-4.19",
+                           options=["-initrd", cpio_file])
         self.emulator.login()
 
         cmd = "grep syslog-ng /var/log/messages | grep starting"
-- 
2.17.1

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 3/4] support/testing: test python-* with builtin kernel
  2019-08-03  5:22 [Buildroot] [PATCH 0/4] new builtin kernel with entropy for the test infra Ricardo Martincoski
  2019-08-03  5:22 ` [Buildroot] [PATCH 1/4] support/testing: add builtin armv5 kernel 4.19 with entropy Ricardo Martincoski
  2019-08-03  5:22 ` [Buildroot] [PATCH 2/4] support/testing: test syslog-ng with builtin kernel Ricardo Martincoski
@ 2019-08-03  5:22 ` Ricardo Martincoski
  2019-08-03 12:52   ` Peter Korsgaard
  2019-08-03  5:22 ` [Buildroot] [PATCH 4/4] support/testing: test atop " Ricardo Martincoski
  2019-08-03  6:24 ` [Buildroot] [PATCH 0/4] new builtin kernel with entropy for the test infra Thomas Petazzoni
  4 siblings, 1 reply; 14+ messages in thread
From: Ricardo Martincoski @ 2019-08-03  5:22 UTC (permalink / raw)
  To: buildroot

Use the new builtin kernel 4.19 with VirtIORNG to provide entropy to
test all python packages by default.

Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/264508536
https://gitlab.com/buildroot.org/buildroot/-/jobs/264508537
https://gitlab.com/buildroot.org/buildroot/-/jobs/264508542
https://gitlab.com/buildroot.org/buildroot/-/jobs/264508543

The workaround of adding haveged to the image is not needed anymore, so
remove it from the python-crossbar and python-nacl test.

Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
---
 support/testing/tests/package/test_python.py          | 2 +-
 support/testing/tests/package/test_python_crossbar.py | 2 --
 support/testing/tests/package/test_python_pynacl.py   | 4 ----
 3 files changed, 1 insertion(+), 7 deletions(-)

diff --git a/support/testing/tests/package/test_python.py b/support/testing/tests/package/test_python.py
index bcd363ad1e..8c0edcf6b9 100644
--- a/support/testing/tests/package/test_python.py
+++ b/support/testing/tests/package/test_python.py
@@ -14,7 +14,7 @@ class TestPythonBase(infra.basetest.BRTest):
     def login(self):
         cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio")
         self.emulator.boot(arch="armv5",
-                           kernel="builtin",
+                           kernel="builtin-4.19",
                            options=["-initrd", cpio_file])
         self.emulator.login()
 
diff --git a/support/testing/tests/package/test_python_crossbar.py b/support/testing/tests/package/test_python_crossbar.py
index 2d7b739b5c..d7843ddd8b 100644
--- a/support/testing/tests/package/test_python_crossbar.py
+++ b/support/testing/tests/package/test_python_crossbar.py
@@ -3,12 +3,10 @@ from tests.package.test_python import TestPythonPackageBase
 
 class TestPythonPy3Crossbar(TestPythonPackageBase):
     __test__ = True
-    # use haveged to generate enough entropy so crossbar -> pynacl -> libsodium don't hang waiting for /dev/random
     config = TestPythonPackageBase.config + \
         """
         BR2_PACKAGE_PYTHON3=y
         BR2_PACKAGE_PYTHON_CROSSBAR=y
-        BR2_PACKAGE_HAVEGED=y
         """
     sample_scripts = ["tests/package/sample_python_crossbar.py"]
     timeout = 60
diff --git a/support/testing/tests/package/test_python_pynacl.py b/support/testing/tests/package/test_python_pynacl.py
index 729a887552..f4dd54940a 100644
--- a/support/testing/tests/package/test_python_pynacl.py
+++ b/support/testing/tests/package/test_python_pynacl.py
@@ -3,12 +3,10 @@ from tests.package.test_python import TestPythonPackageBase
 
 class TestPythonPy2Pynacl(TestPythonPackageBase):
     __test__ = True
-    # use haveged to generate enough entropy so pynacl -> libsodium don't hang waiting for /dev/random
     config = TestPythonPackageBase.config + \
         """
         BR2_PACKAGE_PYTHON=y
         BR2_PACKAGE_PYTHON_PYNACL=y
-        BR2_PACKAGE_HAVEGED=y
         """
     sample_scripts = ["tests/package/sample_python_pynacl.py"]
     timeout = 10
@@ -16,12 +14,10 @@ class TestPythonPy2Pynacl(TestPythonPackageBase):
 
 class TestPythonPy3Pynacl(TestPythonPackageBase):
     __test__ = True
-    # use haveged to generate enough entropy so pynacl -> libsodium don't hang waiting for /dev/random
     config = TestPythonPackageBase.config + \
         """
         BR2_PACKAGE_PYTHON3=y
         BR2_PACKAGE_PYTHON_PYNACL=y
-        BR2_PACKAGE_HAVEGED=y
         """
     sample_scripts = ["tests/package/sample_python_pynacl.py"]
     timeout = 10
-- 
2.17.1

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 4/4] support/testing: test atop with builtin kernel
  2019-08-03  5:22 [Buildroot] [PATCH 0/4] new builtin kernel with entropy for the test infra Ricardo Martincoski
                   ` (2 preceding siblings ...)
  2019-08-03  5:22 ` [Buildroot] [PATCH 3/4] support/testing: test python-* " Ricardo Martincoski
@ 2019-08-03  5:22 ` Ricardo Martincoski
  2019-08-03 12:52   ` Peter Korsgaard
  2019-08-03  6:24 ` [Buildroot] [PATCH 0/4] new builtin kernel with entropy for the test infra Thomas Petazzoni
  4 siblings, 1 reply; 14+ messages in thread
From: Ricardo Martincoski @ 2019-08-03  5:22 UTC (permalink / raw)
  To: buildroot

Use the new builtin kernel 4.19 to test atop.
The atop package cannot be tested using BASIC_TOOLCHAIN_CONFIG because
it needs kernel headers >= 3.14. So use an updated version of it,
copying the config fragment from
support/config-fragments/autobuild/br-arm-full.config

Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
---
 support/testing/tests/package/test_atop.py | 35 +++++++++++-----------
 1 file changed, 18 insertions(+), 17 deletions(-)

diff --git a/support/testing/tests/package/test_atop.py b/support/testing/tests/package/test_atop.py
index 32c5a07c3c..880a3f2b26 100644
--- a/support/testing/tests/package/test_atop.py
+++ b/support/testing/tests/package/test_atop.py
@@ -2,33 +2,34 @@ import os
 
 import infra.basetest
 
+BASIC_TOOLCHAIN_CONFIG_HEADERS_AT_LEAST_3_14 = \
+    """
+    BR2_arm=y
+    BR2_TOOLCHAIN_EXTERNAL=y
+    BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
+    BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
+    BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-2019.05.1.tar.bz2"
+    BR2_TOOLCHAIN_EXTERNAL_GCC_4_9=y
+    BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_14=y
+    BR2_TOOLCHAIN_EXTERNAL_LOCALE=y
+    # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set
+    BR2_TOOLCHAIN_EXTERNAL_CXX=y
+    """
+
 
 class TestAtop(infra.basetest.BRTest):
-    config = \
+    config = BASIC_TOOLCHAIN_CONFIG_HEADERS_AT_LEAST_3_14 + \
         """
-        BR2_arm=y
-        BR2_cortex_a9=y
-        BR2_ARM_ENABLE_NEON=y
-        BR2_ARM_ENABLE_VFP=y
-        BR2_TOOLCHAIN_EXTERNAL=y
-        BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
-        BR2_SYSTEM_DHCP="eth0"
-        BR2_LINUX_KERNEL=y
-        BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-        BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.7"
-        BR2_LINUX_KERNEL_DEFCONFIG="vexpress"
-        BR2_LINUX_KERNEL_DTS_SUPPORT=y
-        BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9"
         BR2_PACKAGE_ATOP=y
         BR2_TARGET_ROOTFS_CPIO=y
         # BR2_TARGET_ROOTFS_TAR is not set
         """
 
     def test_run(self):
-        kernel = os.path.join(self.builddir, "images", "zImage")
         cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio")
-        dtb = os.path.join(self.builddir, "images", "vexpress-v2p-ca9.dtb")
-        self.emulator.boot(arch="armv7", kernel=kernel, options=["-initrd", cpio_file, "-M", "vexpress-a9", "-dtb", dtb])
+        self.emulator.boot(arch="armv5",
+                           kernel="builtin-4.19",
+                           options=["-initrd", cpio_file])
         self.emulator.login()
 
         cmd = "atop -V | grep '^Version'"
-- 
2.17.1

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 0/4] new builtin kernel with entropy for the test infra
  2019-08-03  5:22 [Buildroot] [PATCH 0/4] new builtin kernel with entropy for the test infra Ricardo Martincoski
                   ` (3 preceding siblings ...)
  2019-08-03  5:22 ` [Buildroot] [PATCH 4/4] support/testing: test atop " Ricardo Martincoski
@ 2019-08-03  6:24 ` Thomas Petazzoni
  2019-08-03 11:24   ` Arnout Vandecappelle
  4 siblings, 1 reply; 14+ messages in thread
From: Thomas Petazzoni @ 2019-08-03  6:24 UTC (permalink / raw)
  To: buildroot

Hello,

On Sat,  3 Aug 2019 02:22:12 -0300
Ricardo Martincoski <ricardo.martincoski@gmail.com> wrote:

> This small series adds a new builtin kernel image to the test infra.
> It contains the VirtIORNG driver so the target will have enough entropy at
> startup, a requirement for more and more packages being tested.
> 
> It also uses this new builtin kernel to speed-up some test cases (atop,
> syslog-ng, python-crossbar, python-nacl) and fix others (python-txtorcon,
> python-treq).
> 
> The binaries I used can be found here [1] and have this version string:
> >Linux version 4.19.16 (br-user at runner-ed2dce3a-project-3755559-concurrent-0) (gcc version 4.9.4 (Buildroot 2017.08-git-01078-g95b1dae)) #1 Fri Aug 2 23:05:09 UTC 2019  
> 
> One can see a complete run of "-runtime-tests" before [2] and after [3] this
> series in the URLs below.
> 
> In order to provide a v1 of this series, I created a naming convention for the
> artifacts and also for the string passed to emulator.py in parameter "kernel".
> It was the first naming that came to mind, so of course it is open to
> suggestions/improvements.
> 
> [1] https://gitlab.com/RicardoMartincoski/buildroot/commit/2ed44c7471cf5db246b592e24e9b2cfd69702f0f
> [2] https://gitlab.com/RicardoMartincoski/buildroot/pipelines/74501223
> [3] https://gitlab.com/RicardoMartincoski/buildroot/pipelines/74516103

Thanks a lot for working on this. However, instead of having this new
kernel as a separate "version" from the current ARMv5 pre-built kernel,
why don't we simply update the existing one ?

One issue is that downloads get cached, so if the filename is the same,
it won't be redownloaded. Perhaps we need to store hashes of the
download artifacts, so that we can detect if they need to be
re-downloaded ?

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 0/4] new builtin kernel with entropy for the test infra
  2019-08-03  6:24 ` [Buildroot] [PATCH 0/4] new builtin kernel with entropy for the test infra Thomas Petazzoni
@ 2019-08-03 11:24   ` Arnout Vandecappelle
  2019-08-03 12:26     ` Peter Korsgaard
  0 siblings, 1 reply; 14+ messages in thread
From: Arnout Vandecappelle @ 2019-08-03 11:24 UTC (permalink / raw)
  To: buildroot



On 03/08/2019 08:24, Thomas Petazzoni wrote:
> Hello,
> 
> On Sat,  3 Aug 2019 02:22:12 -0300
> Ricardo Martincoski <ricardo.martincoski@gmail.com> wrote:
> 
>> This small series adds a new builtin kernel image to the test infra.
>> It contains the VirtIORNG driver so the target will have enough entropy at
>> startup, a requirement for more and more packages being tested.
>>
>> It also uses this new builtin kernel to speed-up some test cases (atop,
>> syslog-ng, python-crossbar, python-nacl) and fix others (python-txtorcon,
>> python-treq).
>>
>> The binaries I used can be found here [1] and have this version string:
>>> Linux version 4.19.16 (br-user at runner-ed2dce3a-project-3755559-concurrent-0) (gcc version 4.9.4 (Buildroot 2017.08-git-01078-g95b1dae)) #1 Fri Aug 2 23:05:09 UTC 2019  
>>
>> One can see a complete run of "-runtime-tests" before [2] and after [3] this
>> series in the URLs below.
>>
>> In order to provide a v1 of this series, I created a naming convention for the
>> artifacts and also for the string passed to emulator.py in parameter "kernel".
>> It was the first naming that came to mind, so of course it is open to
>> suggestions/improvements.
>>
>> [1] https://gitlab.com/RicardoMartincoski/buildroot/commit/2ed44c7471cf5db246b592e24e9b2cfd69702f0f
>> [2] https://gitlab.com/RicardoMartincoski/buildroot/pipelines/74501223
>> [3] https://gitlab.com/RicardoMartincoski/buildroot/pipelines/74516103
> 
> Thanks a lot for working on this. However, instead of having this new
> kernel as a separate "version" from the current ARMv5 pre-built kernel,
> why don't we simply update the existing one ?

 IMO it's rarely a good idea to overwrite an existing file that can be
downloaded. So I'd apply Ricardo's patches as is.

 Regards,
 Arnout

> 
> One issue is that downloads get cached, so if the filename is the same,
> it won't be redownloaded. Perhaps we need to store hashes of the
> download artifacts, so that we can detect if they need to be
> re-downloaded ?
> 
> Best regards,
> 
> Thomas
> 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 0/4] new builtin kernel with entropy for the test infra
  2019-08-03 11:24   ` Arnout Vandecappelle
@ 2019-08-03 12:26     ` Peter Korsgaard
  0 siblings, 0 replies; 14+ messages in thread
From: Peter Korsgaard @ 2019-08-03 12:26 UTC (permalink / raw)
  To: buildroot

>>>>> "Arnout" == Arnout Vandecappelle <arnout@mind.be> writes:

 >> Thanks a lot for working on this. However, instead of having this new
 >> kernel as a separate "version" from the current ARMv5 pre-built kernel,
 >> why don't we simply update the existing one ?

 >  IMO it's rarely a good idea to overwrite an existing file that can be
 > downloaded. So I'd apply Ricardo's patches as is.

Still, it would be good to use this new kernel for builtin / armv5 - But
Ok, that can be fixed when applying.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 1/4] support/testing: add builtin armv5 kernel 4.19 with entropy
  2019-08-03  5:22 ` [Buildroot] [PATCH 1/4] support/testing: add builtin armv5 kernel 4.19 with entropy Ricardo Martincoski
@ 2019-08-03 12:51   ` Peter Korsgaard
  2019-10-16  9:50     ` Arnout Vandecappelle
  0 siblings, 1 reply; 14+ messages in thread
From: Peter Korsgaard @ 2019-08-03 12:51 UTC (permalink / raw)
  To: buildroot

>>>>> "Ricardo" == Ricardo Martincoski <ricardo.martincoski@gmail.com> writes:

 > More and more packages being tested by the test infra, e.g. syslog-ng,
 > need entropy at startup, usually reading from /dev/random.

 > Some test cases can also depend on a kernel version newer than the
 > builtin ones already provided by the test infra:
 >  - 3.11.0 for armv5;
 >  - 4.0.0 for armv7.

 > Add a new builtin kernel to be used by such test cases.
 > Add it for armv5 so most test cases that switch to use this kernel can
 > keep using BASIC_TOOLCHAIN_CONFIG.
 > Use the same kernel version and kernel config as qemu_arm_versatile plus
 > HW_RANDOM_VIRTIO for VirtIORNG to be usable.
 > Copy the actual binary file from the syslog-ng runtime test at current
 > master @ 29e1cb8884.
 > Since there is already a 'kernel-versatile' file and we must keep it
 > with this name for reproducibility purposes, create a simple naming
 > convention for newer builtin kernel images and dtb files:
 > kernel-<defconfig>-<kernel_series_version>
 > <dtb_name>-<kernel_series_version>.dtb
 > Pass '-device virtio-rng-pci' to qemu when this kernel is used.

 > Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
 > Cc: Arnout Vandecappelle <arnout@mind.be>
 > Cc: Peter Korsgaard <peter@korsgaard.com>
 > Cc: Romain Naour <romain.naour@gmail.com>
 > Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
 > ---
 >  support/testing/infra/emulator.py | 10 ++++++++++
 >  1 file changed, 10 insertions(+)

 > diff --git a/support/testing/infra/emulator.py b/support/testing/infra/emulator.py
 > index 3d3e1750c6..29008cb940 100644
 > --- a/support/testing/infra/emulator.py
 > +++ b/support/testing/infra/emulator.py
 > @@ -63,6 +63,16 @@ class Emulator(object):
 >                      kernel = infra.download(self.downloaddir,
 >                                              "kernel-versatile")
 >                      qemu_cmd += ["-M", "versatilepb"]
 > +            elif kernel == "builtin-4.19":
 > +                if arch == "armv5":
 > +                    kernel_cmdline.append("console=ttyAMA0")
 > +                    kernel = infra.download(self.downloaddir,
 > +                                            "kernel-versatile-4.19")
 > +                    dtb = infra.download(self.downloaddir,
 > +                                         "versatile-pb-4.19.dtb")
 > +                    qemu_cmd += ["-dtb", dtb]
 > +                    qemu_cmd += ["-M", "versatilepb"]
 > +                    qemu_cmd += ["-device", "virtio-rng-pci"]

Committed after changing the logic to use this for builtin/armv5
instead, thanks.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 2/4] support/testing: test syslog-ng with builtin kernel
  2019-08-03  5:22 ` [Buildroot] [PATCH 2/4] support/testing: test syslog-ng with builtin kernel Ricardo Martincoski
@ 2019-08-03 12:52   ` Peter Korsgaard
  0 siblings, 0 replies; 14+ messages in thread
From: Peter Korsgaard @ 2019-08-03 12:52 UTC (permalink / raw)
  To: buildroot

>>>>> "Ricardo" == Ricardo Martincoski <ricardo.martincoski@gmail.com> writes:

 > Use the new builtin kernel 4.19 with VirtIORNG to provide entropy to
 > test syslog-ng.

 > Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>

Committed, thanks.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 3/4] support/testing: test python-* with builtin kernel
  2019-08-03  5:22 ` [Buildroot] [PATCH 3/4] support/testing: test python-* " Ricardo Martincoski
@ 2019-08-03 12:52   ` Peter Korsgaard
  0 siblings, 0 replies; 14+ messages in thread
From: Peter Korsgaard @ 2019-08-03 12:52 UTC (permalink / raw)
  To: buildroot

>>>>> "Ricardo" == Ricardo Martincoski <ricardo.martincoski@gmail.com> writes:

 > Use the new builtin kernel 4.19 with VirtIORNG to provide entropy to
 > test all python packages by default.

 > Fixes:
 > https://gitlab.com/buildroot.org/buildroot/-/jobs/264508536
 > https://gitlab.com/buildroot.org/buildroot/-/jobs/264508537
 > https://gitlab.com/buildroot.org/buildroot/-/jobs/264508542
 > https://gitlab.com/buildroot.org/buildroot/-/jobs/264508543

 > The workaround of adding haveged to the image is not needed anymore, so
 > remove it from the python-crossbar and python-nacl test.

 > Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
 > Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

Reworded somewhat now that we are still using "builtin" for the new
kernel and committed, thanks.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 4/4] support/testing: test atop with builtin kernel
  2019-08-03  5:22 ` [Buildroot] [PATCH 4/4] support/testing: test atop " Ricardo Martincoski
@ 2019-08-03 12:52   ` Peter Korsgaard
  0 siblings, 0 replies; 14+ messages in thread
From: Peter Korsgaard @ 2019-08-03 12:52 UTC (permalink / raw)
  To: buildroot

>>>>> "Ricardo" == Ricardo Martincoski <ricardo.martincoski@gmail.com> writes:

 > Use the new builtin kernel 4.19 to test atop.
 > The atop package cannot be tested using BASIC_TOOLCHAIN_CONFIG because
 > it needs kernel headers >= 3.14. So use an updated version of it,
 > copying the config fragment from
 > support/config-fragments/autobuild/br-arm-full.config

 > Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>

Committed, thanks.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 1/4] support/testing: add builtin armv5 kernel 4.19 with entropy
  2019-08-03 12:51   ` Peter Korsgaard
@ 2019-10-16  9:50     ` Arnout Vandecappelle
  2019-10-16 10:05       ` Arnout Vandecappelle
  0 siblings, 1 reply; 14+ messages in thread
From: Arnout Vandecappelle @ 2019-10-16  9:50 UTC (permalink / raw)
  To: buildroot

 Hi Peter,

On 03/08/2019 14:51, Peter Korsgaard wrote:
>>>>>> "Ricardo" == Ricardo Martincoski <ricardo.martincoski@gmail.com> writes:
> 
>  > More and more packages being tested by the test infra, e.g. syslog-ng,
>  > need entropy at startup, usually reading from /dev/random.
> 
>  > Some test cases can also depend on a kernel version newer than the
>  > builtin ones already provided by the test infra:
>  >  - 3.11.0 for armv5;
>  >  - 4.0.0 for armv7.
> 
>  > Add a new builtin kernel to be used by such test cases.
>  > Add it for armv5 so most test cases that switch to use this kernel can
>  > keep using BASIC_TOOLCHAIN_CONFIG.
>  > Use the same kernel version and kernel config as qemu_arm_versatile plus
>  > HW_RANDOM_VIRTIO for VirtIORNG to be usable.
>  > Copy the actual binary file from the syslog-ng runtime test at current
>  > master @ 29e1cb8884.
>  > Since there is already a 'kernel-versatile' file and we must keep it
>  > with this name for reproducibility purposes, create a simple naming
>  > convention for newer builtin kernel images and dtb files:
>  > kernel-<defconfig>-<kernel_series_version>
>  > <dtb_name>-<kernel_series_version>.dtb
>  > Pass '-device virtio-rng-pci' to qemu when this kernel is used.
> 
>  > Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
>  > Cc: Arnout Vandecappelle <arnout@mind.be>
>  > Cc: Peter Korsgaard <peter@korsgaard.com>
>  > Cc: Romain Naour <romain.naour@gmail.com>
>  > Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
>  > ---
>  >  support/testing/infra/emulator.py | 10 ++++++++++
>  >  1 file changed, 10 insertions(+)
> 
>  > diff --git a/support/testing/infra/emulator.py b/support/testing/infra/emulator.py
>  > index 3d3e1750c6..29008cb940 100644
>  > --- a/support/testing/infra/emulator.py
>  > +++ b/support/testing/infra/emulator.py
>  > @@ -63,6 +63,16 @@ class Emulator(object):
>  >                      kernel = infra.download(self.downloaddir,
>  >                                              "kernel-versatile")
>  >                      qemu_cmd += ["-M", "versatilepb"]
>  > +            elif kernel == "builtin-4.19":
>  > +                if arch == "armv5":
>  > +                    kernel_cmdline.append("console=ttyAMA0")
>  > +                    kernel = infra.download(self.downloaddir,
>  > +                                            "kernel-versatile-4.19")
>  > +                    dtb = infra.download(self.downloaddir,
>  > +                                         "versatile-pb-4.19.dtb")
>  > +                    qemu_cmd += ["-dtb", dtb]
>  > +                    qemu_cmd += ["-M", "versatilepb"]
>  > +                    qemu_cmd += ["-device", "virtio-rng-pci"]
> 
> Committed after changing the logic to use this for builtin/armv5
> instead, thanks.

 Could you backport this to 2019.02.x? Lots of runtime tests are still failing
due to timeout in 2019.02.6 [1] and I think that would be fixed with this commit.


 Regards,
 Arnout

[1] https://gitlab.com/buildroot.org/buildroot/pipelines/86342478
(take a long time to load!)

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 1/4] support/testing: add builtin armv5 kernel 4.19 with entropy
  2019-10-16  9:50     ` Arnout Vandecappelle
@ 2019-10-16 10:05       ` Arnout Vandecappelle
  0 siblings, 0 replies; 14+ messages in thread
From: Arnout Vandecappelle @ 2019-10-16 10:05 UTC (permalink / raw)
  To: buildroot



On 16/10/2019 11:50, Arnout Vandecappelle wrote:
>  Hi Peter,
> 
> On 03/08/2019 14:51, Peter Korsgaard wrote:
>>>>>>> "Ricardo" == Ricardo Martincoski <ricardo.martincoski@gmail.com> writes:
>>
>>  > More and more packages being tested by the test infra, e.g. syslog-ng,
>>  > need entropy at startup, usually reading from /dev/random.
>>
>>  > Some test cases can also depend on a kernel version newer than the
>>  > builtin ones already provided by the test infra:
>>  >  - 3.11.0 for armv5;
>>  >  - 4.0.0 for armv7.
>>
>>  > Add a new builtin kernel to be used by such test cases.
>>  > Add it for armv5 so most test cases that switch to use this kernel can
>>  > keep using BASIC_TOOLCHAIN_CONFIG.
>>  > Use the same kernel version and kernel config as qemu_arm_versatile plus
>>  > HW_RANDOM_VIRTIO for VirtIORNG to be usable.
>>  > Copy the actual binary file from the syslog-ng runtime test at current
>>  > master @ 29e1cb8884.
>>  > Since there is already a 'kernel-versatile' file and we must keep it
>>  > with this name for reproducibility purposes, create a simple naming
>>  > convention for newer builtin kernel images and dtb files:
>>  > kernel-<defconfig>-<kernel_series_version>
>>  > <dtb_name>-<kernel_series_version>.dtb
>>  > Pass '-device virtio-rng-pci' to qemu when this kernel is used.
>>
>>  > Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
>>  > Cc: Arnout Vandecappelle <arnout@mind.be>
>>  > Cc: Peter Korsgaard <peter@korsgaard.com>
>>  > Cc: Romain Naour <romain.naour@gmail.com>
>>  > Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
>>  > ---
>>  >  support/testing/infra/emulator.py | 10 ++++++++++
>>  >  1 file changed, 10 insertions(+)
>>
>>  > diff --git a/support/testing/infra/emulator.py b/support/testing/infra/emulator.py
>>  > index 3d3e1750c6..29008cb940 100644
>>  > --- a/support/testing/infra/emulator.py
>>  > +++ b/support/testing/infra/emulator.py
>>  > @@ -63,6 +63,16 @@ class Emulator(object):
>>  >                      kernel = infra.download(self.downloaddir,
>>  >                                              "kernel-versatile")
>>  >                      qemu_cmd += ["-M", "versatilepb"]
>>  > +            elif kernel == "builtin-4.19":
>>  > +                if arch == "armv5":
>>  > +                    kernel_cmdline.append("console=ttyAMA0")
>>  > +                    kernel = infra.download(self.downloaddir,
>>  > +                                            "kernel-versatile-4.19")
>>  > +                    dtb = infra.download(self.downloaddir,
>>  > +                                         "versatile-pb-4.19.dtb")
>>  > +                    qemu_cmd += ["-dtb", dtb]
>>  > +                    qemu_cmd += ["-M", "versatilepb"]
>>  > +                    qemu_cmd += ["-device", "virtio-rng-pci"]
>>
>> Committed after changing the logic to use this for builtin/armv5
>> instead, thanks.
> 
>  Could you backport this to 2019.02.x? Lots of runtime tests are still failing
> due to timeout in 2019.02.6 [1] and I think that would be fixed with this commit.

 Sorry, my bad, those timeouts were actually due to agents that didn't work
properly. But still, 2019.02.5 [2] has some issues that I think would be fixed
by this commit (e.g. [3]).

 Regards,
 Arnout

> 
> 
>  Regards,
>  Arnout
> 
> [1] https://gitlab.com/buildroot.org/buildroot/pipelines/86342478
> (take a long time to load!)

[2] https://gitlab.com/buildroot.org/buildroot/pipelines/79837452/failures
(failures only loads a lot quicker :-)

[3] https://gitlab.com/buildroot.org/buildroot/-/jobs/285867504

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2019-10-16 10:05 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-08-03  5:22 [Buildroot] [PATCH 0/4] new builtin kernel with entropy for the test infra Ricardo Martincoski
2019-08-03  5:22 ` [Buildroot] [PATCH 1/4] support/testing: add builtin armv5 kernel 4.19 with entropy Ricardo Martincoski
2019-08-03 12:51   ` Peter Korsgaard
2019-10-16  9:50     ` Arnout Vandecappelle
2019-10-16 10:05       ` Arnout Vandecappelle
2019-08-03  5:22 ` [Buildroot] [PATCH 2/4] support/testing: test syslog-ng with builtin kernel Ricardo Martincoski
2019-08-03 12:52   ` Peter Korsgaard
2019-08-03  5:22 ` [Buildroot] [PATCH 3/4] support/testing: test python-* " Ricardo Martincoski
2019-08-03 12:52   ` Peter Korsgaard
2019-08-03  5:22 ` [Buildroot] [PATCH 4/4] support/testing: test atop " Ricardo Martincoski
2019-08-03 12:52   ` Peter Korsgaard
2019-08-03  6:24 ` [Buildroot] [PATCH 0/4] new builtin kernel with entropy for the test infra Thomas Petazzoni
2019-08-03 11:24   ` Arnout Vandecappelle
2019-08-03 12:26     ` Peter Korsgaard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox