Home
last modified time | relevance | path

Searched refs:fence (Results 1 – 25 of 42) sorted by relevance

12

/freebsd/sys/riscv/vmm/
H A Dvmm_fence.c49 struct vmm_fence *fence; in vmm_fence_dequeue() local
53 fence = &queue[hypctx->fence_queue_head]; in vmm_fence_dequeue()
54 if (fence->type != VMM_RISCV_FENCE_INVALID) { in vmm_fence_dequeue()
55 *new_fence = *fence; in vmm_fence_dequeue()
56 fence->type = VMM_RISCV_FENCE_INVALID; in vmm_fence_dequeue()
72 struct vmm_fence *fence; in vmm_fence_enqueue() local
76 fence = &queue[hypctx->fence_queue_tail]; in vmm_fence_enqueue()
77 if (fence->type == VMM_RISCV_FENCE_INVALID) { in vmm_fence_enqueue()
78 *fence = *new_fence; in vmm_fence_enqueue()
91 vmm_fence_process_one(struct vmm_fence *fence) in vmm_fence_process_one() argument
[all …]
H A Dvmm_sbi.c45 struct vmm_fence fence; in vmm_sbi_handle_rfnc() local
61 fence.start = hypctx->guest_regs.hyp_a[2]; in vmm_sbi_handle_rfnc()
62 fence.size = hypctx->guest_regs.hyp_a[3]; in vmm_sbi_handle_rfnc()
63 fence.asid = hypctx->guest_regs.hyp_a[4]; in vmm_sbi_handle_rfnc()
67 fence.type = VMM_RISCV_FENCE_I; in vmm_sbi_handle_rfnc()
70 fence.type = VMM_RISCV_FENCE_VMA; in vmm_sbi_handle_rfnc()
73 fence.type = VMM_RISCV_FENCE_VMA_ASID; in vmm_sbi_handle_rfnc()
106 vmm_fence_add(hyp->vm, &cpus, &fence); in vmm_sbi_handle_rfnc()
H A Dvmm_fence.h41 void vmm_fence_add(struct vm *vm, cpuset_t *cpus, struct vmm_fence *fence);
/freebsd/sys/riscv/include/
H A Datomic.h40 #define fence() __asm __volatile("fence" ::: "memory"); macro
41 #define mb() fence()
42 #define rmb() fence()
43 #define wmb() fence()
56 fence(); \
62 fence(); \
74 fence(); \
82 fence(); \
94 fence(); \
102 fence(); \
[all …]
H A Dencoding.h809 DECLARE_INSN(fence, MATCH_FENCE, MASK_FENCE)
/freebsd/sys/dev/hyperv/vmbus/amd64/
H A Dhyperv_machdep.c137 #define HYPERV_TSC_TIMECOUNT(fence) \ argument
139 hyperv_tc64_tsc_##fence(void) \
149 fence(); \
169 hyperv_tsc_timecount_##fence(struct timecounter *tc __unused) \
172 return (hyperv_tc64_tsc_##fence()); \
/freebsd/contrib/ofed/include/
H A Dudma_barrier.h110 #define udma_to_device_barrier() fence()
148 #define udma_from_device_barrier() fence()
218 #define mmio_flush_writes() fence()
/freebsd/sys/dev/ioat/
H A Dioat_internal.h129 uint32_t fence:1; member
162 uint32_t fence:1; member
193 uint32_t fence:1; member
221 uint32_t fence:1; member
300 uint32_t fence:1; member
338 uint32_t fence:1; member
380 uint32_t fence:1; member
/freebsd/sys/dev/bnxt/bnxt_re/
H A Dib_verbs.c536 struct bnxt_re_legacy_fence_data *fence = &pd->fence; in bnxt_re_legacy_create_fence_wqe() local
537 struct ib_mr *ib_mr = &fence->mr->ib_mr; in bnxt_re_legacy_create_fence_wqe()
538 struct bnxt_qplib_swqe *wqe = &fence->bind_wqe; in bnxt_re_legacy_create_fence_wqe()
551 wqe->bind.va = (u64)fence->va; in bnxt_re_legacy_create_fence_wqe()
552 wqe->bind.length = fence->size; in bnxt_re_legacy_create_fence_wqe()
559 fence->bind_rkey = ib_inc_rkey(fence->mw->rkey); in bnxt_re_legacy_create_fence_wqe()
568 struct bnxt_re_legacy_fence_data *fence = &pd->fence; in bnxt_re_legacy_bind_fence_mw() local
569 struct bnxt_qplib_swqe *fence_wqe = &fence->bind_wqe; in bnxt_re_legacy_bind_fence_mw()
577 wqe.bind.r_key = fence->bind_rkey; in bnxt_re_legacy_bind_fence_mw()
578 fence->bind_rkey = ib_inc_rkey(fence->bind_rkey); in bnxt_re_legacy_bind_fence_mw()
[all …]
H A Dib_verbs.h141 struct bnxt_re_legacy_fence_data fence; member
/freebsd/contrib/llvm-project/llvm/lib/Support/
H A DAtomic.cpp39 # error No memory fence implementation for your platform! in MemoryFence()
/freebsd/sys/x86/iommu/
H A Damd_cmd.c171 bool intr, bool memw, bool fence) in amdiommu_cmd_emit_wait_descr() argument
192 if (fence) in amdiommu_cmd_emit_wait_descr()
H A Dintel_qi.c170 bool memw, bool fence) in dmar_qi_emit_wait_descr() argument
179 (fence ? DMAR_IQ_DESCR_WAIT_FN : 0) | in dmar_qi_emit_wait_descr()
/freebsd/sys/dev/smartpqi/
H A Dsmartpqi_structures.h669 uint8_t fence : 1; member
766 uint8_t fence : 1; member
811 uint8_t fence : 1; member
825 uint8_t fence : 1; member
H A Dsmartpqi_request.c222 raid_req->fence = 0; in pqisrc_build_raid_io()
352 aio_req->cmd_flags.fence = 0; in pqisrc_build_aio_common()
423 DBG_INFO("%15s: 0x%x\n", "fence", aio_req->cmd_flags.fence); in pqisrc_show_aio_common()
477 aio_req->cmd_flags.fence = 0; in pqisrc_build_aio_R1_write()
545 DBG_INFO("%15s: 0x%x\n", "fence", aio_req->cmd_flags.fence); in pqisrc_show_aio_R1_write()
623 aio_req->cmd_flags.fence = 0; in pqisrc_build_aio_R5or6_write()
699 DBG_INFO("%15s: 0x%x\n", "fence", aio_req->cmd_flags.fence); in pqisrc_show_aio_R5or6_write()
/freebsd/contrib/ofed/libmlx5/
H A Dqp.c633 uint8_t fence; in _mlx5_post_send() local
668 fence = MLX5_WQE_CTRL_FENCE; in _mlx5_post_send()
670 fence = next_fence; in _mlx5_post_send()
676 ctrl->fm_ce_se = qp->sq_signal_bits | fence | in _mlx5_post_send()
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVInstrInfo.td694 "fence", "$pred, $succ">, Sched<[]> {
703 def FENCE_TSO : RVInstI<0b000, OPC_MISC_MEM, (outs), (ins), "fence.tso", "">, Sched<[]> {
709 def FENCE_I : RVInstI<0b001, OPC_MISC_MEM, (outs), (ins), "fence.i", "">, Sched<[]> {
952 def : InstAlias<"fence", (FENCE 0xF, 0xF)>; // 0xF == iorw
1725 // fence acquire -> fence r, rw
1727 // fence release -> fence rw, w
1729 // fence acq_rel -> fence.tso
1731 // fence seq_cst -> fence rw, rw
1735 // Although these are lowered to fence+load/store instructions defined in the
H A DRISCVFeatures.td135 "'Zifencei' (fence.i)">;
138 "'Zifencei' (fence.i)">;
1305 def FeatureNoTrailingSeqCstFence : SubtargetFeature<"no-trailing-seq-cst-fence",
1308 "Disable trailing fence for seq-cst store.">;
/freebsd/sys/dev/mlx5/mlx5_ib/
H A Dmlx5_ib_qp.c3829 static u8 get_fence(u8 fence, const struct ib_send_wr *wr) in get_fence() argument
3835 if (unlikely(fence)) { in get_fence()
3839 return fence; in get_fence()
3875 int nreq, u8 fence, u8 next_fence, in finish_wqe() argument
3883 ctrl->fm_ce_se |= fence; in finish_wqe()
3917 u8 fence; in mlx5_ib_post_send() local
3943 fence = qp->fm_cache; in mlx5_ib_post_send()
4018 nreq, get_fence(fence, wr), in mlx5_ib_post_send()
4043 nreq, get_fence(fence, wr), in mlx5_ib_post_send()
4065 nreq, get_fence(fence, wr), in mlx5_ib_post_send()
[all …]
/freebsd/sys/riscv/riscv/
H A Dbusdma_bounce.c841 fence(); in dma_dcache_sync()
919 fence(); in bounce_bus_dmamap_sync()
H A Dpmap.c1008 fence(); in pmap_invalidate_page()
1023 fence(); in pmap_invalidate_range()
1049 fence(); in pmap_invalidate_all()
5152 fence(); in pmap_sync_icache()
/freebsd/sys/dev/hwpmc/
H A Dhwpmc_mod.c198 static int pmc_debugflags_parse(char *newstr, char *fence);
450 pmc_debugflags_parse(char *newstr, char *fence) in pmc_debugflags_parse() argument
461 for (p = newstr; p < fence && (c = *p); p++) { in pmc_debugflags_parse()
467 for (q = p; p < fence && (c = *p) && c != '='; p++) in pmc_debugflags_parse()
503 for (q = p; p < fence && (c = *p); p++) in pmc_debugflags_parse()
581 char *fence, *newstr; in pmc_debugflags_sysctl_handler() local
593 fence = newstr + (n < req->newlen ? n : req->newlen + 1); in pmc_debugflags_sysctl_handler()
594 error = pmc_debugflags_parse(newstr, fence); in pmc_debugflags_sysctl_handler()
/freebsd/contrib/llvm-project/llvm/include/llvm/Support/
H A DTargetOpcodes.def124 /// Arithmetic fence.
220 // This is a fence with the singlethread scope. It represents a compiler memory
424 // Generic atomic fence
/freebsd/contrib/llvm-project/llvm/lib/Target/WebAssembly/
H A DWebAssemblyInstrAtomics.td108 // A compiler fence instruction that prevents reordering of instructions.
113 defm ATOMIC_FENCE : ATOMIC_NRI<(outs), (ins i8imm:$flags), [], "atomic.fence",
/freebsd/contrib/llvm-project/llvm/lib/AsmParser/
H A DLLLexer.cpp899 INSTKEYWORD(fence, Fence); in LexIdentifier()

12