]> git.droids-corp.org - dpdk.git/commitdiff
net/ark: add memory write barriers in critical paths
authorJohn Miller <john.miller@atomicrules.com>
Tue, 15 Feb 2022 22:19:25 +0000 (16:19 -0600)
committerFerruh Yigit <ferruh.yigit@intel.com>
Tue, 15 Feb 2022 23:48:06 +0000 (00:48 +0100)
Add memory write barriers for read and wait status functions
in ddm, udm and mpu.

Signed-off-by: John Miller <john.miller@atomicrules.com>
drivers/net/ark/ark_ddm.c
drivers/net/ark/ark_mpu.c
drivers/net/ark/ark_udm.c

index 232137157258e1badd5355a2e7250fe7ea7661eb..b16c739d50de1bbb9e590ef37674df143292cb22 100644 (file)
@@ -55,6 +55,7 @@ ark_ddm_stop(struct ark_ddm_t *ddm, const int wait)
        int cnt = 0;
 
        ddm->cfg.command = 2;
+       rte_wmb();
        while (wait && (ddm->cfg.stop_flushed & 0x01) == 0) {
                if (cnt++ > 1000)
                        return 1;
index 8160c1de7b418458b9c7845f69262e05bde3aade..b8e94b6ed3d1baeafbfa57202f227531761f2e12 100644 (file)
@@ -68,6 +68,7 @@ ark_mpu_reset(struct ark_mpu_t *mpu)
        int cnt = 0;
 
        mpu->cfg.command = MPU_CMD_RESET;
+       rte_wmb();
 
        while (mpu->cfg.command != MPU_CMD_IDLE) {
                if (cnt++ > 1000)
index 28c4500a2c70a424bad858526fdfcab2b5ff39b6..cb3cf5c9418e6013a00afc3e34481c7c8a989e09 100644 (file)
@@ -34,6 +34,7 @@ ark_udm_stop(struct ark_udm_t *udm, const int wait)
        int cnt = 0;
 
        udm->cfg.command = 2;
+       rte_wmb();
 
        while (wait && (udm->cfg.stop_flushed & 0x01) == 0) {
                if (cnt++ > 1000)