Hi Luca, this looks good to me! The only thing that needs to be fixed
is the attributes component of the docstring for EalParams in eal.py.
Aside from that:

Reviewed-by: Nicholas Pratte <npra...@iol.unh.edu>

On Thu, Nov 7, 2024 at 9:00 AM Luca Vizzarro <luca.vizza...@arm.com> wrote:
>
> Make the "ports" attribute of EalParams as it actually is to
> "allowed_ports", and add "blocked_ports".
>
> Signed-off-by: Luca Vizzarro <luca.vizza...@arm.com>
> Reviewed-by: Paul Szczepanek <paul.szczepa...@arm.com>
> ---
>  dts/framework/params/eal.py                   | 6 +++++-
>  dts/framework/params/types.py                 | 3 ++-
>  dts/framework/remote_session/dpdk_shell.py    | 4 ++--
>  dts/framework/remote_session/testpmd_shell.py | 2 +-
>  4 files changed, 10 insertions(+), 5 deletions(-)
>
> diff --git a/dts/framework/params/eal.py b/dts/framework/params/eal.py
> index cf1594353a..71bc781eab 100644
> --- a/dts/framework/params/eal.py
> +++ b/dts/framework/params/eal.py
> @@ -45,9 +45,13 @@ class EalParams(Params):
>      vdevs: list[VirtualDevice] | None = field(
>          default=None, metadata=Params.multiple() | Params.long("vdev")
>      )
> -    ports: list[Port] | None = field(
> +    allowed_ports: list[Port] | None = field(
>          default=None,
>          metadata=Params.convert_value(_port_to_pci) | Params.multiple() | 
> Params.short("a"),
>      )
> +    blocked_ports: list[Port] | None = field(
> +        default=None,
> +        metadata=Params.convert_value(_port_to_pci) | Params.multiple() | 
> Params.short("b"),
> +    )
>      other_eal_param: Params | None = None
>      _separator: Literal[True] = field(default=True, init=False, 
> metadata=Params.short("-"))
> diff --git a/dts/framework/params/types.py b/dts/framework/params/types.py
> index d77c4625fb..87d11502e8 100644
> --- a/dts/framework/params/types.py
> +++ b/dts/framework/params/types.py
> @@ -50,7 +50,8 @@ class EalParamsDict(TypedDict, total=False):
>      prefix: str
>      no_pci: Switch
>      vdevs: list[VirtualDevice] | None
> -    ports: list[Port] | None
> +    allowed_ports: list[Port] | None
> +    blocked_ports: list[Port] | None
>      other_eal_param: Params | None
>
>
> diff --git a/dts/framework/remote_session/dpdk_shell.py 
> b/dts/framework/remote_session/dpdk_shell.py
> index b39132cc42..82fa4755f0 100644
> --- a/dts/framework/remote_session/dpdk_shell.py
> +++ b/dts/framework/remote_session/dpdk_shell.py
> @@ -56,8 +56,8 @@ def compute_eal_params(
>          sut_node.dpdk_prefix_list.append(prefix)
>      params.prefix = prefix
>
> -    if params.ports is None:
> -        params.ports = sut_node.ports
> +    if params.allowed_ports is None:
> +        params.allowed_ports = sut_node.ports
>
>      return params
>
> diff --git a/dts/framework/remote_session/testpmd_shell.py 
> b/dts/framework/remote_session/testpmd_shell.py
> index 8a45a5231b..221465f6fb 100644
> --- a/dts/framework/remote_session/testpmd_shell.py
> +++ b/dts/framework/remote_session/testpmd_shell.py
> @@ -1465,7 +1465,7 @@ def start(self, verify: bool = True) -> None:
>                  self._logger.debug(f"Failed to start packet forwarding: 
> \n{start_cmd_output}")
>                  raise InteractiveCommandExecutionError("Testpmd failed to 
> start packet forwarding.")
>
> -            number_of_ports = len(self._app_params.ports or [])
> +            number_of_ports = len(self._app_params.allowed_ports or [])
>              for port_id in range(number_of_ports):
>                  if not self.wait_link_status_up(port_id):
>                      raise InteractiveCommandExecutionError(
> --
> 2.43.0
>

Reply via email to