[dpdk-dev] [21.08 PATCH v1 1/2] power: invert the monitor check
Burakov, Anatoly
anatoly.burakov at intel.com
Tue May 11 17:39:27 CEST 2021
On 11-May-21 4:31 PM, Anatoly Burakov wrote:
> Previously, the semantics of power monitor were such that we were
> checking current value against the expected value, and if they matched,
> then the sleep was aborted. This is somewhat inflexible, because it only
> allowed us to check for a specific value.
>
> We can reverse the check, and instead have monitor sleep to be aborted
> if the expected value *doesn't* match what's in memory. This allows us
> to both implement all currently implemented driver code, as well as
> support more use cases which don't easily map to previous semantics
> (such as waiting on writes to AF_XDP counter value).
>
> This commit also adjusts all current driver implementations to match the
> new semantics.
>
> Signed-off-by: Anatoly Burakov <anatoly.burakov at intel.com>
> ---
<snip>
> diff --git a/drivers/net/mlx5/mlx5_rx.c b/drivers/net/mlx5/mlx5_rx.c
> index 6cd71a44eb..3cbbe5bf59 100644
> --- a/drivers/net/mlx5/mlx5_rx.c
> +++ b/drivers/net/mlx5/mlx5_rx.c
> @@ -282,7 +282,7 @@ int mlx5_get_monitor_addr(void *rx_queue, struct rte_power_monitor_cond *pmc)
> return -rte_errno;
> }
> pmc->addr = &cqe->op_own;
> - pmc->val = !!idx;
> + pmc->val = !idx;
> pmc->mask = MLX5_CQE_OWNER_MASK;
> pmc->size = sizeof(uint8_t);
> return 0;
Both previous and current code seem suspicious to me, as no attention is
paid to endianness of the code. I would appreciate if mlx5 maintainers
chimed in here :)
--
Thanks,
Anatoly
More information about the dev
mailing list