event/cnxk: fix qos devargs parsing
Checks
Commit Message
From: Pavan Nikhilesh <pbhagavatula@marvell.com>
Fix qos devargs parsing using incorrect datatype for the
structure elements.
Fixes: 38c2e3240ba8 ("event/cnxk: add option to control SSO HWGRP QoS")
Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
---
drivers/event/cnxk/cnxk_eventdev.c | 2 +-
drivers/event/cnxk/cnxk_eventdev.h | 6 +++---
2 files changed, 4 insertions(+), 4 deletions(-)
Comments
On Tue, Dec 14, 2021 at 2:11 AM <pbhagavatula@marvell.com> wrote:
>
> From: Pavan Nikhilesh <pbhagavatula@marvell.com>
>
> Fix qos devargs parsing using incorrect datatype for the
> structure elements.
>
> Fixes: 38c2e3240ba8 ("event/cnxk: add option to control SSO HWGRP QoS")
Cc: stable@dpdk.org
>
> Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
Applied to dpdk-next-net-eventdev/for-main. Thanks
> ---
> drivers/event/cnxk/cnxk_eventdev.c | 2 +-
> drivers/event/cnxk/cnxk_eventdev.h | 6 +++---
> 2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/event/cnxk/cnxk_eventdev.c b/drivers/event/cnxk/cnxk_eventdev.c
> index f7a5026250..6ad4e23e2b 100644
> --- a/drivers/event/cnxk/cnxk_eventdev.c
> +++ b/drivers/event/cnxk/cnxk_eventdev.c
> @@ -482,7 +482,7 @@ static void
> parse_queue_param(char *value, void *opaque)
> {
> struct cnxk_sso_qos queue_qos = {0};
> - uint8_t *val = (uint8_t *)&queue_qos;
> + uint16_t *val = (uint16_t *)&queue_qos;
> struct cnxk_sso_evdev *dev = opaque;
> char *tok = strtok(value, "-");
> struct cnxk_sso_qos *old_ptr;
> diff --git a/drivers/event/cnxk/cnxk_eventdev.h b/drivers/event/cnxk/cnxk_eventdev.h
> index 305c6a3b9e..4652b58a84 100644
> --- a/drivers/event/cnxk/cnxk_eventdev.h
> +++ b/drivers/event/cnxk/cnxk_eventdev.h
> @@ -74,9 +74,9 @@ typedef void (*cnxk_sso_hws_flush_t)(void *ws, uint8_t queue_id, uintptr_t base,
>
> struct cnxk_sso_qos {
> uint16_t queue;
> - uint8_t xaq_prcnt;
> - uint8_t taq_prcnt;
> - uint8_t iaq_prcnt;
> + uint16_t xaq_prcnt;
> + uint16_t taq_prcnt;
> + uint16_t iaq_prcnt;
> };
>
> struct cnxk_sso_evdev {
> --
> 2.17.1
>
@@ -482,7 +482,7 @@ static void
parse_queue_param(char *value, void *opaque)
{
struct cnxk_sso_qos queue_qos = {0};
- uint8_t *val = (uint8_t *)&queue_qos;
+ uint16_t *val = (uint16_t *)&queue_qos;
struct cnxk_sso_evdev *dev = opaque;
char *tok = strtok(value, "-");
struct cnxk_sso_qos *old_ptr;
@@ -74,9 +74,9 @@ typedef void (*cnxk_sso_hws_flush_t)(void *ws, uint8_t queue_id, uintptr_t base,
struct cnxk_sso_qos {
uint16_t queue;
- uint8_t xaq_prcnt;
- uint8_t taq_prcnt;
- uint8_t iaq_prcnt;
+ uint16_t xaq_prcnt;
+ uint16_t taq_prcnt;
+ uint16_t iaq_prcnt;
};
struct cnxk_sso_evdev {