git: fa2d4a22fa82 - main - mana: add rmb load fence to comply with hw spec

From: Wei Hu <whu_at_FreeBSD.org>
Date: Mon, 15 Aug 2022 07:49:50 UTC
The branch main has been updated by whu:

URL: https://cgit.FreeBSD.org/src/commit/?id=fa2d4a22fa82665a778e2f700e3318efebf2d87f

commit fa2d4a22fa82665a778e2f700e3318efebf2d87f
Author:     Wei Hu <whu@FreeBSD.org>
AuthorDate: 2022-08-15 07:36:09 +0000
Commit:     Wei Hu <whu@FreeBSD.org>
CommitDate: 2022-08-15 07:39:15 +0000

    mana: add rmb load fence to comply with hw spec
    
    To ensure software reads fresh data after observing ownership bits.
    
    Sponsored by:   Microsoft
---
 sys/dev/mana/gdma_main.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/sys/dev/mana/gdma_main.c b/sys/dev/mana/gdma_main.c
index 27275252dc4f..6b4e87d169de 100644
--- a/sys/dev/mana/gdma_main.c
+++ b/sys/dev/mana/gdma_main.c
@@ -556,6 +556,8 @@ mana_gd_process_eq_events(void *arg)
 			break;
 		}
 
+		rmb();
+
 		mana_gd_process_eqe(eq);
 
 		eq->head++;
@@ -1366,6 +1368,8 @@ mana_gd_read_cqe(struct gdma_queue *cq, struct gdma_comp *comp)
 		return -1;
 	}
 
+	rmb();
+
 	comp->wq_num = cqe->cqe_info.wq_num;
 	comp->is_sq = cqe->cqe_info.is_sq;
 	memcpy(comp->cqe_data, cqe->cqe_data, GDMA_COMP_DATA_SIZE);