barrier: LOONGARCH memory barriers
Implement memory barrier for LOONGARCH platforms. Change-Id: I44f5e63e6eb3f8bf98e965a22fb86f94e727061d Signed-off-by: Xue Liu <liuxue@loongson.cn> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/16082 Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
This commit is contained in:
parent
bae7cfb49b
commit
2d686707df
@ -85,6 +85,16 @@ extern "C" {
|
||||
#define _spdk_smp_mb() __asm__ __volatile__("fence rw, rw" ::: "memory")
|
||||
#define _spdk_ivdt_dcache(pdata)
|
||||
|
||||
#elif defined(__loongarch__)
|
||||
|
||||
#define _spdk_rmb() __asm volatile("dbar 0" ::: "memory")
|
||||
#define _spdk_wmb() __asm volatile("dbar 0" ::: "memory")
|
||||
#define _spdk_mb() __asm volatile("dbar 0" ::: "memory")
|
||||
#define _spdk_smp_rmb() __asm volatile("dbar 0" ::: "memory")
|
||||
#define _spdk_smp_wmb() __asm volatile("dbar 0" ::: "memory")
|
||||
#define _spdk_smp_mb() __asm volatile("dbar 0" ::: "memory")
|
||||
#define _spdk_ivdt_dcache(pdata)
|
||||
|
||||
#else
|
||||
|
||||
#define _spdk_rmb()
|
||||
|
Loading…
Reference in New Issue
Block a user