public inbox for passt-dev@passt.top
 help / color / mirror / code / Atom feed
* [PATCH 00/11] Fixes for demos, pre-push hook, README
@ 2022-09-23 22:42 Stefano Brivio
  2022-09-23 22:42 ` [PATCH 01/11] contrib/podman: Rebase to latest upstream Stefano Brivio
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: Stefano Brivio @ 2022-09-23 22:42 UTC (permalink / raw)
  To: passt-dev

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

After the recent rework of command dispatch and handling of temporary
files, a few issues prevent demos from completing, and CI files from
being uploaded. Fix those.

On top of that, rebase to Podman's latest upstream so that the Podman
demo can run again, shorten paths used to change directories in demo
scripts, and fix a number of inconsistencies in the README.

Given that the current state of the website is inconsistent, I'd be
inclined to apply these right away, while posting to ease later
review anyway.

Stefano Brivio (11):
  contrib/podman: Rebase to latest upstream
  hooks/pre_push: Fix upload of CI's logs and terminal capture file
  test/demo: Use relative paths to change directories when possible
  test/demo: Avoid using port 5201 on the host
  test/lib: Drop perf_report_append() from perf_report
  test/lib: Don't try to write to perf.js when running demos
  README: Fix misspellings of openSUSE
  README: Point openSUSE links to Dario's OBS repository
  README: Fix indentation in "Try It" section
  README: Fix paragraph in Try It section of passt
  README: Add legend for Features section

 README.md                                     |  24 ++-
 ...001-libpod-Add-pasta-networking-mode.patch |  95 +++++-----
 hooks/pre-push                                |  11 +-
 test/demo/passt                               |  45 +++--
 test/demo/pasta                               |  20 +-
 test/demo/podman                              | 176 +++++++++---------
 test/lib/perf_report                          |  13 +-
 7 files changed, 198 insertions(+), 186 deletions(-)

-- 
2.35.1


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

* [PATCH 01/11] contrib/podman: Rebase to latest upstream
  2022-09-23 22:42 [PATCH 00/11] Fixes for demos, pre-push hook, README Stefano Brivio
@ 2022-09-23 22:42 ` Stefano Brivio
  2022-09-23 22:42 ` [PATCH 02/11] hooks/pre_push: Fix upload of CI's logs and terminal capture file Stefano Brivio
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Stefano Brivio @ 2022-09-23 22:42 UTC (permalink / raw)
  To: passt-dev

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

One check moved from networking_linux.go to networking_common.go.

Signed-off-by: Stefano Brivio <sbrivio(a)redhat.com>
---
 ...001-libpod-Add-pasta-networking-mode.patch | 95 ++++++++++---------
 1 file changed, 50 insertions(+), 45 deletions(-)

diff --git a/contrib/podman/0001-libpod-Add-pasta-networking-mode.patch b/contrib/podman/0001-libpod-Add-pasta-networking-mode.patch
index bf608f1..a6e832a 100644
--- a/contrib/podman/0001-libpod-Add-pasta-networking-mode.patch
+++ b/contrib/podman/0001-libpod-Add-pasta-networking-mode.patch
@@ -1,4 +1,4 @@
-From 321b58cf7e9eadb6073c286ed6709747770f5964 Mon Sep 17 00:00:00 2001
+From 7294b62e15bee68f1920ea04aaab3284ce43e7ea Mon Sep 17 00:00:00 2001
 From: Stefano Brivio <sbrivio(a)redhat.com>
 Date: Mon, 2 May 2022 16:12:07 +0200
 Subject: [PATCH] libpod: Add pasta networking mode
@@ -45,21 +45,22 @@ SPDX-License-Identifier: Apache-2.0
  .../source/markdown/podman-pod-create.1.md.in |  44 +++++++
  docs/source/markdown/podman-run.1.md.in       |  49 +++++++-
  docs/source/markdown/podman.1.md              |   6 +-
- libpod/networking_linux.go                    |   6 +-
+ libpod/networking_common.go                   |   3 +-
+ libpod/networking_linux.go                    |   3 +
  libpod/networking_pasta.go                    | 107 ++++++++++++++++++
  pkg/namespaces/namespaces.go                  |   6 +
  pkg/specgen/generate/namespaces.go            |  10 ++
  pkg/specgen/generate/pod_create.go            |   6 +
  pkg/specgen/namespaces.go                     |  16 ++-
  pkg/specgen/podspecgen.go                     |   2 +-
- 11 files changed, 286 insertions(+), 14 deletions(-)
+ 12 files changed, 286 insertions(+), 14 deletions(-)
  create mode 100644 libpod/networking_pasta.go
 
 diff --git a/docs/source/markdown/podman-create.1.md.in b/docs/source/markdown/podman-create.1.md.in
-index 0a880951d..287dbc4a4 100644
+index 742a32b5a..79fb3a3e1 100644
 --- a/docs/source/markdown/podman-create.1.md.in
 +++ b/docs/source/markdown/podman-create.1.md.in
-@@ -394,10 +394,15 @@ Valid _mode_ values are:
+@@ -277,10 +277,15 @@ Valid _mode_ values are:
    - **interface_name**: Specify a name for the created network interface inside the container.
  
    For example to set a static ipv4 address and a static mac address, use `--network bridge:ip=10.88.0.10,mac=44:33:22:11:00:99`.
@@ -75,7 +76,7 @@ index 0a880951d..287dbc4a4 100644
  - **ns:**_path_: Path to a network namespace to join.
  - **private**: Create a new namespace for the container. This will use the **bridge** mode for rootful containers and **slirp4netns** for rootless ones.
  - **slirp4netns[:OPTIONS,...]**: use **slirp4netns**(1) to create a user network stack. This is the default for rootless containers. It is possible to specify these additional options, they can also be set with `network_cmd_options` in containers.conf:
-@@ -413,6 +418,40 @@ Valid _mode_ values are:
+@@ -296,6 +301,40 @@ Valid _mode_ values are:
    Note: Rootlesskit changes the source IP address of incoming packets to an IP address in the container network namespace, usually `10.0.2.100`. If your application requires the real source IP address, e.g. web server logs, use the slirp4netns port handler. The rootlesskit port handler is also used for rootless containers when connected to user-defined networks.
    - **port_handler=slirp4netns**: Use the slirp4netns port forwarding, it is slower than rootlesskit but preserves the correct source IP address. This port handler cannot be used for user-defined networks.
  
@@ -116,7 +117,7 @@ index 0a880951d..287dbc4a4 100644
  @@option network-alias
  
  @@option no-healthcheck
-@@ -1018,8 +1057,9 @@ In order for users to run rootless, there must be an entry for their username in
+@@ -550,8 +589,9 @@ In order for users to run rootless, there must be an entry for their username in
  
  Rootless Podman works better if the fuse-overlayfs and slirp4netns packages are installed.
  The fuse-overlayfs package provides a userspace overlay storage driver, otherwise users need to use
@@ -128,7 +129,7 @@ index 0a880951d..287dbc4a4 100644
  
  ## ENVIRONMENT
  
-@@ -1068,7 +1108,9 @@ page.
+@@ -600,7 +640,9 @@ page.
  NOTE: Use the environment variable `TMPDIR` to change the temporary storage location of downloaded container images. Podman defaults to use `/var/tmp`.
  
  ## SEE ALSO
@@ -140,10 +141,10 @@ index 0a880951d..287dbc4a4 100644
  ## HISTORY
  October 2017, converted from Docker documentation to Podman by Dan Walsh for Podman `<dwalsh(a)redhat.com>`
 diff --git a/docs/source/markdown/podman-pod-create.1.md.in b/docs/source/markdown/podman-pod-create.1.md.in
-index 702780c65..609a5aee5 100644
+index fdae1d249..104ad460b 100644
 --- a/docs/source/markdown/podman-pod-create.1.md.in
 +++ b/docs/source/markdown/podman-pod-create.1.md.in
-@@ -181,10 +181,15 @@ Valid _mode_ values are:
+@@ -131,10 +131,15 @@ Valid _mode_ values are:
    - **interface_name**: Specify a name for the created network interface inside the container.
  
    For example to set a static ipv4 address and a static mac address, use `--network bridge:ip=10.88.0.10,mac=44:33:22:11:00:99`.
@@ -159,7 +160,7 @@ index 702780c65..609a5aee5 100644
  - **ns:**_path_: Path to a network namespace to join.
  - **private**: Create a new namespace for the container. This will use the **bridge** mode for rootful containers and **slirp4netns** for rootless ones.
  - **slirp4netns[:OPTIONS,...]**: use **slirp4netns**(1) to create a user network stack. This is the default for rootless containers. It is possible to specify these additional options, they can also be set with `network_cmd_options` in containers.conf:
-@@ -200,6 +205,43 @@ Valid _mode_ values are:
+@@ -150,6 +155,43 @@ Valid _mode_ values are:
    Note: Rootlesskit changes the source IP address of incoming packets to an IP address in the container network namespace, usually `10.0.2.100`. If your application requires the real source IP address, e.g. web server logs, use the slirp4netns port handler. The rootlesskit port handler is also used for rootless containers when connected to user-defined networks.
    - **port_handler=slirp4netns**: Use the slirp4netns port forwarding, it is slower than rootlesskit but preserves the correct source IP address. This port handler cannot be used for user-defined networks.
  
@@ -203,7 +204,7 @@ index 702780c65..609a5aee5 100644
  @@option network-alias
  
  @@option no-hosts
-@@ -561,6 +603,8 @@ $ podman pod create --network slirp4netns:outbound_addr=127.0.0.1,allow_host_loo
+@@ -248,6 +290,8 @@ $ podman pod create --network slirp4netns:outbound_addr=127.0.0.1,allow_host_loo
  
  $ podman pod create --network slirp4netns:cidr=192.168.0.0/24
  
@@ -213,10 +214,10 @@ index 702780c65..609a5aee5 100644
  ```
  
 diff --git a/docs/source/markdown/podman-run.1.md.in b/docs/source/markdown/podman-run.1.md.in
-index 6798c65da..06dfa0745 100644
+index 2109a0e33..a9b212e81 100644
 --- a/docs/source/markdown/podman-run.1.md.in
 +++ b/docs/source/markdown/podman-run.1.md.in
-@@ -409,10 +409,15 @@ Valid _mode_ values are:
+@@ -298,10 +298,15 @@ Valid _mode_ values are:
    - **interface_name**: Specify a name for the created network interface inside the container.
  
    For example to set a static ipv4 address and a static mac address, use `--network bridge:ip=10.88.0.10,mac=44:33:22:11:00:99`.
@@ -232,7 +233,7 @@ index 6798c65da..06dfa0745 100644
  - **ns:**_path_: Path to a network namespace to join.
  - **private**: Create a new namespace for the container. This will use the **bridge** mode for rootful containers and **slirp4netns** for rootless ones.
  - **slirp4netns[:OPTIONS,...]**: use **slirp4netns**(1) to create a user network stack. This is the default for rootless containers. It is possible to specify these additional options, they can also be set with `network_cmd_options` in containers.conf:
-@@ -428,6 +433,43 @@ Valid _mode_ values are:
+@@ -317,6 +322,43 @@ Valid _mode_ values are:
    Note: Rootlesskit changes the source IP address of incoming packets to an IP address in the container network namespace, usually `10.0.2.100`. If your application requires the real source IP address, e.g. web server logs, use the slirp4netns port handler. The rootlesskit port handler is also used for rootless containers when connected to user-defined networks.
    - **port_handler=slirp4netns**: Use the slirp4netns port forwarding, it is slower than rootlesskit but preserves the correct source IP address. This port handler cannot be used for user-defined networks.
  
@@ -276,7 +277,7 @@ index 6798c65da..06dfa0745 100644
  @@option network-alias
  
  @@option no-healthcheck
-@@ -1383,8 +1425,9 @@ In order for users to run rootless, there must be an entry for their username in
+@@ -900,8 +942,9 @@ In order for users to run rootless, there must be an entry for their username in
  
  Rootless Podman works better if the fuse-overlayfs and slirp4netns packages are installed.
  The **fuse-overlayfs** package provides a userspace overlay storage driver, otherwise users need to use
@@ -288,7 +289,7 @@ index 6798c65da..06dfa0745 100644
  
  ## ENVIRONMENT
  
-@@ -1431,7 +1474,7 @@ page.
+@@ -948,7 +991,7 @@ page.
  NOTE: Use the environment variable `TMPDIR` to change the temporary storage location of downloaded container images. Podman defaults to use `/var/tmp`.
  
  ## SEE ALSO
@@ -298,7 +299,7 @@ index 6798c65da..06dfa0745 100644
  ## HISTORY
  September 2018, updated by Kunal Kushwaha `<kushwaha_kunal_v7(a)lab.ntt.co.jp>`
 diff --git a/docs/source/markdown/podman.1.md b/docs/source/markdown/podman.1.md
-index d1192b6d2..a79a56253 100644
+index 7a8dd7043..a54288bb0 100644
 --- a/docs/source/markdown/podman.1.md
 +++ b/docs/source/markdown/podman.1.md
 @@ -88,7 +88,7 @@ Set libpod namespace. Namespaces are used to separate groups of containers and p
@@ -310,7 +311,7 @@ index d1192b6d2..a79a56253 100644
  
  #### **--network-config-dir**=*directory*
  
-@@ -421,7 +421,7 @@ See the `subuid(5)` and `subgid(5)` man pages for more information.
+@@ -422,7 +422,7 @@ See the `subuid(5)` and `subgid(5)` man pages for more information.
  
  Images are pulled under `XDG_DATA_HOME` when specified, otherwise in the home directory of the user under `.local/share/containers/storage`.
  
@@ -319,7 +320,7 @@ index d1192b6d2..a79a56253 100644
  
  In certain environments like HPC (High Performance Computing), users cannot take advantage of the additional UIDs and GIDs from the /etc/subuid and /etc/subgid systems.  However, in this environment, rootless Podman can operate with a single UID.  To make this work, set the `ignore_chown_errors` option in the /etc/containers/storage.conf or in ~/.config/containers/storage.conf files. This option tells Podman when pulling an image to ignore chown errors when attempting to change a file in a container image to match the non-root UID in the image. This means all files get saved as the user's UID. Note this could cause issues when running the container.
  
-@@ -434,7 +434,7 @@ The Network File System (NFS) and other distributed file systems (for example: L
+@@ -435,7 +435,7 @@ The Network File System (NFS) and other distributed file systems (for example: L
  For more information, please refer to the [Podman Troubleshooting Page](https://github.com/containers/podman/blob/main/troubleshooting.md).
  
  ## SEE ALSO
@@ -328,11 +329,25 @@ index d1192b6d2..a79a56253 100644
  
  ## HISTORY
  Dec 2016, Originally compiled by Dan Walsh <dwalsh(a)redhat.com>
+diff --git a/libpod/networking_common.go b/libpod/networking_common.go
+index fa444e26a..2590a4477 100644
+--- a/libpod/networking_common.go
++++ b/libpod/networking_common.go
+@@ -133,7 +133,8 @@ func (r *Runtime) teardownCNI(ctr *Container) error {
+ 		return err
+ 	}
+ 
+-	if !ctr.config.NetMode.IsSlirp4netns() && len(networks) > 0 {
++	if !ctr.config.NetMode.IsSlirp4netns() &&
++	   !ctr.config.NetMode.IsPasta() && len(networks) > 0 {
+ 		netOpts := ctr.getNetworkOptions(networks)
+ 		return r.teardownNetwork(ctr.state.NetNS.Path(), netOpts)
+ 	}
 diff --git a/libpod/networking_linux.go b/libpod/networking_linux.go
-index c10c3c0b2..0f0c1213c 100644
+index 6ea56ade5..822004a7c 100644
 --- a/libpod/networking_linux.go
 +++ b/libpod/networking_linux.go
-@@ -640,6 +640,9 @@ func (r *Runtime) configureNetNS(ctr *Container, ctrNS ns.NetNS) (status map[str
+@@ -563,6 +563,9 @@ func (r *Runtime) configureNetNS(ctr *Container, ctrNS ns.NetNS) (status map[str
  	if ctr.config.NetMode.IsSlirp4netns() {
  		return nil, r.setupSlirp4netns(ctr, ctrNS)
  	}
@@ -342,16 +357,6 @@ index c10c3c0b2..0f0c1213c 100644
  	networks, err := ctr.networks()
  	if err != nil {
  		return nil, err
-@@ -809,7 +812,8 @@ func (r *Runtime) teardownCNI(ctr *Container) error {
- 		return err
- 	}
- 
--	if !ctr.config.NetMode.IsSlirp4netns() && len(networks) > 0 {
-+	if !ctr.config.NetMode.IsSlirp4netns() &&
-+	   !ctr.config.NetMode.IsPasta() && len(networks) > 0 {
- 		netOpts := ctr.getNetworkOptions(networks)
- 		return r.teardownNetwork(ctr.state.NetNS.Path(), netOpts)
- 	}
 diff --git a/libpod/networking_pasta.go b/libpod/networking_pasta.go
 new file mode 100644
 index 000000000..f179c803a
@@ -466,7 +471,7 @@ index 000000000..f179c803a
 +	return nil
 +}
 diff --git a/pkg/namespaces/namespaces.go b/pkg/namespaces/namespaces.go
-index 8eacb8da7..49a6d3786 100644
+index 6dd576ea5..85903e7a9 100644
 --- a/pkg/namespaces/namespaces.go
 +++ b/pkg/namespaces/namespaces.go
 @@ -19,6 +19,7 @@ const (
@@ -476,8 +481,8 @@ index 8eacb8da7..49a6d3786 100644
 +	pastaType     = "pasta"
  )
  
- // CgroupMode represents cgroup mode in the container.
-@@ -393,6 +394,11 @@ func (n NetworkMode) IsSlirp4netns() bool {
+ // KeepIDUserNsOptions defines how to keepIDmatically create a user namespace.
+@@ -440,6 +441,11 @@ func (n NetworkMode) IsSlirp4netns() bool {
  	return n == slirpType || strings.HasPrefix(string(n), slirpType+":")
  }
  
@@ -490,10 +495,10 @@ index 8eacb8da7..49a6d3786 100644
  func (n NetworkMode) IsNS() bool {
  	return strings.HasPrefix(string(n), nsType)
 diff --git a/pkg/specgen/generate/namespaces.go b/pkg/specgen/generate/namespaces.go
-index f0d4e9153..2c4b40509 100644
+index 9497894f3..11a30e545 100644
 --- a/pkg/specgen/generate/namespaces.go
 +++ b/pkg/specgen/generate/namespaces.go
-@@ -295,6 +295,16 @@ func namespaceOptions(s *specgen.SpecGenerator, rt *libpod.Runtime, pod *libpod.
+@@ -300,6 +300,16 @@ func namespaceOptions(s *specgen.SpecGenerator, rt *libpod.Runtime, pod *libpod.
  			val = fmt.Sprintf("slirp4netns:%s", s.NetNS.Value)
  		}
  		toReturn = append(toReturn, libpod.WithNetNS(portMappings, expose, postConfigureNetNS, val, nil))
@@ -511,10 +516,10 @@ index f0d4e9153..2c4b40509 100644
  		portMappings, expose, err := createPortMappings(s, imageData)
  		if err != nil {
 diff --git a/pkg/specgen/generate/pod_create.go b/pkg/specgen/generate/pod_create.go
-index d6063b9a0..be94fb251 100644
+index 14d390e49..ad91353cb 100644
 --- a/pkg/specgen/generate/pod_create.go
 +++ b/pkg/specgen/generate/pod_create.go
-@@ -201,6 +201,12 @@ func MapSpec(p *specgen.PodSpecGenerator) (*specgen.SpecGenerator, error) {
+@@ -195,6 +195,12 @@ func MapSpec(p *specgen.PodSpecGenerator) (*specgen.SpecGenerator, error) {
  			p.InfraContainerSpec.NetworkOptions = p.NetworkOptions
  			p.InfraContainerSpec.NetNS.NSMode = specgen.Slirp
  		}
@@ -528,10 +533,10 @@ index d6063b9a0..be94fb251 100644
  		logrus.Debugf("Pod will not use networking")
  		if len(p.InfraContainerSpec.PortMappings) > 0 ||
 diff --git a/pkg/specgen/namespaces.go b/pkg/specgen/namespaces.go
-index 03a2049f6..baa113570 100644
+index b6bbee868..5c4cb97c2 100644
 --- a/pkg/specgen/namespaces.go
 +++ b/pkg/specgen/namespaces.go
-@@ -51,6 +51,9 @@ const (
+@@ -52,6 +52,9 @@ const (
  	// be used.
  	// Only used with the network namespace, invalid otherwise.
  	Slirp NamespaceMode = "slirp4netns"
@@ -541,7 +546,7 @@ index 03a2049f6..baa113570 100644
  	// KeepId indicates a user namespace to keep the owner uid inside
  	// of the namespace itself.
  	// Only used with the user namespace, invalid otherwise.
-@@ -153,7 +156,7 @@ func validateNetNS(n *Namespace) error {
+@@ -154,7 +157,7 @@ func validateNetNS(n *Namespace) error {
  		return nil
  	}
  	switch n.NSMode {
@@ -550,7 +555,7 @@ index 03a2049f6..baa113570 100644
  		break
  	case "", Default, Host, Path, FromContainer, FromPod, Private, NoNetwork, Bridge:
  		break
-@@ -196,7 +199,7 @@ func (n *Namespace) validate() error {
+@@ -197,7 +200,7 @@ func (n *Namespace) validate() error {
  	switch n.NSMode {
  	case "", Default, Host, Path, FromContainer, FromPod, Private:
  		// Valid, do nothing
@@ -559,7 +564,7 @@ index 03a2049f6..baa113570 100644
  		return errors.New("cannot use network modes with non-network namespace")
  	default:
  		return fmt.Errorf("invalid namespace type %s specified", n.NSMode)
-@@ -340,6 +343,13 @@ func ParseNetworkFlag(networks []string) (Namespace, map[string]types.PerNetwork
+@@ -349,6 +352,13 @@ func ParseNetworkFlag(networks []string) (Namespace, map[string]types.PerNetwork
  			networkOptions[parts[0]] = strings.Split(parts[1], ",")
  		}
  		toReturn.NSMode = Slirp
@@ -573,7 +578,7 @@ index 03a2049f6..baa113570 100644
  	case ns == string(FromPod):
  		toReturn.NSMode = FromPod
  	case ns == "" || ns == string(Default) || ns == string(Private):
-@@ -410,7 +420,7 @@ func ParseNetworkFlag(networks []string) (Namespace, map[string]types.PerNetwork
+@@ -419,7 +429,7 @@ func ParseNetworkFlag(networks []string) (Namespace, map[string]types.PerNetwork
  			if parts[0] == "" {
  				return toReturn, nil, nil, fmt.Errorf("network name cannot be empty: %w", define.ErrInvalidArg)
  			}
-- 
@@ -1,4 +1,4 @@
-From 321b58cf7e9eadb6073c286ed6709747770f5964 Mon Sep 17 00:00:00 2001
+From 7294b62e15bee68f1920ea04aaab3284ce43e7ea Mon Sep 17 00:00:00 2001
 From: Stefano Brivio <sbrivio(a)redhat.com>
 Date: Mon, 2 May 2022 16:12:07 +0200
 Subject: [PATCH] libpod: Add pasta networking mode
@@ -45,21 +45,22 @@ SPDX-License-Identifier: Apache-2.0
  .../source/markdown/podman-pod-create.1.md.in |  44 +++++++
  docs/source/markdown/podman-run.1.md.in       |  49 +++++++-
  docs/source/markdown/podman.1.md              |   6 +-
- libpod/networking_linux.go                    |   6 +-
+ libpod/networking_common.go                   |   3 +-
+ libpod/networking_linux.go                    |   3 +
  libpod/networking_pasta.go                    | 107 ++++++++++++++++++
  pkg/namespaces/namespaces.go                  |   6 +
  pkg/specgen/generate/namespaces.go            |  10 ++
  pkg/specgen/generate/pod_create.go            |   6 +
  pkg/specgen/namespaces.go                     |  16 ++-
  pkg/specgen/podspecgen.go                     |   2 +-
- 11 files changed, 286 insertions(+), 14 deletions(-)
+ 12 files changed, 286 insertions(+), 14 deletions(-)
  create mode 100644 libpod/networking_pasta.go
 
 diff --git a/docs/source/markdown/podman-create.1.md.in b/docs/source/markdown/podman-create.1.md.in
-index 0a880951d..287dbc4a4 100644
+index 742a32b5a..79fb3a3e1 100644
 --- a/docs/source/markdown/podman-create.1.md.in
 +++ b/docs/source/markdown/podman-create.1.md.in
-@@ -394,10 +394,15 @@ Valid _mode_ values are:
+@@ -277,10 +277,15 @@ Valid _mode_ values are:
    - **interface_name**: Specify a name for the created network interface inside the container.
  
    For example to set a static ipv4 address and a static mac address, use `--network bridge:ip=10.88.0.10,mac=44:33:22:11:00:99`.
@@ -75,7 +76,7 @@ index 0a880951d..287dbc4a4 100644
  - **ns:**_path_: Path to a network namespace to join.
  - **private**: Create a new namespace for the container. This will use the **bridge** mode for rootful containers and **slirp4netns** for rootless ones.
  - **slirp4netns[:OPTIONS,...]**: use **slirp4netns**(1) to create a user network stack. This is the default for rootless containers. It is possible to specify these additional options, they can also be set with `network_cmd_options` in containers.conf:
-@@ -413,6 +418,40 @@ Valid _mode_ values are:
+@@ -296,6 +301,40 @@ Valid _mode_ values are:
    Note: Rootlesskit changes the source IP address of incoming packets to an IP address in the container network namespace, usually `10.0.2.100`. If your application requires the real source IP address, e.g. web server logs, use the slirp4netns port handler. The rootlesskit port handler is also used for rootless containers when connected to user-defined networks.
    - **port_handler=slirp4netns**: Use the slirp4netns port forwarding, it is slower than rootlesskit but preserves the correct source IP address. This port handler cannot be used for user-defined networks.
  
@@ -116,7 +117,7 @@ index 0a880951d..287dbc4a4 100644
  @@option network-alias
  
  @@option no-healthcheck
-@@ -1018,8 +1057,9 @@ In order for users to run rootless, there must be an entry for their username in
+@@ -550,8 +589,9 @@ In order for users to run rootless, there must be an entry for their username in
  
  Rootless Podman works better if the fuse-overlayfs and slirp4netns packages are installed.
  The fuse-overlayfs package provides a userspace overlay storage driver, otherwise users need to use
@@ -128,7 +129,7 @@ index 0a880951d..287dbc4a4 100644
  
  ## ENVIRONMENT
  
-@@ -1068,7 +1108,9 @@ page.
+@@ -600,7 +640,9 @@ page.
  NOTE: Use the environment variable `TMPDIR` to change the temporary storage location of downloaded container images. Podman defaults to use `/var/tmp`.
  
  ## SEE ALSO
@@ -140,10 +141,10 @@ index 0a880951d..287dbc4a4 100644
  ## HISTORY
  October 2017, converted from Docker documentation to Podman by Dan Walsh for Podman `<dwalsh(a)redhat.com>`
 diff --git a/docs/source/markdown/podman-pod-create.1.md.in b/docs/source/markdown/podman-pod-create.1.md.in
-index 702780c65..609a5aee5 100644
+index fdae1d249..104ad460b 100644
 --- a/docs/source/markdown/podman-pod-create.1.md.in
 +++ b/docs/source/markdown/podman-pod-create.1.md.in
-@@ -181,10 +181,15 @@ Valid _mode_ values are:
+@@ -131,10 +131,15 @@ Valid _mode_ values are:
    - **interface_name**: Specify a name for the created network interface inside the container.
  
    For example to set a static ipv4 address and a static mac address, use `--network bridge:ip=10.88.0.10,mac=44:33:22:11:00:99`.
@@ -159,7 +160,7 @@ index 702780c65..609a5aee5 100644
  - **ns:**_path_: Path to a network namespace to join.
  - **private**: Create a new namespace for the container. This will use the **bridge** mode for rootful containers and **slirp4netns** for rootless ones.
  - **slirp4netns[:OPTIONS,...]**: use **slirp4netns**(1) to create a user network stack. This is the default for rootless containers. It is possible to specify these additional options, they can also be set with `network_cmd_options` in containers.conf:
-@@ -200,6 +205,43 @@ Valid _mode_ values are:
+@@ -150,6 +155,43 @@ Valid _mode_ values are:
    Note: Rootlesskit changes the source IP address of incoming packets to an IP address in the container network namespace, usually `10.0.2.100`. If your application requires the real source IP address, e.g. web server logs, use the slirp4netns port handler. The rootlesskit port handler is also used for rootless containers when connected to user-defined networks.
    - **port_handler=slirp4netns**: Use the slirp4netns port forwarding, it is slower than rootlesskit but preserves the correct source IP address. This port handler cannot be used for user-defined networks.
  
@@ -203,7 +204,7 @@ index 702780c65..609a5aee5 100644
  @@option network-alias
  
  @@option no-hosts
-@@ -561,6 +603,8 @@ $ podman pod create --network slirp4netns:outbound_addr=127.0.0.1,allow_host_loo
+@@ -248,6 +290,8 @@ $ podman pod create --network slirp4netns:outbound_addr=127.0.0.1,allow_host_loo
  
  $ podman pod create --network slirp4netns:cidr=192.168.0.0/24
  
@@ -213,10 +214,10 @@ index 702780c65..609a5aee5 100644
  ```
  
 diff --git a/docs/source/markdown/podman-run.1.md.in b/docs/source/markdown/podman-run.1.md.in
-index 6798c65da..06dfa0745 100644
+index 2109a0e33..a9b212e81 100644
 --- a/docs/source/markdown/podman-run.1.md.in
 +++ b/docs/source/markdown/podman-run.1.md.in
-@@ -409,10 +409,15 @@ Valid _mode_ values are:
+@@ -298,10 +298,15 @@ Valid _mode_ values are:
    - **interface_name**: Specify a name for the created network interface inside the container.
  
    For example to set a static ipv4 address and a static mac address, use `--network bridge:ip=10.88.0.10,mac=44:33:22:11:00:99`.
@@ -232,7 +233,7 @@ index 6798c65da..06dfa0745 100644
  - **ns:**_path_: Path to a network namespace to join.
  - **private**: Create a new namespace for the container. This will use the **bridge** mode for rootful containers and **slirp4netns** for rootless ones.
  - **slirp4netns[:OPTIONS,...]**: use **slirp4netns**(1) to create a user network stack. This is the default for rootless containers. It is possible to specify these additional options, they can also be set with `network_cmd_options` in containers.conf:
-@@ -428,6 +433,43 @@ Valid _mode_ values are:
+@@ -317,6 +322,43 @@ Valid _mode_ values are:
    Note: Rootlesskit changes the source IP address of incoming packets to an IP address in the container network namespace, usually `10.0.2.100`. If your application requires the real source IP address, e.g. web server logs, use the slirp4netns port handler. The rootlesskit port handler is also used for rootless containers when connected to user-defined networks.
    - **port_handler=slirp4netns**: Use the slirp4netns port forwarding, it is slower than rootlesskit but preserves the correct source IP address. This port handler cannot be used for user-defined networks.
  
@@ -276,7 +277,7 @@ index 6798c65da..06dfa0745 100644
  @@option network-alias
  
  @@option no-healthcheck
-@@ -1383,8 +1425,9 @@ In order for users to run rootless, there must be an entry for their username in
+@@ -900,8 +942,9 @@ In order for users to run rootless, there must be an entry for their username in
  
  Rootless Podman works better if the fuse-overlayfs and slirp4netns packages are installed.
  The **fuse-overlayfs** package provides a userspace overlay storage driver, otherwise users need to use
@@ -288,7 +289,7 @@ index 6798c65da..06dfa0745 100644
  
  ## ENVIRONMENT
  
-@@ -1431,7 +1474,7 @@ page.
+@@ -948,7 +991,7 @@ page.
  NOTE: Use the environment variable `TMPDIR` to change the temporary storage location of downloaded container images. Podman defaults to use `/var/tmp`.
  
  ## SEE ALSO
@@ -298,7 +299,7 @@ index 6798c65da..06dfa0745 100644
  ## HISTORY
  September 2018, updated by Kunal Kushwaha `<kushwaha_kunal_v7(a)lab.ntt.co.jp>`
 diff --git a/docs/source/markdown/podman.1.md b/docs/source/markdown/podman.1.md
-index d1192b6d2..a79a56253 100644
+index 7a8dd7043..a54288bb0 100644
 --- a/docs/source/markdown/podman.1.md
 +++ b/docs/source/markdown/podman.1.md
 @@ -88,7 +88,7 @@ Set libpod namespace. Namespaces are used to separate groups of containers and p
@@ -310,7 +311,7 @@ index d1192b6d2..a79a56253 100644
  
  #### **--network-config-dir**=*directory*
  
-@@ -421,7 +421,7 @@ See the `subuid(5)` and `subgid(5)` man pages for more information.
+@@ -422,7 +422,7 @@ See the `subuid(5)` and `subgid(5)` man pages for more information.
  
  Images are pulled under `XDG_DATA_HOME` when specified, otherwise in the home directory of the user under `.local/share/containers/storage`.
  
@@ -319,7 +320,7 @@ index d1192b6d2..a79a56253 100644
  
  In certain environments like HPC (High Performance Computing), users cannot take advantage of the additional UIDs and GIDs from the /etc/subuid and /etc/subgid systems.  However, in this environment, rootless Podman can operate with a single UID.  To make this work, set the `ignore_chown_errors` option in the /etc/containers/storage.conf or in ~/.config/containers/storage.conf files. This option tells Podman when pulling an image to ignore chown errors when attempting to change a file in a container image to match the non-root UID in the image. This means all files get saved as the user's UID. Note this could cause issues when running the container.
  
-@@ -434,7 +434,7 @@ The Network File System (NFS) and other distributed file systems (for example: L
+@@ -435,7 +435,7 @@ The Network File System (NFS) and other distributed file systems (for example: L
  For more information, please refer to the [Podman Troubleshooting Page](https://github.com/containers/podman/blob/main/troubleshooting.md).
  
  ## SEE ALSO
@@ -328,11 +329,25 @@ index d1192b6d2..a79a56253 100644
  
  ## HISTORY
  Dec 2016, Originally compiled by Dan Walsh <dwalsh(a)redhat.com>
+diff --git a/libpod/networking_common.go b/libpod/networking_common.go
+index fa444e26a..2590a4477 100644
+--- a/libpod/networking_common.go
++++ b/libpod/networking_common.go
+@@ -133,7 +133,8 @@ func (r *Runtime) teardownCNI(ctr *Container) error {
+ 		return err
+ 	}
+ 
+-	if !ctr.config.NetMode.IsSlirp4netns() && len(networks) > 0 {
++	if !ctr.config.NetMode.IsSlirp4netns() &&
++	   !ctr.config.NetMode.IsPasta() && len(networks) > 0 {
+ 		netOpts := ctr.getNetworkOptions(networks)
+ 		return r.teardownNetwork(ctr.state.NetNS.Path(), netOpts)
+ 	}
 diff --git a/libpod/networking_linux.go b/libpod/networking_linux.go
-index c10c3c0b2..0f0c1213c 100644
+index 6ea56ade5..822004a7c 100644
 --- a/libpod/networking_linux.go
 +++ b/libpod/networking_linux.go
-@@ -640,6 +640,9 @@ func (r *Runtime) configureNetNS(ctr *Container, ctrNS ns.NetNS) (status map[str
+@@ -563,6 +563,9 @@ func (r *Runtime) configureNetNS(ctr *Container, ctrNS ns.NetNS) (status map[str
  	if ctr.config.NetMode.IsSlirp4netns() {
  		return nil, r.setupSlirp4netns(ctr, ctrNS)
  	}
@@ -342,16 +357,6 @@ index c10c3c0b2..0f0c1213c 100644
  	networks, err := ctr.networks()
  	if err != nil {
  		return nil, err
-@@ -809,7 +812,8 @@ func (r *Runtime) teardownCNI(ctr *Container) error {
- 		return err
- 	}
- 
--	if !ctr.config.NetMode.IsSlirp4netns() && len(networks) > 0 {
-+	if !ctr.config.NetMode.IsSlirp4netns() &&
-+	   !ctr.config.NetMode.IsPasta() && len(networks) > 0 {
- 		netOpts := ctr.getNetworkOptions(networks)
- 		return r.teardownNetwork(ctr.state.NetNS.Path(), netOpts)
- 	}
 diff --git a/libpod/networking_pasta.go b/libpod/networking_pasta.go
 new file mode 100644
 index 000000000..f179c803a
@@ -466,7 +471,7 @@ index 000000000..f179c803a
 +	return nil
 +}
 diff --git a/pkg/namespaces/namespaces.go b/pkg/namespaces/namespaces.go
-index 8eacb8da7..49a6d3786 100644
+index 6dd576ea5..85903e7a9 100644
 --- a/pkg/namespaces/namespaces.go
 +++ b/pkg/namespaces/namespaces.go
 @@ -19,6 +19,7 @@ const (
@@ -476,8 +481,8 @@ index 8eacb8da7..49a6d3786 100644
 +	pastaType     = "pasta"
  )
  
- // CgroupMode represents cgroup mode in the container.
-@@ -393,6 +394,11 @@ func (n NetworkMode) IsSlirp4netns() bool {
+ // KeepIDUserNsOptions defines how to keepIDmatically create a user namespace.
+@@ -440,6 +441,11 @@ func (n NetworkMode) IsSlirp4netns() bool {
  	return n == slirpType || strings.HasPrefix(string(n), slirpType+":")
  }
  
@@ -490,10 +495,10 @@ index 8eacb8da7..49a6d3786 100644
  func (n NetworkMode) IsNS() bool {
  	return strings.HasPrefix(string(n), nsType)
 diff --git a/pkg/specgen/generate/namespaces.go b/pkg/specgen/generate/namespaces.go
-index f0d4e9153..2c4b40509 100644
+index 9497894f3..11a30e545 100644
 --- a/pkg/specgen/generate/namespaces.go
 +++ b/pkg/specgen/generate/namespaces.go
-@@ -295,6 +295,16 @@ func namespaceOptions(s *specgen.SpecGenerator, rt *libpod.Runtime, pod *libpod.
+@@ -300,6 +300,16 @@ func namespaceOptions(s *specgen.SpecGenerator, rt *libpod.Runtime, pod *libpod.
  			val = fmt.Sprintf("slirp4netns:%s", s.NetNS.Value)
  		}
  		toReturn = append(toReturn, libpod.WithNetNS(portMappings, expose, postConfigureNetNS, val, nil))
@@ -511,10 +516,10 @@ index f0d4e9153..2c4b40509 100644
  		portMappings, expose, err := createPortMappings(s, imageData)
  		if err != nil {
 diff --git a/pkg/specgen/generate/pod_create.go b/pkg/specgen/generate/pod_create.go
-index d6063b9a0..be94fb251 100644
+index 14d390e49..ad91353cb 100644
 --- a/pkg/specgen/generate/pod_create.go
 +++ b/pkg/specgen/generate/pod_create.go
-@@ -201,6 +201,12 @@ func MapSpec(p *specgen.PodSpecGenerator) (*specgen.SpecGenerator, error) {
+@@ -195,6 +195,12 @@ func MapSpec(p *specgen.PodSpecGenerator) (*specgen.SpecGenerator, error) {
  			p.InfraContainerSpec.NetworkOptions = p.NetworkOptions
  			p.InfraContainerSpec.NetNS.NSMode = specgen.Slirp
  		}
@@ -528,10 +533,10 @@ index d6063b9a0..be94fb251 100644
  		logrus.Debugf("Pod will not use networking")
  		if len(p.InfraContainerSpec.PortMappings) > 0 ||
 diff --git a/pkg/specgen/namespaces.go b/pkg/specgen/namespaces.go
-index 03a2049f6..baa113570 100644
+index b6bbee868..5c4cb97c2 100644
 --- a/pkg/specgen/namespaces.go
 +++ b/pkg/specgen/namespaces.go
-@@ -51,6 +51,9 @@ const (
+@@ -52,6 +52,9 @@ const (
  	// be used.
  	// Only used with the network namespace, invalid otherwise.
  	Slirp NamespaceMode = "slirp4netns"
@@ -541,7 +546,7 @@ index 03a2049f6..baa113570 100644
  	// KeepId indicates a user namespace to keep the owner uid inside
  	// of the namespace itself.
  	// Only used with the user namespace, invalid otherwise.
-@@ -153,7 +156,7 @@ func validateNetNS(n *Namespace) error {
+@@ -154,7 +157,7 @@ func validateNetNS(n *Namespace) error {
  		return nil
  	}
  	switch n.NSMode {
@@ -550,7 +555,7 @@ index 03a2049f6..baa113570 100644
  		break
  	case "", Default, Host, Path, FromContainer, FromPod, Private, NoNetwork, Bridge:
  		break
-@@ -196,7 +199,7 @@ func (n *Namespace) validate() error {
+@@ -197,7 +200,7 @@ func (n *Namespace) validate() error {
  	switch n.NSMode {
  	case "", Default, Host, Path, FromContainer, FromPod, Private:
  		// Valid, do nothing
@@ -559,7 +564,7 @@ index 03a2049f6..baa113570 100644
  		return errors.New("cannot use network modes with non-network namespace")
  	default:
  		return fmt.Errorf("invalid namespace type %s specified", n.NSMode)
-@@ -340,6 +343,13 @@ func ParseNetworkFlag(networks []string) (Namespace, map[string]types.PerNetwork
+@@ -349,6 +352,13 @@ func ParseNetworkFlag(networks []string) (Namespace, map[string]types.PerNetwork
  			networkOptions[parts[0]] = strings.Split(parts[1], ",")
  		}
  		toReturn.NSMode = Slirp
@@ -573,7 +578,7 @@ index 03a2049f6..baa113570 100644
  	case ns == string(FromPod):
  		toReturn.NSMode = FromPod
  	case ns == "" || ns == string(Default) || ns == string(Private):
-@@ -410,7 +420,7 @@ func ParseNetworkFlag(networks []string) (Namespace, map[string]types.PerNetwork
+@@ -419,7 +429,7 @@ func ParseNetworkFlag(networks []string) (Namespace, map[string]types.PerNetwork
  			if parts[0] == "" {
  				return toReturn, nil, nil, fmt.Errorf("network name cannot be empty: %w", define.ErrInvalidArg)
  			}
-- 
2.35.1


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

* [PATCH 02/11] hooks/pre_push: Fix upload of CI's logs and terminal capture file
  2022-09-23 22:42 [PATCH 00/11] Fixes for demos, pre-push hook, README Stefano Brivio
  2022-09-23 22:42 ` [PATCH 01/11] contrib/podman: Rebase to latest upstream Stefano Brivio
@ 2022-09-23 22:42 ` Stefano Brivio
  2022-09-23 22:42 ` [PATCH 03/11] test/demo: Use relative paths to change directories when possible Stefano Brivio
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Stefano Brivio @ 2022-09-23 22:42 UTC (permalink / raw)
  To: passt-dev

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

The test_logs directory contains a directory: fix the wildcard so
that scp doesn't fail.

Terminal capture files are now deleted every time we re-run the
demo script: upload CI's .cast file before it's gone.

Signed-off-by: Stefano Brivio <sbrivio(a)redhat.com>
---
 hooks/pre-push | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/hooks/pre-push b/hooks/pre-push
index 567a3e5..ebca1f6 100755
--- a/hooks/pre-push
+++ b/hooks/pre-push
@@ -34,11 +34,14 @@ ssh "${USER_HOST}" 				"mkdir -p ${WEB} ${TEST} ${BIN}"
 cd test
 
 ./ci
-gzip -fk9 test_logs/web/perf.js
-scp test_logs/web/perf.js test_logs/web/perf.js.gz "${USER_HOST}:${WEB}/"
-scp test_logs/* 				"${USER_HOST}:${TEST}/"
-./run_demo
+scp test_logs/*.log 				"${USER_HOST}:${TEST}/"
+for f in test_logs/web/*.cast test_logs/web/*.js; do
+	gzip -fk9 "${f}"
+	scp "${f}"			 	"${USER_HOST}:${WEB}/"
+	scp "${f}.gz"			 	"${USER_HOST}:${WEB}/"
+done
 
+./run_demo
 for f in test_logs/web/*.cast test_logs/web/*.js; do
 	gzip -fk9 "${f}"
 	scp "${f}"			 	"${USER_HOST}:${WEB}/"
-- 
@@ -34,11 +34,14 @@ ssh "${USER_HOST}" 				"mkdir -p ${WEB} ${TEST} ${BIN}"
 cd test
 
 ./ci
-gzip -fk9 test_logs/web/perf.js
-scp test_logs/web/perf.js test_logs/web/perf.js.gz "${USER_HOST}:${WEB}/"
-scp test_logs/* 				"${USER_HOST}:${TEST}/"
-./run_demo
+scp test_logs/*.log 				"${USER_HOST}:${TEST}/"
+for f in test_logs/web/*.cast test_logs/web/*.js; do
+	gzip -fk9 "${f}"
+	scp "${f}"			 	"${USER_HOST}:${WEB}/"
+	scp "${f}.gz"			 	"${USER_HOST}:${WEB}/"
+done
 
+./run_demo
 for f in test_logs/web/*.cast test_logs/web/*.js; do
 	gzip -fk9 "${f}"
 	scp "${f}"			 	"${USER_HOST}:${WEB}/"
-- 
2.35.1


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

* [PATCH 03/11] test/demo: Use relative paths to change directories when possible
  2022-09-23 22:42 [PATCH 00/11] Fixes for demos, pre-push hook, README Stefano Brivio
  2022-09-23 22:42 ` [PATCH 01/11] contrib/podman: Rebase to latest upstream Stefano Brivio
  2022-09-23 22:42 ` [PATCH 02/11] hooks/pre_push: Fix upload of CI's logs and terminal capture file Stefano Brivio
@ 2022-09-23 22:42 ` Stefano Brivio
  2022-09-23 22:42 ` [PATCH 04/11] test/demo: Avoid using port 5201 on the host Stefano Brivio
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Stefano Brivio @ 2022-09-23 22:42 UTC (permalink / raw)
  To: passt-dev

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

A cd to __STATEDIR__ results in a rather long command, that's not
very readable. Jump between directories using .. and relative paths,
once we're there.

Signed-off-by: Stefano Brivio <sbrivio(a)redhat.com>
---
 test/demo/passt | 7 +++----
 test/demo/pasta | 4 ++--
 2 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/test/demo/passt b/test/demo/passt
index eb9b856..36796f7 100644
--- a/test/demo/passt
+++ b/test/demo/passt
@@ -53,8 +53,7 @@ nl
 say	Let's create a small initramfs image for the guest.
 guest	cd __STATEDIR__
 guest	git clone git://mbuto.sh/mbuto
-guest	cd mbuto
-guest	./mbuto -f passt.img -p __STATEDIR__/passt/test/passt.mbuto -c lz4
+guest	./mbuto/mbuto -f passt.img -p passt/test/passt.mbuto -c lz4
 sleep	2
 
 nl
@@ -82,7 +81,7 @@ say	Now let's run 'passt' in the new namespace, and
 nl
 say	  enter this namespace from the guest terminal too.
 sleep	3
-guest	cd __STATEDIR__/passt
+guest	cd passt
 gout	TARGET_PID pgrep -P $(cat pasta.pid)
 sleep	1
 
@@ -101,7 +100,7 @@ nl
 say	  back-end to passt's UNIX domain socket.
 sleep	2
 hout	VMLINUZ echo "/boot/vmlinuz-$(uname -r)"
-guest	../passt/qrap 5 qemu-system-x86_64 -enable-kvm -m 4096 -cpu host -smp 4 -kernel __VMLINUZ__ -initrd passt.img -nographic -serial stdio -nodefaults -append "console=ttyS0 virtio-net.napi_tx=1" -device virtio-net-pci,netdev=hostnet0,x-txburst=16384 -netdev socket,fd=5,id=hostnet0
+guest	./qrap 5 qemu-system-x86_64 -enable-kvm -m 4096 -cpu host -smp 4 -kernel __VMLINUZ__ -initrd ../passt.img -nographic -serial stdio -nodefaults -append "console=ttyS0 virtio-net.napi_tx=1" -device virtio-net-pci,netdev=hostnet0,x-txburst=16384 -netdev socket,fd=5,id=hostnet0
 sleep	10
 
 nl
diff --git a/test/demo/pasta b/test/demo/pasta
index 02a2ba2..11e4d3c 100644
--- a/test/demo/pasta
+++ b/test/demo/pasta
@@ -140,12 +140,12 @@ say	 can also take packet captures.
 sleep	3
 passt	exit
 sleep	2
-passtb	./pasta -p __STATEDIR__/demo_pasta.pcap
+passtb	./pasta -p ../demo_pasta.pcap
 sleep	2
 passt	
 passt	/sbin/dhclient -4 --no-pid
 sleep	2
-hostb	tshark -r __STATEDIR__/demo_pasta.pcap
+hostb	tshark -r ../demo_pasta.pcap
 sleep	5
 
 nl
-- 
@@ -140,12 +140,12 @@ say	 can also take packet captures.
 sleep	3
 passt	exit
 sleep	2
-passtb	./pasta -p __STATEDIR__/demo_pasta.pcap
+passtb	./pasta -p ../demo_pasta.pcap
 sleep	2
 passt	
 passt	/sbin/dhclient -4 --no-pid
 sleep	2
-hostb	tshark -r __STATEDIR__/demo_pasta.pcap
+hostb	tshark -r ../demo_pasta.pcap
 sleep	5
 
 nl
-- 
2.35.1


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

* [PATCH 04/11] test/demo: Avoid using port 5201 on the host
  2022-09-23 22:42 [PATCH 00/11] Fixes for demos, pre-push hook, README Stefano Brivio
                   ` (2 preceding siblings ...)
  2022-09-23 22:42 ` [PATCH 03/11] test/demo: Use relative paths to change directories when possible Stefano Brivio
@ 2022-09-23 22:42 ` Stefano Brivio
  2022-09-23 22:42 ` [PATCH 05/11] test/lib: Drop perf_report_append() from perf_report Stefano Brivio
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Stefano Brivio @ 2022-09-23 22:42 UTC (permalink / raw)
  To: passt-dev

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

That's the default port for iperf3, which also means that it's quite
likely in use on my test machine. Use different port numbers: recycle
the scheme we use in tests for passt and pasta's demo, use 5221-5224
(a bit shorter) for the slirp4netns container in Podman's demo.

Signed-off-by: Stefano Brivio <sbrivio(a)redhat.com>
---
 test/demo/passt  |  38 +++++-----
 test/demo/pasta  |  16 ++---
 test/demo/podman | 176 +++++++++++++++++++++++------------------------
 3 files changed, 115 insertions(+), 115 deletions(-)

diff --git a/test/demo/passt b/test/demo/passt
index 36796f7..ce40e20 100644
--- a/test/demo/passt
+++ b/test/demo/passt
@@ -85,7 +85,7 @@ guest	cd passt
 gout	TARGET_PID pgrep -P $(cat pasta.pid)
 sleep	1
 
-passtb	./passt -f -t 5201,5203
+passtb	./passt -f -t 10001,10003
 sleep	2
 
 guest	nsenter -t __TARGET_PID__ -U -n --preserve-credentials
@@ -128,9 +128,9 @@ nl
 nl
 say	Let's try to communicate between host and guest.
 sleep	2
-guestb	socat TCP6-LISTEN:5201 STDIO
+guestb	socat TCP6-LISTEN:10001 STDIO
 sleep	2
-host	echo "Hello from the host" | socat -u STDIN TCP6:[::1]:5201
+host	echo "Hello from the host" | socat -u STDIN TCP6:[::1]:10001
 sleep	5
 
 nl
@@ -177,18 +177,18 @@ th	flow host>guest guest>host
 set	OPTS -P4 -w 64M -l 1M -i1 --pacing-timer 100000
 
 tr	TCP/IPv6 throughput
-hostb	sleep 10; iperf3 -c ::1 __OPTS__
-gout	BW iperf3 -s1J | jq -rM ".end.sum_received.bits_per_second"
+hostb	sleep 10; iperf3 -c ::1 -p 10001 __OPTS__
+gout	BW iperf3 -s1J -p 10001 | jq -rM ".end.sum_received.bits_per_second"
 bw	__BW__ 2.0 3.0
 sleep	5
-guestb	sleep 10; iperf3 -c __GW6__%__IFNAME__ -p 5202 __OPTS__ -O3
-hout	BW iperf3 -s1J -p 5202 | jq -rM ".end.sum_received.bits_per_second"
+guestb	sleep 10; iperf3 -c __GW6__%__IFNAME__ -p 10002 __OPTS__ -O3
+hout	BW iperf3 -s1J -p 10002 | jq -rM ".end.sum_received.bits_per_second"
 bw	__BW__ 2.0 3.0
 
 tl	TCP/IPv6 RR latency
-guestb	tcp_rr -C 5201 -P 5203 -6 --nolog
+guestb	tcp_rr -C 10001 -P 10003 -6 --nolog
 sleep	2
-hout	LAT tcp_rr -C 5201 -P 5203 --nolog -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr -C 10001 -P 10003 --nolog -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 1000 800
 sleep	2
 hostb	tcp_rr -6 --nolog
@@ -198,9 +198,9 @@ lat	__LAT__ 1000 800
 sleep	2
 
 tl	TCP/IPv6 CRR latency
-guestb	tcp_crr -C 5201 -P 5203 -6 --nolog
+guestb	tcp_crr -C 10001 -P 10003 -6 --nolog
 sleep	2
-hout	LAT tcp_crr -C 5201 -P 5203 --nolog -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr -C 10001 -P 10003 --nolog -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 1000 800
 sleep	2
 hostb	tcp_crr -6 --nolog
@@ -210,18 +210,18 @@ lat	__LAT__ 1000 800
 sleep	2
 
 tr	TCP/IPv4 throughput
-hostb	sleep 10; iperf3 -c 127.0.0.1 __OPTS__
-gout	BW iperf3 -s1J | jq -rM ".end.sum_received.bits_per_second"
+hostb	sleep 10; iperf3 -c 127.0.0.1 -p 10001 __OPTS__
+gout	BW iperf3 -p 10001 -s1J | jq -rM ".end.sum_received.bits_per_second"
 bw	__BW__ 2.0 3.0
 sleep	5
-guestb	sleep 10; iperf3 -c __GW__ -p 5202 __OPTS__ -O3
-hout	BW iperf3 -s1J -p 5202 | jq -rM ".end.sum_received.bits_per_second"
+guestb	sleep 10; iperf3 -c __GW__ -p 10002 __OPTS__ -O3
+hout	BW iperf3 -s1J -p 10002 | jq -rM ".end.sum_received.bits_per_second"
 bw	__BW__ 2.0 3.0
 
 tl	TCP/IPv4 RR latency
-guestb	tcp_rr -C 5201 -P 5203 -4 --nolog
+guestb	tcp_rr -C 10001 -P 10003 -4 --nolog
 sleep	2
-hout	LAT tcp_rr -C 5201 -P 5203 --nolog -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr -C 10001 -P 10003 --nolog -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 1000 800
 sleep	2
 hostb	tcp_rr -4 --nolog
@@ -231,9 +231,9 @@ lat	__LAT__ 1000 800
 sleep	2
 
 tl	TCP/IPv4 CRR latency
-guestb	tcp_crr -C 5201 -P 5203 -4 --nolog
+guestb	tcp_crr -C 10001 -P 10003 -4 --nolog
 sleep	2
-hout	LAT tcp_crr -C 5201 -P 5203 --nolog -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr -C 10001 -P 10003 --nolog -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 1000 800
 sleep	2
 hostb	tcp_crr -4 --nolog
diff --git a/test/demo/pasta b/test/demo/pasta
index 11e4d3c..ee046d0 100644
--- a/test/demo/pasta
+++ b/test/demo/pasta
@@ -185,12 +185,12 @@ th	flow init>ns ns>init
 set	OPTS -P4 -l 1M -w 32M -i1 --pacing-timer 100000
 
 tr	TCP/IPv6 throughput
-hostb	sleep 10; iperf3 -c ::1 __OPTS__
-nsout	BW iperf3 -s1J | jq -rM ".end.sum_received.bits_per_second"
+hostb	sleep 10; iperf3 -c ::1 -p 10001 __OPTS__
+nsout	BW iperf3 -s1J -p 10001 | jq -rM ".end.sum_received.bits_per_second"
 bw	__BW__ 10.0 20.0
 sleep	5
-nsb	sleep 10; iperf3 -c ::1 __OPTS__
-hout	BW iperf3 -s1J | jq -rM ".end.sum_received.bits_per_second"
+nsb	sleep 10; iperf3 -c ::1 -p 10001 __OPTS__
+hout	BW iperf3 -s1J -p 10001 | jq -rM ".end.sum_received.bits_per_second"
 bw	__BW__ 10.0 20.0
 
 tl	TCP/IPv6 RR latency
@@ -218,12 +218,12 @@ lat	__LAT__ 1000 500
 sleep	2
 
 tr	TCP/IPv4 throughput
-hostb	sleep 10; iperf3 -c 127.0.0.1 __OPTS__
-nsout	BW iperf3 -s1J | jq -rM ".end.sum_received.bits_per_second"
+hostb	sleep 10; iperf3 -c 127.0.0.1 -p 10001 __OPTS__
+nsout	BW iperf3 -s1J -p 10001 | jq -rM ".end.sum_received.bits_per_second"
 bw	__BW__ 10.0 20.0
 sleep	5
-nsb	sleep 10; iperf3 -c 127.0.0.1 __OPTS__
-hout	BW iperf3 -s1J | jq -rM ".end.sum_received.bits_per_second"
+nsb	sleep 10; iperf3 -c 127.0.0.1 -p 10001 __OPTS__
+hout	BW iperf3 -s1J -p 10001 | jq -rM ".end.sum_received.bits_per_second"
 bw	__BW__ 10.0 20.0
 
 tl	TCP/IPv4 RR latency
diff --git a/test/demo/podman b/test/demo/podman
index a83a04f..c5bc05a 100644
--- a/test/demo/podman
+++ b/test/demo/podman
@@ -190,7 +190,7 @@ sleep	3
 
 ns1	exit
 
-ns1b	podman run --rm --net=slirp4netns:allow_host_loopback=true,enable_ipv6=true -p 5201-5202:5201-5202/tcp -p 5201-5202:5201-5202/udp -ti alpine sh
+ns1b	podman run --rm --net=slirp4netns:allow_host_loopback=true,enable_ipv6=true -p 5221-5222:5221-5222/tcp -p 5221-5222:5221-5222/udp -ti alpine sh
 sleep	5
 nl
 nl
@@ -236,7 +236,7 @@ nl
 sleep	2
 ns2b	exit
 sleep	1
-ns2b	./bin/podman run --net=pasta:-T,5213-5214,-U,5213-5214 -p 5203-5204:5203-5204/tcp -p 5203-5204:5203-5204/udp --rm -ti alpine sh
+ns2b	./bin/podman run --net=pasta:-T,5213-5214,-U,5213-5214 -p 5223-5224:5223-5224/tcp -p 5223-5224:5223-5224/udp --rm -ti alpine sh
 sleep	5
 
 nl
@@ -282,7 +282,7 @@ say	port forwarder (on the path to the container).
 
 sleep	5
 ns1	exit
-ns1b	podman run --rm --net=slirp4netns:allow_host_loopback=true,enable_ipv6=true,port_handler=slirp4netns -p 5201-5202:5201-5202/tcp -p 5201-5202:5201-5202/udp -ti alpine sh
+ns1b	podman run --rm --net=slirp4netns:allow_host_loopback=true,enable_ipv6=true,port_handler=slirp4netns -p 5221-5222:5221-5222/tcp -p 5221-5222:5221-5222/udp -ti alpine sh
 sleep	3
 
 nl
@@ -323,13 +323,13 @@ info	  non-loopback (tap) connections
 th	mode slirp4netns pasta
 
 tr	TCP/IPv6 to ns
-#ns1b	iperf3 -s1J -p 5201 | jq -rM ".end.sum_received.bits_per_second" >t1
-#hostb	iperf3 -c __ADDR6__ -p 5201 __OPTS__
+#ns1b	iperf3 -s1J -p 5221 | jq -rM ".end.sum_received.bits_per_second" >t1
+#hostb	iperf3 -c __ADDR6__ -p 5221 __OPTS__
 #ns1out	BW cat t1
 #bw	__BW__ 0.0 0.0
 bw	-
-ns2b	iperf3 -s1J -p 5203 | jq -rM ".end.sum_received.bits_per_second" >t1
-hostb	iperf3 -c __ADDR6__ -p 5203 __OPTS__
+ns2b	iperf3 -s1J -p 5223 | jq -rM ".end.sum_received.bits_per_second" >t1
+hostb	iperf3 -c __ADDR6__ -p 5223 __OPTS__
 sleep	12
 ns2b	
 ns2out	BW cat t1
@@ -337,36 +337,36 @@ bw	__BW__ 0.0 0.0
 hostb	
 
 tl	  RR latency
-#ns1b	./tcp_rr -6 --nolog -C 5201 -P 5202
+#ns1b	./tcp_rr -6 --nolog -C 5221 -P 5222
 #sleep	2
-#hout	LAT tcp_rr --nolog -c -H __ADDR6__ -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+#hout	LAT tcp_rr --nolog -c -H __ADDR6__ -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 #lat	__LAT__ 100000 100000
 lat	-
-ns2b	./tcp_rr -6 --nolog -C 5203 -P 5204
+ns2b	./tcp_rr -6 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT tcp_rr --nolog -c -H __ADDR6__ -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -c -H __ADDR6__ -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tl	  CRR latency
-#ns1b	./tcp_crr -6 --nolog -C 5201 -P 5202
+#ns1b	./tcp_crr -6 --nolog -C 5221 -P 5222
 #sleep	2
-#hout	LAT tcp_crr --nolog -c -H __ADDR6__ -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+#hout	LAT tcp_crr --nolog -c -H __ADDR6__ -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 #lat	__LAT__ 100000 100000
 lat	-
-ns2b	./tcp_crr -6 --nolog -C 5203 -P 5204
+ns2b	./tcp_crr -6 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT tcp_crr --nolog -c -H __ADDR6__ -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -c -H __ADDR6__ -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tl	TCP/IPv4 to ns
-ns1b	iperf3 -s1J -p 5201 | jq -rM ".end.sum_received.bits_per_second" >t1
-hostb	iperf3 -c __ADDR4__ -p 5201 __OPTS__
+ns1b	iperf3 -s1J -p 5221 | jq -rM ".end.sum_received.bits_per_second" >t1
+hostb	iperf3 -c __ADDR4__ -p 5221 __OPTS__
 sleep	12
 ns1b	
 ns1out	BW cat t1
 bw	__BW__ 0.0 0.0
-ns2b	iperf3 -s1J -p 5203 | jq -rM ".end.sum_received.bits_per_second" >t1
-hostb	iperf3 -c __ADDR4__ -p 5203 __OPTS__
+ns2b	iperf3 -s1J -p 5223 | jq -rM ".end.sum_received.bits_per_second" >t1
+hostb	iperf3 -c __ADDR4__ -p 5223 __OPTS__
 sleep	12
 ns2b	
 ns2out	BW cat t1
@@ -374,23 +374,23 @@ bw	__BW__ 0.0 0.0
 hostb	
 
 tl	  RR latency
-ns1b	./tcp_rr -4 --nolog -C 5201 -P 5202
+ns1b	./tcp_rr -4 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT tcp_rr --nolog -c -H __ADDR4__ -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -c -H __ADDR4__ -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./tcp_rr -4 --nolog -C 5203 -P 5204
+ns2b	./tcp_rr -4 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT tcp_rr --nolog -c -H __ADDR4__ -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -c -H __ADDR4__ -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tl	  CRR latency
-ns1b	./tcp_crr -4 --nolog -C 5201 -P 5202
+ns1b	./tcp_crr -4 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT tcp_crr --nolog -c -H __ADDR4__ -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -c -H __ADDR4__ -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./tcp_crr -4 --nolog -C 5203 -P 5204
+ns2b	./tcp_crr -4 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT tcp_crr --nolog -c -H __ADDR4__ -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -c -H __ADDR4__ -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tr	TCP/IPv6 to host
@@ -469,49 +469,49 @@ sleep	5
 
 
 tr	UDP/IPv6 to ns
-#ns1b	iperf3 -s1J -p 5201 | jq -rM ".intervals[0].sum.bits_per_second" >t1
-#hostb	iperf3 -u -c __ADDR6__ -p 5201 -t5 -b 35G
+#ns1b	iperf3 -s1J -p 5221 | jq -rM ".intervals[0].sum.bits_per_second" >t1
+#hostb	iperf3 -u -c __ADDR6__ -p 5221 -t5 -b 35G
 #sleep	10
 #ns1out	BW cat t1
 #bw	__BW__ 0.0 0.0
 bw	-
-ns2b	iperf3 -s1J -p 5204 | jq -rM ".intervals[0].sum.bits_per_second" >t1
-hostb	iperf3 -u -c __ADDR6__ -p 5204 -t5 -b 35G
+ns2b	iperf3 -s1J -p 5224 | jq -rM ".intervals[0].sum.bits_per_second" >t1
+hostb	iperf3 -u -c __ADDR6__ -p 5224 -t5 -b 35G
 sleep	10
 ns2out	BW cat t1
 bw	__BW__ 0.0 0.0
 
 tl	  RR latency
-#ns1b	./udp_rr -6 --nolog -C 5201 -P 5202
+#ns1b	./udp_rr -6 --nolog -C 5221 -P 5222
 #sleep	2
-#hout	LAT udp_rr --nolog -c -H __ADDR6__ -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+#hout	LAT udp_rr --nolog -c -H __ADDR6__ -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 #lat	__LAT__ 100000 100000
 lat	-
-ns2b	./udp_rr -6 --nolog -C 5203 -P 5204
+ns2b	./udp_rr -6 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT udp_rr --nolog -c -H __ADDR6__ -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT udp_rr --nolog -c -H __ADDR6__ -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tl	UDP/IPv4 to ns
-ns1b	iperf3 -s1J -p 5201 | jq -rM ".intervals[0].sum.bits_per_second" >t1
-hostb	iperf3 -u -c __ADDR4__ -p 5201 -t5 -b 35G
+ns1b	iperf3 -s1J -p 5221 | jq -rM ".intervals[0].sum.bits_per_second" >t1
+hostb	iperf3 -u -c __ADDR4__ -p 5221 -t5 -b 35G
 sleep	10
 ns1out	BW cat t1
 bw	__BW__ 0.0 0.0
-ns2b	iperf3 -s1J -p 5204 | jq -rM ".intervals[0].sum.bits_per_second" >t1
-hostb	iperf3 -u -c __ADDR4__ -p 5204 -t5 -b 35G
+ns2b	iperf3 -s1J -p 5224 | jq -rM ".intervals[0].sum.bits_per_second" >t1
+hostb	iperf3 -u -c __ADDR4__ -p 5224 -t5 -b 35G
 sleep	10
 ns2out	BW cat t1
 bw	__BW__ 0.0 0.0
 
 tl	  RR latency
-ns1b	./udp_rr -6 --nolog -C 5201 -P 5202
+ns1b	./udp_rr -6 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT udp_rr --nolog -c -H __ADDR4__ -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT udp_rr --nolog -c -H __ADDR4__ -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./udp_rr -6 --nolog -C 5203 -P 5204
+ns2b	./udp_rr -6 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT udp_rr --nolog -c -H __ADDR4__ -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT udp_rr --nolog -c -H __ADDR4__ -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tr	UDP/IPv6 to host
@@ -560,7 +560,7 @@ lat	__LAT__ 100000 100000
 
 
 ns1	exit
-ns1	podman run --rm --net=slirp4netns:allow_host_loopback=true,enable_ipv6=true -p 5201-5202:5201-5202/tcp -p 5201-5202:5201-5202/udp -ti alpine sh
+ns1	podman run --rm --net=slirp4netns:allow_host_loopback=true,enable_ipv6=true -p 5221-5222:5221-5222/tcp -p 5221-5222:5221-5222/udp -ti alpine sh
 ns1	apk add iperf3 jq bc
 ns1	wget lameexcu.se/tcp_rr; chmod 755 tcp_rr
 ns1	wget lameexcu.se/tcp_crr; chmod 755 tcp_crr
@@ -572,16 +572,16 @@ th	mode rootlesskit pasta
 
 
 tr	TCP/IPv6 to ns
-ns1b	(iperf3 -s1J -p 5201 | jq -rM ".end.sum_received.bits_per_second" >t1) &
-ns1b	iperf3 -s1J -p 5202 | jq -rM ".end.sum_received.bits_per_second" >t2
-hostb	iperf3 -c ::1 -p 5201 __OPTS__ & iperf3 -c ::1 -p 5202 __OPTS__
+ns1b	(iperf3 -s1J -p 5221 | jq -rM ".end.sum_received.bits_per_second" >t1) &
+ns1b	iperf3 -s1J -p 5222 | jq -rM ".end.sum_received.bits_per_second" >t2
+hostb	iperf3 -c ::1 -p 5221 __OPTS__ & iperf3 -c ::1 -p 5222 __OPTS__
 sleep	12
 ns1b	
 ns1out	BW echo "$(cat t1) + $(cat t2)" | bc -l
 bw	__BW__ 0.0 0.0
-ns2b	(iperf3 -s1J -p 5203 | jq -rM ".end.sum_received.bits_per_second" >t1) &
-ns2b	iperf3 -s1J -p 5204 | jq -rM ".end.sum_received.bits_per_second" >t2
-hostb	iperf3 -c ::1 -p 5203 __OPTS__ & iperf3 -c ::1 -p 5204 __OPTS__
+ns2b	(iperf3 -s1J -p 5223 | jq -rM ".end.sum_received.bits_per_second" >t1) &
+ns2b	iperf3 -s1J -p 5224 | jq -rM ".end.sum_received.bits_per_second" >t2
+hostb	iperf3 -c ::1 -p 5223 __OPTS__ & iperf3 -c ::1 -p 5224 __OPTS__
 sleep	12
 ns2b	
 ns2out	BW echo "$(cat t1) + $(cat t2)" | bc -l
@@ -589,36 +589,36 @@ bw	__BW__ 0.0 0.0
 hostb	
 
 tl	  RR latency
-ns1b	./tcp_rr -6 --nolog -C 5201 -P 5202
+ns1b	./tcp_rr -6 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT tcp_rr --nolog -c -H ::1 -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -c -H ::1 -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./tcp_rr -6 --nolog -C 5203 -P 5204
+ns2b	./tcp_rr -6 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT tcp_rr --nolog -c -H ::1 -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -c -H ::1 -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tl	  CRR latency
-ns1b	./tcp_crr -6 --nolog -C 5201 -P 5202
+ns1b	./tcp_crr -6 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT tcp_crr --nolog -c -H ::1 -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -c -H ::1 -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./tcp_crr -6 --nolog -C 5203 -P 5204
+ns2b	./tcp_crr -6 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT tcp_crr --nolog -c -H ::1 -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -c -H ::1 -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tl	TCP/IPv4 to ns
-ns1b	(iperf3 -s1J -p 5201 | jq -rM ".end.sum_received.bits_per_second" >t1) &
-ns1b	iperf3 -s1J -p 5202 | jq -rM ".end.sum_received.bits_per_second" >t2
-hostb	iperf3 -c 127.0.0.1 -p 5201 __OPTS__ & iperf3 -c 127.0.0.1 -p 5202 __OPTS__
+ns1b	(iperf3 -s1J -p 5221 | jq -rM ".end.sum_received.bits_per_second" >t1) &
+ns1b	iperf3 -s1J -p 5222 | jq -rM ".end.sum_received.bits_per_second" >t2
+hostb	iperf3 -c 127.0.0.1 -p 5221 __OPTS__ & iperf3 -c 127.0.0.1 -p 5222 __OPTS__
 sleep	12
 ns1b	
 ns1out	BW echo "$(cat t1) + $(cat t2)" | bc -l
 bw	__BW__ 0.0 0.0
-ns2b	(iperf3 -s1J -p 5203 | jq -rM ".end.sum_received.bits_per_second" >t1) &
-ns2b	iperf3 -s1J -p 5204 | jq -rM ".end.sum_received.bits_per_second" >t2
-hostb	iperf3 -c 127.0.0.1 -p 5203 __OPTS__ & iperf3 -c 127.0.0.1 -p 5204 __OPTS__
+ns2b	(iperf3 -s1J -p 5223 | jq -rM ".end.sum_received.bits_per_second" >t1) &
+ns2b	iperf3 -s1J -p 5224 | jq -rM ".end.sum_received.bits_per_second" >t2
+hostb	iperf3 -c 127.0.0.1 -p 5223 __OPTS__ & iperf3 -c 127.0.0.1 -p 5224 __OPTS__
 sleep	12
 ns2b	
 ns2out	BW echo "$(cat t1) + $(cat t2)" | bc -l
@@ -626,23 +626,23 @@ bw	__BW__ 0.0 0.0
 hostb	
 
 tl	  RR latency
-ns1b	./tcp_rr -4 --nolog -C 5201 -P 5202
+ns1b	./tcp_rr -4 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT tcp_rr --nolog -c -H 127.0.0.1 -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -c -H 127.0.0.1 -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./tcp_rr -4 --nolog -C 5203 -P 5204
+ns2b	./tcp_rr -4 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT tcp_rr --nolog -c -H 127.0.0.1 -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -c -H 127.0.0.1 -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tl	  CRR latency
-ns1b	./tcp_crr -4 --nolog -C 5201 -P 5202
+ns1b	./tcp_crr -4 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT tcp_crr --nolog -c -H 127.0.0.1 -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -c -H 127.0.0.1 -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./tcp_crr -4 --nolog -C 5203 -P 5204
+ns2b	./tcp_crr -4 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT tcp_crr --nolog -c -H 127.0.0.1 -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -c -H 127.0.0.1 -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tr	TCP/IPv6 to host
@@ -725,47 +725,47 @@ sleep	5
 
 
 tr	UDP/IPv6 to ns
-ns1b	iperf3 -s1J -p 5201 | jq -rM ".intervals[0].sum.bits_per_second" >t1
-hostb	iperf3 -u -c ::1 -p 5201 -t5 -b 35G
+ns1b	iperf3 -s1J -p 5221 | jq -rM ".intervals[0].sum.bits_per_second" >t1
+hostb	iperf3 -u -c ::1 -p 5221 -t5 -b 35G
 sleep	10
 ns1out	BW cat t1
 bw	__BW__ 0.0 0.0
-ns2b	iperf3 -s1J -p 5204 | jq -rM ".intervals[0].sum.bits_per_second" >t1
-hostb	iperf3 -u -c ::1 -p 5204 -t5 -b 35G
+ns2b	iperf3 -s1J -p 5224 | jq -rM ".intervals[0].sum.bits_per_second" >t1
+hostb	iperf3 -u -c ::1 -p 5224 -t5 -b 35G
 sleep	10
 ns2out	BW cat t1
 bw	__BW__ 0.0 0.0
 
 tl	  RR latency
-ns1b	./udp_rr -6 --nolog -C 5201 -P 5202
+ns1b	./udp_rr -6 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT udp_rr --nolog -c -H ::1 -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT udp_rr --nolog -c -H ::1 -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./udp_rr -6 --nolog -C 5203 -P 5204
+ns2b	./udp_rr -6 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT udp_rr --nolog -c -H ::1 -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT udp_rr --nolog -c -H ::1 -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tl	UDP/IPv4 to ns
-ns1b	iperf3 -s1J -p 5201 | jq -rM ".intervals[0].sum.bits_per_second" >t1
-hostb	iperf3 -u -c 127.0.0.1 -p 5201 -t5 -b 35G
+ns1b	iperf3 -s1J -p 5221 | jq -rM ".intervals[0].sum.bits_per_second" >t1
+hostb	iperf3 -u -c 127.0.0.1 -p 5221 -t5 -b 35G
 sleep	10
 ns1out	BW cat t1
 bw	__BW__ 0.0 0.0
-ns2b	iperf3 -s1J -p 5204 | jq -rM ".intervals[0].sum.bits_per_second" >t1
-hostb	iperf3 -u -c 127.0.0.1 -p 5204 -t5 -b 35G
+ns2b	iperf3 -s1J -p 5224 | jq -rM ".intervals[0].sum.bits_per_second" >t1
+hostb	iperf3 -u -c 127.0.0.1 -p 5224 -t5 -b 35G
 sleep	10
 ns2out	BW cat t1
 bw	__BW__ 0.0 0.0
 
 tl	  RR latency
-ns1b	./udp_rr -6 --nolog -C 5201 -P 5202
+ns1b	./udp_rr -6 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT udp_rr --nolog -c -H 127.0.0.1 -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT udp_rr --nolog -c -H 127.0.0.1 -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./udp_rr -6 --nolog -C 5203 -P 5204
+ns2b	./udp_rr -6 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT udp_rr --nolog -c -H 127.0.0.1 -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT udp_rr --nolog -c -H 127.0.0.1 -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tr	UDP/IPv6 to host
-- 
@@ -190,7 +190,7 @@ sleep	3
 
 ns1	exit
 
-ns1b	podman run --rm --net=slirp4netns:allow_host_loopback=true,enable_ipv6=true -p 5201-5202:5201-5202/tcp -p 5201-5202:5201-5202/udp -ti alpine sh
+ns1b	podman run --rm --net=slirp4netns:allow_host_loopback=true,enable_ipv6=true -p 5221-5222:5221-5222/tcp -p 5221-5222:5221-5222/udp -ti alpine sh
 sleep	5
 nl
 nl
@@ -236,7 +236,7 @@ nl
 sleep	2
 ns2b	exit
 sleep	1
-ns2b	./bin/podman run --net=pasta:-T,5213-5214,-U,5213-5214 -p 5203-5204:5203-5204/tcp -p 5203-5204:5203-5204/udp --rm -ti alpine sh
+ns2b	./bin/podman run --net=pasta:-T,5213-5214,-U,5213-5214 -p 5223-5224:5223-5224/tcp -p 5223-5224:5223-5224/udp --rm -ti alpine sh
 sleep	5
 
 nl
@@ -282,7 +282,7 @@ say	port forwarder (on the path to the container).
 
 sleep	5
 ns1	exit
-ns1b	podman run --rm --net=slirp4netns:allow_host_loopback=true,enable_ipv6=true,port_handler=slirp4netns -p 5201-5202:5201-5202/tcp -p 5201-5202:5201-5202/udp -ti alpine sh
+ns1b	podman run --rm --net=slirp4netns:allow_host_loopback=true,enable_ipv6=true,port_handler=slirp4netns -p 5221-5222:5221-5222/tcp -p 5221-5222:5221-5222/udp -ti alpine sh
 sleep	3
 
 nl
@@ -323,13 +323,13 @@ info	  non-loopback (tap) connections
 th	mode slirp4netns pasta
 
 tr	TCP/IPv6 to ns
-#ns1b	iperf3 -s1J -p 5201 | jq -rM ".end.sum_received.bits_per_second" >t1
-#hostb	iperf3 -c __ADDR6__ -p 5201 __OPTS__
+#ns1b	iperf3 -s1J -p 5221 | jq -rM ".end.sum_received.bits_per_second" >t1
+#hostb	iperf3 -c __ADDR6__ -p 5221 __OPTS__
 #ns1out	BW cat t1
 #bw	__BW__ 0.0 0.0
 bw	-
-ns2b	iperf3 -s1J -p 5203 | jq -rM ".end.sum_received.bits_per_second" >t1
-hostb	iperf3 -c __ADDR6__ -p 5203 __OPTS__
+ns2b	iperf3 -s1J -p 5223 | jq -rM ".end.sum_received.bits_per_second" >t1
+hostb	iperf3 -c __ADDR6__ -p 5223 __OPTS__
 sleep	12
 ns2b	
 ns2out	BW cat t1
@@ -337,36 +337,36 @@ bw	__BW__ 0.0 0.0
 hostb	
 
 tl	  RR latency
-#ns1b	./tcp_rr -6 --nolog -C 5201 -P 5202
+#ns1b	./tcp_rr -6 --nolog -C 5221 -P 5222
 #sleep	2
-#hout	LAT tcp_rr --nolog -c -H __ADDR6__ -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+#hout	LAT tcp_rr --nolog -c -H __ADDR6__ -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 #lat	__LAT__ 100000 100000
 lat	-
-ns2b	./tcp_rr -6 --nolog -C 5203 -P 5204
+ns2b	./tcp_rr -6 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT tcp_rr --nolog -c -H __ADDR6__ -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -c -H __ADDR6__ -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tl	  CRR latency
-#ns1b	./tcp_crr -6 --nolog -C 5201 -P 5202
+#ns1b	./tcp_crr -6 --nolog -C 5221 -P 5222
 #sleep	2
-#hout	LAT tcp_crr --nolog -c -H __ADDR6__ -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+#hout	LAT tcp_crr --nolog -c -H __ADDR6__ -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 #lat	__LAT__ 100000 100000
 lat	-
-ns2b	./tcp_crr -6 --nolog -C 5203 -P 5204
+ns2b	./tcp_crr -6 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT tcp_crr --nolog -c -H __ADDR6__ -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -c -H __ADDR6__ -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tl	TCP/IPv4 to ns
-ns1b	iperf3 -s1J -p 5201 | jq -rM ".end.sum_received.bits_per_second" >t1
-hostb	iperf3 -c __ADDR4__ -p 5201 __OPTS__
+ns1b	iperf3 -s1J -p 5221 | jq -rM ".end.sum_received.bits_per_second" >t1
+hostb	iperf3 -c __ADDR4__ -p 5221 __OPTS__
 sleep	12
 ns1b	
 ns1out	BW cat t1
 bw	__BW__ 0.0 0.0
-ns2b	iperf3 -s1J -p 5203 | jq -rM ".end.sum_received.bits_per_second" >t1
-hostb	iperf3 -c __ADDR4__ -p 5203 __OPTS__
+ns2b	iperf3 -s1J -p 5223 | jq -rM ".end.sum_received.bits_per_second" >t1
+hostb	iperf3 -c __ADDR4__ -p 5223 __OPTS__
 sleep	12
 ns2b	
 ns2out	BW cat t1
@@ -374,23 +374,23 @@ bw	__BW__ 0.0 0.0
 hostb	
 
 tl	  RR latency
-ns1b	./tcp_rr -4 --nolog -C 5201 -P 5202
+ns1b	./tcp_rr -4 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT tcp_rr --nolog -c -H __ADDR4__ -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -c -H __ADDR4__ -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./tcp_rr -4 --nolog -C 5203 -P 5204
+ns2b	./tcp_rr -4 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT tcp_rr --nolog -c -H __ADDR4__ -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -c -H __ADDR4__ -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tl	  CRR latency
-ns1b	./tcp_crr -4 --nolog -C 5201 -P 5202
+ns1b	./tcp_crr -4 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT tcp_crr --nolog -c -H __ADDR4__ -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -c -H __ADDR4__ -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./tcp_crr -4 --nolog -C 5203 -P 5204
+ns2b	./tcp_crr -4 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT tcp_crr --nolog -c -H __ADDR4__ -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -c -H __ADDR4__ -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tr	TCP/IPv6 to host
@@ -469,49 +469,49 @@ sleep	5
 
 
 tr	UDP/IPv6 to ns
-#ns1b	iperf3 -s1J -p 5201 | jq -rM ".intervals[0].sum.bits_per_second" >t1
-#hostb	iperf3 -u -c __ADDR6__ -p 5201 -t5 -b 35G
+#ns1b	iperf3 -s1J -p 5221 | jq -rM ".intervals[0].sum.bits_per_second" >t1
+#hostb	iperf3 -u -c __ADDR6__ -p 5221 -t5 -b 35G
 #sleep	10
 #ns1out	BW cat t1
 #bw	__BW__ 0.0 0.0
 bw	-
-ns2b	iperf3 -s1J -p 5204 | jq -rM ".intervals[0].sum.bits_per_second" >t1
-hostb	iperf3 -u -c __ADDR6__ -p 5204 -t5 -b 35G
+ns2b	iperf3 -s1J -p 5224 | jq -rM ".intervals[0].sum.bits_per_second" >t1
+hostb	iperf3 -u -c __ADDR6__ -p 5224 -t5 -b 35G
 sleep	10
 ns2out	BW cat t1
 bw	__BW__ 0.0 0.0
 
 tl	  RR latency
-#ns1b	./udp_rr -6 --nolog -C 5201 -P 5202
+#ns1b	./udp_rr -6 --nolog -C 5221 -P 5222
 #sleep	2
-#hout	LAT udp_rr --nolog -c -H __ADDR6__ -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+#hout	LAT udp_rr --nolog -c -H __ADDR6__ -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 #lat	__LAT__ 100000 100000
 lat	-
-ns2b	./udp_rr -6 --nolog -C 5203 -P 5204
+ns2b	./udp_rr -6 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT udp_rr --nolog -c -H __ADDR6__ -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT udp_rr --nolog -c -H __ADDR6__ -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tl	UDP/IPv4 to ns
-ns1b	iperf3 -s1J -p 5201 | jq -rM ".intervals[0].sum.bits_per_second" >t1
-hostb	iperf3 -u -c __ADDR4__ -p 5201 -t5 -b 35G
+ns1b	iperf3 -s1J -p 5221 | jq -rM ".intervals[0].sum.bits_per_second" >t1
+hostb	iperf3 -u -c __ADDR4__ -p 5221 -t5 -b 35G
 sleep	10
 ns1out	BW cat t1
 bw	__BW__ 0.0 0.0
-ns2b	iperf3 -s1J -p 5204 | jq -rM ".intervals[0].sum.bits_per_second" >t1
-hostb	iperf3 -u -c __ADDR4__ -p 5204 -t5 -b 35G
+ns2b	iperf3 -s1J -p 5224 | jq -rM ".intervals[0].sum.bits_per_second" >t1
+hostb	iperf3 -u -c __ADDR4__ -p 5224 -t5 -b 35G
 sleep	10
 ns2out	BW cat t1
 bw	__BW__ 0.0 0.0
 
 tl	  RR latency
-ns1b	./udp_rr -6 --nolog -C 5201 -P 5202
+ns1b	./udp_rr -6 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT udp_rr --nolog -c -H __ADDR4__ -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT udp_rr --nolog -c -H __ADDR4__ -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./udp_rr -6 --nolog -C 5203 -P 5204
+ns2b	./udp_rr -6 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT udp_rr --nolog -c -H __ADDR4__ -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT udp_rr --nolog -c -H __ADDR4__ -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tr	UDP/IPv6 to host
@@ -560,7 +560,7 @@ lat	__LAT__ 100000 100000
 
 
 ns1	exit
-ns1	podman run --rm --net=slirp4netns:allow_host_loopback=true,enable_ipv6=true -p 5201-5202:5201-5202/tcp -p 5201-5202:5201-5202/udp -ti alpine sh
+ns1	podman run --rm --net=slirp4netns:allow_host_loopback=true,enable_ipv6=true -p 5221-5222:5221-5222/tcp -p 5221-5222:5221-5222/udp -ti alpine sh
 ns1	apk add iperf3 jq bc
 ns1	wget lameexcu.se/tcp_rr; chmod 755 tcp_rr
 ns1	wget lameexcu.se/tcp_crr; chmod 755 tcp_crr
@@ -572,16 +572,16 @@ th	mode rootlesskit pasta
 
 
 tr	TCP/IPv6 to ns
-ns1b	(iperf3 -s1J -p 5201 | jq -rM ".end.sum_received.bits_per_second" >t1) &
-ns1b	iperf3 -s1J -p 5202 | jq -rM ".end.sum_received.bits_per_second" >t2
-hostb	iperf3 -c ::1 -p 5201 __OPTS__ & iperf3 -c ::1 -p 5202 __OPTS__
+ns1b	(iperf3 -s1J -p 5221 | jq -rM ".end.sum_received.bits_per_second" >t1) &
+ns1b	iperf3 -s1J -p 5222 | jq -rM ".end.sum_received.bits_per_second" >t2
+hostb	iperf3 -c ::1 -p 5221 __OPTS__ & iperf3 -c ::1 -p 5222 __OPTS__
 sleep	12
 ns1b	
 ns1out	BW echo "$(cat t1) + $(cat t2)" | bc -l
 bw	__BW__ 0.0 0.0
-ns2b	(iperf3 -s1J -p 5203 | jq -rM ".end.sum_received.bits_per_second" >t1) &
-ns2b	iperf3 -s1J -p 5204 | jq -rM ".end.sum_received.bits_per_second" >t2
-hostb	iperf3 -c ::1 -p 5203 __OPTS__ & iperf3 -c ::1 -p 5204 __OPTS__
+ns2b	(iperf3 -s1J -p 5223 | jq -rM ".end.sum_received.bits_per_second" >t1) &
+ns2b	iperf3 -s1J -p 5224 | jq -rM ".end.sum_received.bits_per_second" >t2
+hostb	iperf3 -c ::1 -p 5223 __OPTS__ & iperf3 -c ::1 -p 5224 __OPTS__
 sleep	12
 ns2b	
 ns2out	BW echo "$(cat t1) + $(cat t2)" | bc -l
@@ -589,36 +589,36 @@ bw	__BW__ 0.0 0.0
 hostb	
 
 tl	  RR latency
-ns1b	./tcp_rr -6 --nolog -C 5201 -P 5202
+ns1b	./tcp_rr -6 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT tcp_rr --nolog -c -H ::1 -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -c -H ::1 -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./tcp_rr -6 --nolog -C 5203 -P 5204
+ns2b	./tcp_rr -6 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT tcp_rr --nolog -c -H ::1 -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -c -H ::1 -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tl	  CRR latency
-ns1b	./tcp_crr -6 --nolog -C 5201 -P 5202
+ns1b	./tcp_crr -6 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT tcp_crr --nolog -c -H ::1 -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -c -H ::1 -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./tcp_crr -6 --nolog -C 5203 -P 5204
+ns2b	./tcp_crr -6 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT tcp_crr --nolog -c -H ::1 -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -c -H ::1 -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tl	TCP/IPv4 to ns
-ns1b	(iperf3 -s1J -p 5201 | jq -rM ".end.sum_received.bits_per_second" >t1) &
-ns1b	iperf3 -s1J -p 5202 | jq -rM ".end.sum_received.bits_per_second" >t2
-hostb	iperf3 -c 127.0.0.1 -p 5201 __OPTS__ & iperf3 -c 127.0.0.1 -p 5202 __OPTS__
+ns1b	(iperf3 -s1J -p 5221 | jq -rM ".end.sum_received.bits_per_second" >t1) &
+ns1b	iperf3 -s1J -p 5222 | jq -rM ".end.sum_received.bits_per_second" >t2
+hostb	iperf3 -c 127.0.0.1 -p 5221 __OPTS__ & iperf3 -c 127.0.0.1 -p 5222 __OPTS__
 sleep	12
 ns1b	
 ns1out	BW echo "$(cat t1) + $(cat t2)" | bc -l
 bw	__BW__ 0.0 0.0
-ns2b	(iperf3 -s1J -p 5203 | jq -rM ".end.sum_received.bits_per_second" >t1) &
-ns2b	iperf3 -s1J -p 5204 | jq -rM ".end.sum_received.bits_per_second" >t2
-hostb	iperf3 -c 127.0.0.1 -p 5203 __OPTS__ & iperf3 -c 127.0.0.1 -p 5204 __OPTS__
+ns2b	(iperf3 -s1J -p 5223 | jq -rM ".end.sum_received.bits_per_second" >t1) &
+ns2b	iperf3 -s1J -p 5224 | jq -rM ".end.sum_received.bits_per_second" >t2
+hostb	iperf3 -c 127.0.0.1 -p 5223 __OPTS__ & iperf3 -c 127.0.0.1 -p 5224 __OPTS__
 sleep	12
 ns2b	
 ns2out	BW echo "$(cat t1) + $(cat t2)" | bc -l
@@ -626,23 +626,23 @@ bw	__BW__ 0.0 0.0
 hostb	
 
 tl	  RR latency
-ns1b	./tcp_rr -4 --nolog -C 5201 -P 5202
+ns1b	./tcp_rr -4 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT tcp_rr --nolog -c -H 127.0.0.1 -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -c -H 127.0.0.1 -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./tcp_rr -4 --nolog -C 5203 -P 5204
+ns2b	./tcp_rr -4 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT tcp_rr --nolog -c -H 127.0.0.1 -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -c -H 127.0.0.1 -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tl	  CRR latency
-ns1b	./tcp_crr -4 --nolog -C 5201 -P 5202
+ns1b	./tcp_crr -4 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT tcp_crr --nolog -c -H 127.0.0.1 -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -c -H 127.0.0.1 -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./tcp_crr -4 --nolog -C 5203 -P 5204
+ns2b	./tcp_crr -4 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT tcp_crr --nolog -c -H 127.0.0.1 -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -c -H 127.0.0.1 -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tr	TCP/IPv6 to host
@@ -725,47 +725,47 @@ sleep	5
 
 
 tr	UDP/IPv6 to ns
-ns1b	iperf3 -s1J -p 5201 | jq -rM ".intervals[0].sum.bits_per_second" >t1
-hostb	iperf3 -u -c ::1 -p 5201 -t5 -b 35G
+ns1b	iperf3 -s1J -p 5221 | jq -rM ".intervals[0].sum.bits_per_second" >t1
+hostb	iperf3 -u -c ::1 -p 5221 -t5 -b 35G
 sleep	10
 ns1out	BW cat t1
 bw	__BW__ 0.0 0.0
-ns2b	iperf3 -s1J -p 5204 | jq -rM ".intervals[0].sum.bits_per_second" >t1
-hostb	iperf3 -u -c ::1 -p 5204 -t5 -b 35G
+ns2b	iperf3 -s1J -p 5224 | jq -rM ".intervals[0].sum.bits_per_second" >t1
+hostb	iperf3 -u -c ::1 -p 5224 -t5 -b 35G
 sleep	10
 ns2out	BW cat t1
 bw	__BW__ 0.0 0.0
 
 tl	  RR latency
-ns1b	./udp_rr -6 --nolog -C 5201 -P 5202
+ns1b	./udp_rr -6 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT udp_rr --nolog -c -H ::1 -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT udp_rr --nolog -c -H ::1 -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./udp_rr -6 --nolog -C 5203 -P 5204
+ns2b	./udp_rr -6 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT udp_rr --nolog -c -H ::1 -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT udp_rr --nolog -c -H ::1 -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tl	UDP/IPv4 to ns
-ns1b	iperf3 -s1J -p 5201 | jq -rM ".intervals[0].sum.bits_per_second" >t1
-hostb	iperf3 -u -c 127.0.0.1 -p 5201 -t5 -b 35G
+ns1b	iperf3 -s1J -p 5221 | jq -rM ".intervals[0].sum.bits_per_second" >t1
+hostb	iperf3 -u -c 127.0.0.1 -p 5221 -t5 -b 35G
 sleep	10
 ns1out	BW cat t1
 bw	__BW__ 0.0 0.0
-ns2b	iperf3 -s1J -p 5204 | jq -rM ".intervals[0].sum.bits_per_second" >t1
-hostb	iperf3 -u -c 127.0.0.1 -p 5204 -t5 -b 35G
+ns2b	iperf3 -s1J -p 5224 | jq -rM ".intervals[0].sum.bits_per_second" >t1
+hostb	iperf3 -u -c 127.0.0.1 -p 5224 -t5 -b 35G
 sleep	10
 ns2out	BW cat t1
 bw	__BW__ 0.0 0.0
 
 tl	  RR latency
-ns1b	./udp_rr -6 --nolog -C 5201 -P 5202
+ns1b	./udp_rr -6 --nolog -C 5221 -P 5222
 sleep	2
-hout	LAT udp_rr --nolog -c -H 127.0.0.1 -C 5201 -P 5202 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT udp_rr --nolog -c -H 127.0.0.1 -C 5221 -P 5222 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
-ns2b	./udp_rr -6 --nolog -C 5203 -P 5204
+ns2b	./udp_rr -6 --nolog -C 5223 -P 5224
 sleep	2
-hout	LAT udp_rr --nolog -c -H 127.0.0.1 -C 5203 -P 5204 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT udp_rr --nolog -c -H 127.0.0.1 -C 5223 -P 5224 -l 5 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 100000 100000
 
 tr	UDP/IPv6 to host
-- 
2.35.1


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

* [PATCH 05/11] test/lib: Drop perf_report_append() from perf_report
  2022-09-23 22:42 [PATCH 00/11] Fixes for demos, pre-push hook, README Stefano Brivio
                   ` (3 preceding siblings ...)
  2022-09-23 22:42 ` [PATCH 04/11] test/demo: Avoid using port 5201 on the host Stefano Brivio
@ 2022-09-23 22:42 ` Stefano Brivio
  2022-09-23 22:42 ` [PATCH 06/11] test/lib: Don't try to write to perf.js when running demos Stefano Brivio
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Stefano Brivio @ 2022-09-23 22:42 UTC (permalink / raw)
  To: passt-dev

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

It's not used anymore. While at it, fix the function name in the
comment to perf_report_append_js().

Signed-off-by: Stefano Brivio <sbrivio(a)redhat.com>
---
 test/lib/perf_report | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/test/lib/perf_report b/test/lib/perf_report
index 8fd0588..46454d1 100755
--- a/test/lib/perf_report
+++ b/test/lib/perf_report
@@ -192,12 +192,7 @@ perf_report_sub() {
 	sed -i 's/__'"${__et}"'__/'"${__es}"'/g' "${PERF_JS}"
 }
 
-# perf_report_append() - Append generic string to current JavaScript report
-perf_report_append() {
-	echo "${@}" >> "${PERF_JS}"
-}
-
-# perf_report_append() - Append generic string to current template buffer
+# perf_report_append_js() - Append generic string to current template buffer
 perf_report_append_js() {
 	PERF_TEMPLATE_JS="${PERF_TEMPLATE_JS}${@}"
 }
-- 
@@ -192,12 +192,7 @@ perf_report_sub() {
 	sed -i 's/__'"${__et}"'__/'"${__es}"'/g' "${PERF_JS}"
 }
 
-# perf_report_append() - Append generic string to current JavaScript report
-perf_report_append() {
-	echo "${@}" >> "${PERF_JS}"
-}
-
-# perf_report_append() - Append generic string to current template buffer
+# perf_report_append_js() - Append generic string to current template buffer
 perf_report_append_js() {
 	PERF_TEMPLATE_JS="${PERF_TEMPLATE_JS}${@}"
 }
-- 
2.35.1


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

* [PATCH 06/11] test/lib: Don't try to write to perf.js when running demos
  2022-09-23 22:42 [PATCH 00/11] Fixes for demos, pre-push hook, README Stefano Brivio
                   ` (4 preceding siblings ...)
  2022-09-23 22:42 ` [PATCH 05/11] test/lib: Drop perf_report_append() from perf_report Stefano Brivio
@ 2022-09-23 22:42 ` Stefano Brivio
  2022-09-23 22:42 ` [PATCH 07/11] README: Fix misspellings of openSUSE Stefano Brivio
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Stefano Brivio @ 2022-09-23 22:42 UTC (permalink / raw)
  To: passt-dev

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

...it doesn't actually exist, and this error now causes the demo to
stop.

Signed-off-by: Stefano Brivio <sbrivio(a)redhat.com>
---
 test/lib/perf_report | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/test/lib/perf_report b/test/lib/perf_report
index 46454d1..ed71ef9 100755
--- a/test/lib/perf_report
+++ b/test/lib/perf_report
@@ -215,6 +215,8 @@ perf_report() {
 
 # perf_th() - Table header for a set of tests
 perf_th() {
+	[ ${DEMO} -eq 1 ] && return
+
 	shift
 
 	__th_buf=
@@ -229,6 +231,8 @@ perf_th() {
 
 # perf_tr() - Main table row
 perf_tr() {
+	[ ${DEMO} -eq 1 ] && return
+
 	__line_no=0
 	shift
 	while true; do
@@ -240,6 +244,8 @@ perf_tr() {
 
 # perf_td() - Single cell with test result
 perf_td() {
+	[ ${DEMO} -eq 1 ] && return
+
 	__rewind="${1}"
 	shift
 
-- 
@@ -215,6 +215,8 @@ perf_report() {
 
 # perf_th() - Table header for a set of tests
 perf_th() {
+	[ ${DEMO} -eq 1 ] && return
+
 	shift
 
 	__th_buf=
@@ -229,6 +231,8 @@ perf_th() {
 
 # perf_tr() - Main table row
 perf_tr() {
+	[ ${DEMO} -eq 1 ] && return
+
 	__line_no=0
 	shift
 	while true; do
@@ -240,6 +244,8 @@ perf_tr() {
 
 # perf_td() - Single cell with test result
 perf_td() {
+	[ ${DEMO} -eq 1 ] && return
+
 	__rewind="${1}"
 	shift
 
-- 
2.35.1


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

* [PATCH 07/11] README: Fix misspellings of openSUSE
  2022-09-23 22:42 [PATCH 00/11] Fixes for demos, pre-push hook, README Stefano Brivio
                   ` (5 preceding siblings ...)
  2022-09-23 22:42 ` [PATCH 06/11] test/lib: Don't try to write to perf.js when running demos Stefano Brivio
@ 2022-09-23 22:42 ` Stefano Brivio
  2022-09-23 22:42 ` [PATCH 08/11] README: Point openSUSE links to Dario's OBS repository Stefano Brivio
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Stefano Brivio @ 2022-09-23 22:42 UTC (permalink / raw)
  To: passt-dev

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

For some reason, I used a capital O everywhere.

Signed-off-by: Stefano Brivio <sbrivio(a)redhat.com>
---
 README.md | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/README.md b/README.md
index fb09c6a..f8241b7 100644
--- a/README.md
+++ b/README.md
@@ -342,14 +342,14 @@ speeding up local connections, and usually requiring NAT. _pasta_:
 * ✅ official [packages](https://src.fedoraproject.org/rpms/passt) for Fedora
 * ✅ unofficial
   [packages](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) for CentOS
-  Stream, EPEL, Mageia, OpenSUSE
+  Stream, EPEL, Mageia, openSUSE
 * ✅ unofficial packages from x86_64 static builds for other RPM-based
   distributions and Debian
 * ✅ testing on non-x86_64 architectures (aarch64, armv7l, i386, ppc64, ppc64le,
   s390x)
 * ✅ example Debian [package files](/passt/tree/contrib/debian)
 * 🛠 official
-  [OpenSUSE packages](https://build.opensuse.org/package/show/home:mnhauke/passt)
+  [openSUSE packages](https://build.opensuse.org/package/show/home:mnhauke/passt)
 * ⌚ official packages for Debian
   ([RFP](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1010498)), Arch Linux
 
@@ -541,7 +541,7 @@ See also the [test logs](/builds/latest/test/).
         * [CentOS Stream](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [EPEL](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [Mageia](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
-        * [OpenSUSE](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
+        * [openSUSE](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [Other RPM-based distributions](/builds/latest/x86_64/) (unofficial, from static x86_64 builds)
 
       Static binaries and packages are simply built with:
@@ -589,7 +589,7 @@ See also the [test logs](/builds/latest/test/).
         * [CentOS Stream](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [EPEL](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [Mageia](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
-        * [OpenSUSE](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
+        * [openSUSE](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [Other RPM-based distributions](/builds/latest/x86_64/) (unofficial, from static x86_64 builds)
 
       Static binaries and packages are simply built with:
-- 
@@ -342,14 +342,14 @@ speeding up local connections, and usually requiring NAT. _pasta_:
 * ✅ official [packages](https://src.fedoraproject.org/rpms/passt) for Fedora
 * ✅ unofficial
   [packages](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) for CentOS
-  Stream, EPEL, Mageia, OpenSUSE
+  Stream, EPEL, Mageia, openSUSE
 * ✅ unofficial packages from x86_64 static builds for other RPM-based
   distributions and Debian
 * ✅ testing on non-x86_64 architectures (aarch64, armv7l, i386, ppc64, ppc64le,
   s390x)
 * ✅ example Debian [package files](/passt/tree/contrib/debian)
 * 🛠 official
-  [OpenSUSE packages](https://build.opensuse.org/package/show/home:mnhauke/passt)
+  [openSUSE packages](https://build.opensuse.org/package/show/home:mnhauke/passt)
 * ⌚ official packages for Debian
   ([RFP](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1010498)), Arch Linux
 
@@ -541,7 +541,7 @@ See also the [test logs](/builds/latest/test/).
         * [CentOS Stream](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [EPEL](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [Mageia](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
-        * [OpenSUSE](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
+        * [openSUSE](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [Other RPM-based distributions](/builds/latest/x86_64/) (unofficial, from static x86_64 builds)
 
       Static binaries and packages are simply built with:
@@ -589,7 +589,7 @@ See also the [test logs](/builds/latest/test/).
         * [CentOS Stream](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [EPEL](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [Mageia](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
-        * [OpenSUSE](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
+        * [openSUSE](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [Other RPM-based distributions](/builds/latest/x86_64/) (unofficial, from static x86_64 builds)
 
       Static binaries and packages are simply built with:
-- 
2.35.1


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

* [PATCH 08/11] README: Point openSUSE links to Dario's OBS repository
  2022-09-23 22:42 [PATCH 00/11] Fixes for demos, pre-push hook, README Stefano Brivio
                   ` (6 preceding siblings ...)
  2022-09-23 22:42 ` [PATCH 07/11] README: Fix misspellings of openSUSE Stefano Brivio
@ 2022-09-23 22:42 ` Stefano Brivio
  2022-09-23 22:42 ` [PATCH 09/11] README: Fix indentation in "Try It" section Stefano Brivio
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Stefano Brivio @ 2022-09-23 22:42 UTC (permalink / raw)
  To: passt-dev

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

...instead of my Copr. It's also not official yet, but surely more
appropriate now.

Signed-off-by: Stefano Brivio <sbrivio(a)redhat.com>
---
 README.md | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/README.md b/README.md
index f8241b7..acbd02f 100644
--- a/README.md
+++ b/README.md
@@ -342,14 +342,14 @@ speeding up local connections, and usually requiring NAT. _pasta_:
 * ✅ official [packages](https://src.fedoraproject.org/rpms/passt) for Fedora
 * ✅ unofficial
   [packages](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) for CentOS
-  Stream, EPEL, Mageia, openSUSE
+  Stream, EPEL, Mageia
 * ✅ unofficial packages from x86_64 static builds for other RPM-based
   distributions and Debian
 * ✅ testing on non-x86_64 architectures (aarch64, armv7l, i386, ppc64, ppc64le,
   s390x)
 * ✅ example Debian [package files](/passt/tree/contrib/debian)
 * 🛠 official
-  [openSUSE packages](https://build.opensuse.org/package/show/home:mnhauke/passt)
+  [openSUSE packages](https://build.opensuse.org/package/show/home:dfaggioli:devel/passt)
 * ⌚ official packages for Debian
   ([RFP](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1010498)), Arch Linux
 
@@ -541,7 +541,7 @@ See also the [test logs](/builds/latest/test/).
         * [CentOS Stream](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [EPEL](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [Mageia](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
-        * [openSUSE](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
+        * [openSUSE](https://build.opensuse.org/package/show/home:dfaggioli:devel/passt) (unofficial)
         * [Other RPM-based distributions](/builds/latest/x86_64/) (unofficial, from static x86_64 builds)
 
       Static binaries and packages are simply built with:
@@ -589,7 +589,7 @@ See also the [test logs](/builds/latest/test/).
         * [CentOS Stream](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [EPEL](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [Mageia](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
-        * [openSUSE](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
+        * [openSUSE](https://build.opensuse.org/package/show/home:dfaggioli:devel/passt) (unofficial)
         * [Other RPM-based distributions](/builds/latest/x86_64/) (unofficial, from static x86_64 builds)
 
       Static binaries and packages are simply built with:
-- 
@@ -342,14 +342,14 @@ speeding up local connections, and usually requiring NAT. _pasta_:
 * ✅ official [packages](https://src.fedoraproject.org/rpms/passt) for Fedora
 * ✅ unofficial
   [packages](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) for CentOS
-  Stream, EPEL, Mageia, openSUSE
+  Stream, EPEL, Mageia
 * ✅ unofficial packages from x86_64 static builds for other RPM-based
   distributions and Debian
 * ✅ testing on non-x86_64 architectures (aarch64, armv7l, i386, ppc64, ppc64le,
   s390x)
 * ✅ example Debian [package files](/passt/tree/contrib/debian)
 * 🛠 official
-  [openSUSE packages](https://build.opensuse.org/package/show/home:mnhauke/passt)
+  [openSUSE packages](https://build.opensuse.org/package/show/home:dfaggioli:devel/passt)
 * ⌚ official packages for Debian
   ([RFP](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1010498)), Arch Linux
 
@@ -541,7 +541,7 @@ See also the [test logs](/builds/latest/test/).
         * [CentOS Stream](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [EPEL](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [Mageia](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
-        * [openSUSE](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
+        * [openSUSE](https://build.opensuse.org/package/show/home:dfaggioli:devel/passt) (unofficial)
         * [Other RPM-based distributions](/builds/latest/x86_64/) (unofficial, from static x86_64 builds)
 
       Static binaries and packages are simply built with:
@@ -589,7 +589,7 @@ See also the [test logs](/builds/latest/test/).
         * [CentOS Stream](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [EPEL](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
         * [Mageia](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
-        * [openSUSE](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
+        * [openSUSE](https://build.opensuse.org/package/show/home:dfaggioli:devel/passt) (unofficial)
         * [Other RPM-based distributions](/builds/latest/x86_64/) (unofficial, from static x86_64 builds)
 
       Static binaries and packages are simply built with:
-- 
2.35.1


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

* [PATCH 09/11] README: Fix indentation in "Try It" section
  2022-09-23 22:42 [PATCH 00/11] Fixes for demos, pre-push hook, README Stefano Brivio
                   ` (7 preceding siblings ...)
  2022-09-23 22:42 ` [PATCH 08/11] README: Point openSUSE links to Dario's OBS repository Stefano Brivio
@ 2022-09-23 22:42 ` Stefano Brivio
  2022-09-23 22:42 ` [PATCH 10/11] README: Fix paragraph in Try It section of passt Stefano Brivio
  2022-09-23 22:42 ` [PATCH 11/11] README: Add legend for Features section Stefano Brivio
  10 siblings, 0 replies; 12+ messages in thread
From: Stefano Brivio @ 2022-09-23 22:42 UTC (permalink / raw)
  To: passt-dev

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

Signed-off-by: Stefano Brivio <sbrivio(a)redhat.com>
---
 README.md | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/README.md b/README.md
index acbd02f..d7b3f1b 100644
--- a/README.md
+++ b/README.md
@@ -544,7 +544,7 @@ See also the [test logs](/builds/latest/test/).
         * [openSUSE](https://build.opensuse.org/package/show/home:dfaggioli:devel/passt) (unofficial)
         * [Other RPM-based distributions](/builds/latest/x86_64/) (unofficial, from static x86_64 builds)
 
-      Static binaries and packages are simply built with:
+        Static binaries and packages are simply built with:
 
                 make pkgs
 
@@ -592,7 +592,7 @@ See also the [test logs](/builds/latest/test/).
         * [openSUSE](https://build.opensuse.org/package/show/home:dfaggioli:devel/passt) (unofficial)
         * [Other RPM-based distributions](/builds/latest/x86_64/) (unofficial, from static x86_64 builds)
 
-      Static binaries and packages are simply built with:
+        Static binaries and packages are simply built with:
 
               make pkgs
 
@@ -623,7 +623,7 @@ See also the [test logs](/builds/latest/test/).
 
     * ...or run the demo script:
 
-        doc/demo.sh
+            doc/demo.sh
 
 * and that's it, you should now have TCP connections, UDP, and ICMP/ICMPv6
   echo working from/to the namespace for IPv4 and IPv6
-- 
@@ -544,7 +544,7 @@ See also the [test logs](/builds/latest/test/).
         * [openSUSE](https://build.opensuse.org/package/show/home:dfaggioli:devel/passt) (unofficial)
         * [Other RPM-based distributions](/builds/latest/x86_64/) (unofficial, from static x86_64 builds)
 
-      Static binaries and packages are simply built with:
+        Static binaries and packages are simply built with:
 
                 make pkgs
 
@@ -592,7 +592,7 @@ See also the [test logs](/builds/latest/test/).
         * [openSUSE](https://build.opensuse.org/package/show/home:dfaggioli:devel/passt) (unofficial)
         * [Other RPM-based distributions](/builds/latest/x86_64/) (unofficial, from static x86_64 builds)
 
-      Static binaries and packages are simply built with:
+        Static binaries and packages are simply built with:
 
               make pkgs
 
@@ -623,7 +623,7 @@ See also the [test logs](/builds/latest/test/).
 
     * ...or run the demo script:
 
-        doc/demo.sh
+            doc/demo.sh
 
 * and that's it, you should now have TCP connections, UDP, and ICMP/ICMPv6
   echo working from/to the namespace for IPv4 and IPv6
-- 
2.35.1


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

* [PATCH 10/11] README: Fix paragraph in Try It section of passt
  2022-09-23 22:42 [PATCH 00/11] Fixes for demos, pre-push hook, README Stefano Brivio
                   ` (8 preceding siblings ...)
  2022-09-23 22:42 ` [PATCH 09/11] README: Fix indentation in "Try It" section Stefano Brivio
@ 2022-09-23 22:42 ` Stefano Brivio
  2022-09-23 22:42 ` [PATCH 11/11] README: Add legend for Features section Stefano Brivio
  10 siblings, 0 replies; 12+ messages in thread
From: Stefano Brivio @ 2022-09-23 22:42 UTC (permalink / raw)
  To: passt-dev

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

The qemu patch isn't mentioned there anymore: replace reference with
a link.

Signed-off-by: Stefano Brivio <sbrivio(a)redhat.com>
---
 README.md | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/README.md b/README.md
index d7b3f1b..199f23a 100644
--- a/README.md
+++ b/README.md
@@ -557,9 +557,10 @@ See also the [test logs](/builds/latest/test/).
 
         doc/demo.sh
 
-* alternatively, you can use libvirt, with [this patch](/passt/tree/libvirt/0001-conf-Introduce-support-for-UNIX-domain-socket-as-qem.patch),
-  to start qemu (with the patch mentioned above), with this kind of network
-  interface configuration:
+* alternatively, you can use libvirt, with
+  [this patch](/passt/tree/libvirt/0001-conf-Introduce-support-for-UNIX-domain-socket-as-qem.patch),
+  to start qemu (with [these patches](/passt/tree/contrib/qemu), and this kind
+  of network interface configuration:
 
         <interface type='client'>
           <mac address='52:54:00:02:6b:60'/>
-- 
@@ -557,9 +557,10 @@ See also the [test logs](/builds/latest/test/).
 
         doc/demo.sh
 
-* alternatively, you can use libvirt, with [this patch](/passt/tree/libvirt/0001-conf-Introduce-support-for-UNIX-domain-socket-as-qem.patch),
-  to start qemu (with the patch mentioned above), with this kind of network
-  interface configuration:
+* alternatively, you can use libvirt, with
+  [this patch](/passt/tree/libvirt/0001-conf-Introduce-support-for-UNIX-domain-socket-as-qem.patch),
+  to start qemu (with [these patches](/passt/tree/contrib/qemu), and this kind
+  of network interface configuration:
 
         <interface type='client'>
           <mac address='52:54:00:02:6b:60'/>
-- 
2.35.1


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

* [PATCH 11/11] README: Add legend for Features section
  2022-09-23 22:42 [PATCH 00/11] Fixes for demos, pre-push hook, README Stefano Brivio
                   ` (9 preceding siblings ...)
  2022-09-23 22:42 ` [PATCH 10/11] README: Fix paragraph in Try It section of passt Stefano Brivio
@ 2022-09-23 22:42 ` Stefano Brivio
  10 siblings, 0 replies; 12+ messages in thread
From: Stefano Brivio @ 2022-09-23 22:42 UTC (permalink / raw)
  To: passt-dev

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

As suggested by David: those emojis might not be entirely obvious.

Suggested-by: David Gibson <david(a)gibson.dropbear.id.au>
Signed-off-by: Stefano Brivio <sbrivio(a)redhat.com>
---
 README.md | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/README.md b/README.md
index 199f23a..5a28690 100644
--- a/README.md
+++ b/README.md
@@ -247,6 +247,9 @@ speeding up local connections, and usually requiring NAT. _pasta_:
 
 ## Features
 
+✅: done/supported, ❌: out of scope, 🛠: in progress/being considered
+⌚: nice-to-have, eventually
+
 ### Protocols
 * ✅ IPv4
     * ✅ all features, except for
-- 
@@ -247,6 +247,9 @@ speeding up local connections, and usually requiring NAT. _pasta_:
 
 ## Features
 
+✅: done/supported, ❌: out of scope, 🛠: in progress/being considered
+⌚: nice-to-have, eventually
+
 ### Protocols
 * ✅ IPv4
     * ✅ all features, except for
-- 
2.35.1


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

end of thread, other threads:[~2022-09-23 22:42 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-23 22:42 [PATCH 00/11] Fixes for demos, pre-push hook, README Stefano Brivio
2022-09-23 22:42 ` [PATCH 01/11] contrib/podman: Rebase to latest upstream Stefano Brivio
2022-09-23 22:42 ` [PATCH 02/11] hooks/pre_push: Fix upload of CI's logs and terminal capture file Stefano Brivio
2022-09-23 22:42 ` [PATCH 03/11] test/demo: Use relative paths to change directories when possible Stefano Brivio
2022-09-23 22:42 ` [PATCH 04/11] test/demo: Avoid using port 5201 on the host Stefano Brivio
2022-09-23 22:42 ` [PATCH 05/11] test/lib: Drop perf_report_append() from perf_report Stefano Brivio
2022-09-23 22:42 ` [PATCH 06/11] test/lib: Don't try to write to perf.js when running demos Stefano Brivio
2022-09-23 22:42 ` [PATCH 07/11] README: Fix misspellings of openSUSE Stefano Brivio
2022-09-23 22:42 ` [PATCH 08/11] README: Point openSUSE links to Dario's OBS repository Stefano Brivio
2022-09-23 22:42 ` [PATCH 09/11] README: Fix indentation in "Try It" section Stefano Brivio
2022-09-23 22:42 ` [PATCH 10/11] README: Fix paragraph in Try It section of passt Stefano Brivio
2022-09-23 22:42 ` [PATCH 11/11] README: Add legend for Features section Stefano Brivio

Code repositories for project(s) associated with this public inbox

	https://passt.top/passt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for IMAP folder(s).