Big structures like bitmap, pipes and queues in subport are addressed
using offset of 'memory' field in subport structures. This means no other
variable should be added after 'memory' variable or else addressing of such
structs like bitmap etc. become incorrect.

Realigned tc_ov_enabled variable in subport structure.

Fixes: f5e60154ade ("sched: enable traffic class oversubscription 
conditionally")

Signed-off-by: Megha Ajmera <megha.ajm...@intel.com>
Acked-by: Cristian Dumitrescu <cristian.dumitre...@intel.com>
---
 lib/sched/rte_sched.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/lib/sched/rte_sched.c b/lib/sched/rte_sched.c
index c91697131d..eaecd7ceb4 100644
--- a/lib/sched/rte_sched.c
+++ b/lib/sched/rte_sched.c
@@ -202,6 +202,9 @@ struct rte_sched_subport {
        uint32_t qsize_add[RTE_SCHED_QUEUES_PER_PIPE];
        uint32_t qsize_sum;
 
+       /* TC oversubscription activation */
+       int tc_ov_enabled;
+
        struct rte_sched_pipe *pipe;
        struct rte_sched_queue *queue;
        struct rte_sched_queue_extra *queue_extra;
@@ -210,8 +213,6 @@ struct rte_sched_subport {
        struct rte_mbuf **queue_array;
        uint8_t memory[0] __rte_cache_aligned;
 
-       /* TC oversubscription activation */
-       int tc_ov_enabled;
 } __rte_cache_aligned;
 
 struct rte_sched_port {
-- 
2.25.1

Reply via email to