| /freebsd-14.2/sys/compat/linuxkpi/common/include/linux/ |
| H A D | scatterlist.h | 92 #define sg_dma_len(sg) (sg)->length argument 101 for (iter = 0, sg = (sglist); iter < (sgmax); iter++, sg = sg_next(sg)) 153 sg++; in sg_next() 155 sg = sg_chain_ptr(sg); in sg_next() 194 bzero(sg, sizeof(*sg) * nents); in sg_init_table() 456 for (nents = 0; sg; sg = sg_next(sg)) in sg_nents() 479 sg = iter->sg; in _sg_iter_next() 485 sg = sg_next(sg); in _sg_iter_next() 491 iter->sg = sg; in _sg_iter_next() 520 piter->sg = sg_next(piter->sg); in __sg_page_iter_next() [all …]
|
| H A D | dma-mapping.h | 68 int (*map_sg)(struct device *dev, struct scatterlist *sg, 70 void (*unmap_sg)(struct device *dev, struct scatterlist *sg, int nents, 82 void (*sync_sg_for_cpu)(struct device *dev, struct scatterlist *sg, 84 void (*sync_sg_for_device)(struct device *dev, struct scatterlist *sg, 104 void linux_dma_unmap_sg_attrs(struct device *dev, struct scatterlist *sg, 192 #define dma_unmap_sg_attrs(dev, sg, nents, dir, attrs) \ argument 193 linux_dma_unmap_sg_attrs(dev, sg, nents, dir, 0) 267 dma_sync_sg_for_cpu(struct device *dev, struct scatterlist *sg, int nelems, in dma_sync_sg_for_cpu() argument 273 dma_sync_sg_for_device(struct device *dev, struct scatterlist *sg, int nelems, in dma_sync_sg_for_device() argument
|
| /freebsd-14.2/sys/kern/ |
| H A D | subr_sglist.c | 93 if (sg->sg_nseg == sg->sg_maxseg) in _sglist_append_range() 98 sg->sg_nseg++; in _sglist_append_range() 137 ss = &sg->sg_segs[sg->sg_nseg - 1]; in _sglist_append_buf() 290 sglist_init(sg, nsegs, (struct sglist_seg *)(sg + 1)); in sglist_alloc() 291 return (sg); in sglist_alloc() 369 ss = &sg->sg_segs[sg->sg_nseg - 1]; in sglist_append_phys() 513 ss = &sg->sg_segs[sg->sg_nseg - 1]; in sglist_append_vmpages() 566 ss = &sg->sg_segs[sg->sg_nseg - 1]; in sglist_append_sglist() 711 return (sg); in sglist_build() 804 *head = sg; in sglist_split() [all …]
|
| H A D | tty_compat.c | 103 struct sgttyb *sg = (struct sgttyb *)data; in ttsetcompat() local 106 if ((speed = sg->sg_ispeed) > MAX_SPEED || speed < 0) in ttsetcompat() 113 if ((speed = sg->sg_ospeed) > MAX_SPEED || speed < 0) in ttsetcompat() 120 term->c_cc[VERASE] = sg->sg_erase; in ttsetcompat() 121 term->c_cc[VKILL] = sg->sg_kill; in ttsetcompat() 123 (sg->sg_flags&0xffff); in ttsetcompat() 201 struct sgttyb *sg = (struct sgttyb *)data; in tty_ioctl_compat() local 204 sg->sg_ospeed = ttcompatspeedtab(tp->t_termios.c_ospeed, in tty_ioctl_compat() 207 sg->sg_ispeed = sg->sg_ospeed; in tty_ioctl_compat() 211 sg->sg_erase = cc[VERASE]; in tty_ioctl_compat() [all …]
|
| /freebsd-14.2/sys/sys/ |
| H A D | sglist.h | 64 sg->sg_segs = segs; in sglist_init() 65 sg->sg_nseg = 0; in sglist_init() 66 sg->sg_maxseg = maxsegs; in sglist_init() 67 refcount_init(&sg->sg_refs, 1); in sglist_init() 71 sglist_reset(struct sglist *sg) in sglist_reset() argument 74 sg->sg_nseg = 0; in sglist_reset() 78 sglist_hold(struct sglist *sg) in sglist_hold() argument 81 refcount_acquire(&sg->sg_refs); in sglist_hold() 82 return (sg); in sglist_hold() 107 void sglist_free(struct sglist *sg); [all …]
|
| /freebsd-14.2/sys/dev/xdma/ |
| H A D | xdma_sglist.c | 63 free(xchan->sg, M_XDMA); in xchan_sglist_free() 78 sg[i].src_width = xr->src_width; in xdma_sglist_add() 79 sg[i].dst_width = xr->dst_width; in xdma_sglist_add() 83 sg[i].dst_addr = xr->dst_addr; in xdma_sglist_add() 85 sg[i].src_addr = xr->src_addr; in xdma_sglist_add() 88 sg[i].len = seg[i].ds_len; in xdma_sglist_add() 89 sg[i].direction = xr->direction; in xdma_sglist_add() 91 sg[i].first = 0; in xdma_sglist_add() 92 sg[i].last = 0; in xdma_sglist_add() 95 sg[0].first = 1; in xdma_sglist_add() [all …]
|
| /freebsd-14.2/lib/libnetgraph/ |
| H A D | sock.c | 100 sg->sg_family = AF_NETGRAPH; in NgMkSockNode() 101 sg->sg_len = strlen(sg->sg_data) + 1 + NGSA_OVERHEAD; in NgMkSockNode() 102 if (bind(cs, (struct sockaddr *) sg, sg->sg_len) < 0) { in NgMkSockNode() 105 NGLOG("bind(%s)", sg->sg_data); in NgMkSockNode() 153 sg->sg_family = AF_NETGRAPH; in NgMkSockNode() 154 sg->sg_len = strlen(sg->sg_data) + 1 + NGSA_OVERHEAD; in NgMkSockNode() 155 if (connect(ds, (struct sockaddr *) sg, sg->sg_len) < 0) { in NgMkSockNode() 278 sg->sg_family = AF_NETGRAPH; in NgSendData() 280 sg->sg_len = strlen(sg->sg_data) + 1 + NGSA_OVERHEAD; in NgSendData() 285 _NgDebugSockaddr(sg); in NgSendData() [all …]
|
| H A D | msg.c | 182 struct sockaddr_ng *const sg = (struct sockaddr_ng *) sgbuf; in NgDeliverMsg() local 208 sg->sg_family = AF_NETGRAPH; in NgDeliverMsg() 210 strlcpy(sg->sg_data, path, NG_PATHSIZ); in NgDeliverMsg() 211 sg->sg_len = strlen(sg->sg_data) + 1 + NGSA_OVERHEAD; in NgDeliverMsg() 217 _NgDebugSockaddr(sg); in NgDeliverMsg() 218 _NgDebugMsg(msg, sg->sg_data); in NgDeliverMsg() 223 0, (struct sockaddr *) sg, sg->sg_len) < 0) { in NgDeliverMsg() 226 NGLOG("sendto(%s)", sg->sg_data); in NgDeliverMsg() 278 strlcpy(path, sg->sg_data, NG_PATHSIZ); in NgRecvMsg() 284 _NgDebugSockaddr(sg); in NgRecvMsg() [all …]
|
| /freebsd-14.2/sys/vm/ |
| H A D | sg_pager.c | 74 struct sglist *sg; in sg_pager_alloc() local 90 sg = handle; in sg_pager_alloc() 91 for (i = 0; i < sg->sg_nseg; i++) { in sg_pager_alloc() 117 object->handle = sglist_hold(sg); in sg_pager_alloc() 125 struct sglist *sg; in sg_pager_dealloc() local 138 sg = object->handle; in sg_pager_dealloc() 139 sglist_free(sg); in sg_pager_dealloc() 148 struct sglist *sg; in sg_pager_getpages() local 159 sg = object->handle; in sg_pager_getpages() 171 for (i = 0; i < sg->sg_nseg; i++) { in sg_pager_getpages() [all …]
|
| /freebsd-14.2/sys/contrib/openzfs/module/os/linux/zfs/ |
| H A D | abd_os.c | 334 sg = table.sgl; in abd_alloc_chunks() 343 sg = sg_next(sg); in abd_alloc_chunks() 466 page = sg_page(sg); in abd_free_chunks() 546 sg[nr - 1].end = 1; in sg_init_table() 562 for ((i) = 0, (sg) = (sgl); (i) < (nr); (i)++, (sg) = sg_next(sg)) 570 sg->page = page; in sg_set_page() 571 sg->length = len; in sg_set_page() 577 return (sg->page); in sg_page() 583 if (sg->end) in sg_next() 586 return (sg + 1); in sg_next() [all …]
|
| /freebsd-14.2/sys/geom/linux_lvm/ |
| H A D | g_linux_lvm.c | 252 pv = sg->sg_pv; in g_llvm_start() 266 pv = sg->sg_pv; in g_llvm_start() 333 sg->sg_pv = NULL; in g_llvm_remove_disk() 468 sg->sg_pv = pv; in g_llvm_add_disk() 473 lv->lv_name, sg->sg_start, sg->sg_end, in g_llvm_add_disk() 474 sg->sg_pvname, sg->sg_pvstart, in g_llvm_add_disk() 1129 sg = malloc(sizeof(*sg), M_GLLVM, M_NOWAIT|M_ZERO); in llvm_textconf_decode_sg() 1130 if (sg == NULL) in llvm_textconf_decode_sg() 1159 strncpy(sg->sg_pvname, v, sizeof(sg->sg_pvname)); in llvm_textconf_decode_sg() 1186 sg->sg_end = sg->sg_start + sg->sg_count - 1; in llvm_textconf_decode_sg() [all …]
|
| /freebsd-14.2/sys/net80211/ |
| H A D | ieee80211_superg.h | 115 struct ieee80211_superg *sg = ic->ic_superg; in ieee80211_ff_age_all() local 117 if (sg != NULL) { in ieee80211_ff_age_all() 118 ieee80211_ff_age(ic, &sg->ff_stageq[WME_AC_VO], quanta); in ieee80211_ff_age_all() 119 ieee80211_ff_age(ic, &sg->ff_stageq[WME_AC_VI], quanta); in ieee80211_ff_age_all() 120 ieee80211_ff_age(ic, &sg->ff_stageq[WME_AC_BE], quanta); in ieee80211_ff_age_all() 121 ieee80211_ff_age(ic, &sg->ff_stageq[WME_AC_BK], quanta); in ieee80211_ff_age_all() 128 struct ieee80211_superg *sg = ic->ic_superg; in ieee80211_ff_flush() local 130 if (sg != NULL) in ieee80211_ff_flush() 131 ieee80211_ff_age(ic, &sg->ff_stageq[ac], 0x7fffffff); in ieee80211_ff_flush()
|
| /freebsd-14.2/sys/dev/mlx5/mlx5_ib/ |
| H A D | mlx5_ib_mem.c | 52 struct scatterlist *sg; in mlx5_ib_cont_pages() local 61 for_each_sg(umem->sg_head.sgl, sg, umem->nmap, entry) { in mlx5_ib_cont_pages() 62 len = sg_dma_len(sg) >> PAGE_SHIFT; in mlx5_ib_cont_pages() 63 pfn = sg_dma_address(sg) >> PAGE_SHIFT; in mlx5_ib_cont_pages() 137 struct scatterlist *sg; in __mlx5_ib_populate_pas() local 156 for_each_sg(umem->sg_head.sgl, sg, umem->nmap, entry) { in __mlx5_ib_populate_pas() 157 len = sg_dma_len(sg) >> umem_page_shift; in __mlx5_ib_populate_pas() 158 base = sg_dma_address(sg); in __mlx5_ib_populate_pas()
|
| /freebsd-14.2/sys/amd64/vmm/ |
| H A D | vmm_mem.c | 62 struct sglist *sg; in vmm_mmio_alloc() local 64 sg = sglist_alloc(1, M_WAITOK); in vmm_mmio_alloc() 65 error = sglist_append_phys(sg, hpa, len); in vmm_mmio_alloc() 68 obj = vm_pager_allocate(OBJT_SG, sg, len, VM_PROT_RW, 0, NULL); in vmm_mmio_alloc() 103 sglist_free(sg); in vmm_mmio_alloc()
|
| /freebsd-14.2/sys/dev/mlx5/mlx5_fpga/ |
| H A D | mlx5fpga_trans.c | 217 trans_priv->buf.sg[0].data = header; in mlx5_fpga_trans_exec() 218 trans_priv->buf.sg[0].size = sizeof(trans_priv->header); in mlx5_fpga_trans_exec() 220 trans_priv->buf.sg[1].data = trans->data; in mlx5_fpga_trans_exec() 221 trans_priv->buf.sg[1].size = trans->size; in mlx5_fpga_trans_exec() 252 buf->sg[0].size); in mlx5_fpga_trans_recv() 254 if (buf->sg[0].size < MLX5_ST_SZ_BYTES(fpga_shell_qp_packet)) { in mlx5_fpga_trans_recv() 256 buf->sg[0].size); in mlx5_fpga_trans_recv() 261 tid = MLX5_GET(fpga_shell_qp_packet, buf->sg[0].data, tid); in mlx5_fpga_trans_recv() 266 type = MLX5_GET(fpga_shell_qp_packet, buf->sg[0].data, type); in mlx5_fpga_trans_recv() 282 MLX5_ADDR_OF(fpga_shell_qp_packet, buf->sg[0].data, in mlx5_fpga_trans_recv() [all …]
|
| H A D | mlx5fpga_conn.c | 52 if (unlikely(!buf->sg[0].data)) in mlx5_fpga_conn_map_buf() 56 buf->sg[0].dma_addr = dma_map_single(dma_device, buf->sg[0].data, in mlx5_fpga_conn_map_buf() 65 if (!buf->sg[1].data) in mlx5_fpga_conn_map_buf() 68 buf->sg[1].dma_addr = dma_map_single(dma_device, buf->sg[1].data, in mlx5_fpga_conn_map_buf() 74 buf->sg[0].size, buf->dma_dir); in mlx5_fpga_conn_map_buf() 88 if (buf->sg[1].data) in mlx5_fpga_conn_unmap_buf() 90 buf->sg[1].size, buf->dma_dir); in mlx5_fpga_conn_unmap_buf() 92 if (likely(buf->sg[0].data)) in mlx5_fpga_conn_unmap_buf() 94 buf->sg[0].size, buf->dma_dir); in mlx5_fpga_conn_unmap_buf() 153 if (!buf->sg[sgi].data) in mlx5_fpga_conn_post_send() [all …]
|
| /freebsd-14.2/sys/ofed/drivers/infiniband/core/ |
| H A D | ib_umem.c | 53 struct scatterlist *sg; in __ib_umem_release() local 62 for_each_sg(umem->sg_head.sgl, sg, umem->npages, i) { in __ib_umem_release() 64 page = sg_page(sg); in __ib_umem_release() 97 struct scatterlist *sg, *sg_list_start; in ib_umem_get() local 193 for_each_sg(sg_list_start, sg, ret, i) { in ib_umem_get() 194 sg_set_page(sg, page_list[i], PAGE_SIZE, 0); in ib_umem_get() 198 sg_list_start = sg; in ib_umem_get() 307 struct scatterlist *sg; in ib_umem_page_count() local 315 for_each_sg(umem->sg_head.sgl, sg, umem->nmap, i) in ib_umem_page_count() 316 n += sg_dma_len(sg) >> shift; in ib_umem_page_count()
|
| /freebsd-14.2/sys/dev/aac/ |
| H A D | aac_disk.c | 183 struct aac_sg_table *sg; in aac_dump_map_sg() local 188 sg = &bw->SgMap; in aac_dump_map_sg() 190 if (sg != NULL) { in aac_dump_map_sg() 191 sg->SgCount = nsegs; in aac_dump_map_sg() 195 sg->SgEntry[i].SgAddress = segs[i].ds_addr; in aac_dump_map_sg() 196 sg->SgEntry[i].SgByteCount = segs[i].ds_len; in aac_dump_map_sg() 210 struct aac_sg_table64 *sg; in aac_dump_map_sg64() local 215 sg = &bw->SgMap64; in aac_dump_map_sg64() 217 if (sg != NULL) { in aac_dump_map_sg64() 218 sg->SgCount = nsegs; in aac_dump_map_sg64() [all …]
|
| /freebsd-14.2/sys/dev/netmap/ |
| H A D | if_vtnet_netmap.h | 81 struct sglist *sg = txq->vtntx_sg; in vtnet_netmap_txsync() local 98 sglist_reset(sg); // cheap in vtnet_netmap_txsync() 99 err = sglist_append(sg, &txq->vtntx_shrhdr, sc->vtnet_hdr_size); in vtnet_netmap_txsync() 100 err |= sglist_append_phys(sg, paddr + offset, len); in vtnet_netmap_txsync() 103 err = virtqueue_enqueue(vq, /*cookie=*/txq, sg, in vtnet_netmap_txsync() 104 /*readable=*/sg->sg_nseg, in vtnet_netmap_txsync() 169 struct sglist sg = { ss, 0, 0, 2 }; in vtnet_netmap_kring_refill() local 185 sglist_reset(&sg); in vtnet_netmap_kring_refill() 187 err |= sglist_append_phys(&sg, paddr + offset, in vtnet_netmap_kring_refill() 192 err = virtqueue_enqueue(vq, /*cookie=*/rxq, &sg, in vtnet_netmap_kring_refill() [all …]
|
| /freebsd-14.2/sys/dev/virtio/scsi/ |
| H A D | virtio_scsi.c | 1045 struct sglist *sg; in vtscsi_fill_scsi_cmd_sglist() local 1058 sglist_reset(sg); in vtscsi_fill_scsi_cmd_sglist() 1064 if (error || sg->sg_nseg == sg->sg_maxseg) in vtscsi_fill_scsi_cmd_sglist() 1092 error, req, ccbh, sg->sg_nseg, sg->sg_maxseg); in vtscsi_fill_scsi_cmd_sglist() 1100 struct sglist *sg; in vtscsi_execute_scsi_cmd() local 1216 struct sglist *sg; in vtscsi_abort_timedout_scsi_cmd() local 1238 sglist_reset(sg); in vtscsi_abort_timedout_scsi_cmd() 1528 sglist_reset(sg); in vtscsi_execute_abort_task_cmd() 1596 sglist_reset(sg); in vtscsi_execute_reset_dev_cmd() 1832 sglist_reset(sg); in vtscsi_enqueue_event_buf() [all …]
|
| /freebsd-14.2/sys/dev/iser/ |
| H A D | iser_memory.c | 62 struct scatterlist *sg, *sgl, *next_sg = NULL; in iser_data_buf_aligned_len() local 72 for_each_sg(sgl, sg, data->dma_nents, i) { in iser_data_buf_aligned_len() 76 next_sg = sg_next(sg); in iser_data_buf_aligned_len() 80 end_addr = start_addr + ib_sg_dma_len(ibdev, sg); in iser_data_buf_aligned_len() 112 struct scatterlist *sg = mem->sgl; in iser_reg_dma() local 116 reg->sge.length = ib_sg_dma_len(device->ib_device, &sg[0]); in iser_reg_dma() 117 reg->sge.addr = ib_sg_dma_address(device->ib_device, &sg[0]); in iser_reg_dma() 174 n = ib_map_mr_sg(mr, mem->sg, mem->size, NULL, SIZE_4K); in iser_fast_reg_mr()
|
| /freebsd-14.2/sys/dev/aic7xxx/ |
| H A D | aic79xx_inline.h | 250 struct ahd_dma64_seg *sg; in ahd_sg_setup() local 253 sg->addr = aic_htole64(addr); in ahd_sg_setup() 255 return (sg + 1); in ahd_sg_setup() 257 struct ahd_dma_seg *sg; in ahd_sg_setup() local 263 return (sg + 1); in ahd_sg_setup() 295 struct ahd_dma64_seg *sg; in ahd_setup_data_scb() local 299 scb->hscb->datacnt = sg->len; in ahd_setup_data_scb() 301 struct ahd_dma_seg *sg; in ahd_setup_data_scb() local 306 dataptr_words[0] = sg->addr; in ahd_setup_data_scb() 314 scb->hscb->datacnt = sg->len; in ahd_setup_data_scb() [all …]
|
| /freebsd-14.2/sys/dev/mthca/ |
| H A D | mthca_wqe.h | 117 struct ib_sge *sg) in mthca_set_data_seg() argument 119 dseg->byte_count = cpu_to_be32(sg->length); in mthca_set_data_seg() 120 dseg->lkey = cpu_to_be32(sg->lkey); in mthca_set_data_seg() 121 dseg->addr = cpu_to_be64(sg->addr); in mthca_set_data_seg()
|
| /freebsd-14.2/sys/dev/xdma/controller/ |
| H A D | pl330.c | 426 pl330_ccr_port_width(struct xdma_sglist *sg, uint32_t *addr) in pl330_ccr_port_width() argument 432 switch (sg->src_width) { in pl330_ccr_port_width() 446 switch (sg->dst_width) { in pl330_ccr_port_width() 467 struct xdma_sglist *sg, uint32_t sg_n) in pl330_channel_submit_sg() argument 498 if (sg[i].direction == XDMA_DEV_TO_MEM) in pl330_channel_submit_sg() 505 err = pl330_ccr_port_width(&sg[i], ®); in pl330_channel_submit_sg() 511 src_addr_lo = (uint32_t)sg[i].src_addr; in pl330_channel_submit_sg() 512 dst_addr_lo = (uint32_t)sg[i].dst_addr; in pl330_channel_submit_sg() 513 len = (uint32_t)sg[i].len; in pl330_channel_submit_sg() 521 if (sg[i].src_width != sg[i].dst_width) in pl330_channel_submit_sg() [all …]
|
| /freebsd-14.2/sys/dev/virtio/network/ |
| H A D | if_vtnet.c | 1707 sglist_reset(sg); in vtnet_rxq_enqueue_buf() 1738 return (virtqueue_enqueue(rxq->vtnrx_vq, m, sg, 0, sg->sg_nseg)); in vtnet_rxq_enqueue_buf() 2541 sglist_reset(sg); in vtnet_txq_enqueue_buf() 2564 error = virtqueue_enqueue(vq, txhdr, sg, sg->sg_nseg, 0); in vtnet_txq_enqueue_buf() 3556 struct sglist sg; in vtnet_ctrl_mac_cmd() local 3581 vtnet_exec_ctrl_cmd(sc, &s.ack, &sg, sg.sg_nseg - 1, 1); in vtnet_ctrl_mac_cmd() 3615 vtnet_exec_ctrl_cmd(sc, &s.ack, &sg, sg.sg_nseg - 1, 1); in vtnet_ctrl_guest_offloads() 3649 vtnet_exec_ctrl_cmd(sc, &s.ack, &sg, sg.sg_nseg - 1, 1); in vtnet_ctrl_mq_cmd() 3683 vtnet_exec_ctrl_cmd(sc, &s.ack, &sg, sg.sg_nseg - 1, 1); in vtnet_ctrl_rx_cmd() 3812 vtnet_exec_ctrl_cmd(sc, &ack, &sg, sg.sg_nseg - 1, 1); in vtnet_rx_filter_mac() [all …]
|