| /linux/drivers/gpu/drm/tegra/ |
| H A D | uapi.c | 1 // SPDX-License-Identifier: GPL-2.0-only 17 struct tegra_drm_mapping *mapping = in tegra_drm_mapping_release() local 20 host1x_bo_unpin(mapping->map); in tegra_drm_mapping_release() 21 host1x_bo_put(mapping->bo); in tegra_drm_mapping_release() 23 kfree(mapping); in tegra_drm_mapping_release() 26 void tegra_drm_mapping_put(struct tegra_drm_mapping *mapping) in tegra_drm_mapping_put() argument 28 kref_put(&mapping->ref, tegra_drm_mapping_release); in tegra_drm_mapping_put() 33 struct tegra_drm_mapping *mapping; in tegra_drm_channel_context_close() local 36 if (context->memory_context) in tegra_drm_channel_context_close() 37 host1x_memory_context_put(context->memory_context); in tegra_drm_channel_context_close() [all …]
|
| /linux/drivers/net/wwan/iosm/ |
| H A D | iosm_ipc_pcie.h | 1 /* SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2020-21 Intel Corporation. 35 * enum ipc_pcie_sleep_state - Enum type to different sleep state transitions 45 * struct iosm_pcie - IPC_PCIE struct. 54 * @imem: Pointer to imem data struct 81 * struct ipc_skb_cb - Struct definition of the socket buffer which is mapped to 83 * @mapping: Store physical or IOVA mapped address of skb virtual add. 89 dma_addr_t mapping; member 96 * enum ipc_ul_usr_op - Control operation to execute the right action on 110 * ipc_pcie_addr_map - Maps the kernel's virtual address to either IOVA [all …]
|
| /linux/drivers/net/xen-netback/ |
| H A D | hash.c | 46 memcpy(new->tag, tag, len); in xenvif_add_hash() 47 new->len = len; in xenvif_add_hash() 48 new->val = val; in xenvif_add_hash() 50 spin_lock_irqsave(&vif->hash.cache.lock, flags); in xenvif_add_hash() 54 list_for_each_entry_rcu(entry, &vif->hash.cache.list, link, in xenvif_add_hash() 55 lockdep_is_held(&vif->hash.cache.lock)) { in xenvif_add_hash() 57 if (entry->len == len && in xenvif_add_hash() 58 memcmp(entry->tag, tag, len) == 0) in xenvif_add_hash() 60 if (!oldest || entry->seq < oldest->seq) in xenvif_add_hash() 65 new->seq = atomic_inc_return(&vif->hash.cache.seq); in xenvif_add_hash() [all …]
|
| /linux/Documentation/admin-guide/device-mapper/ |
| H A D | dm-zoned.rst | 2 dm-zoned 5 The dm-zoned device mapper target exposes a zoned block device (ZBC and 7 pattern constraints. In effect, it implements a drive-managed zoned 10 host-managed zoned block devices and can mitigate the potential 11 device-side performance degradation due to excessive random writes on 12 host-aware zoned block devices. 21 http://www.t13.org/Documents/UploadedDocuments/docs2015/di537r05-Zoned_Device_ATA_Command_Set_ZAC.p… 23 The dm-zoned implementation is simple and minimizes system overhead (CPU 25 host-managed disk with 256 MB zones, dm-zoned memory usage per disk 29 dm-zoned target devices are formatted and checked using the dmzadm [all …]
|
| /linux/Documentation/trace/ |
| H A D | ring-buffer-map.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 Tracefs ring-buffer memory mapping 11 Tracefs ring-buffer memory map provides an efficient method to stream data 12 as no memory copy is necessary. The application mapping the ring-buffer becomes 13 then a consumer for that ring-buffer, in a similar fashion to trace_pipe. 15 Memory mapping setup 17 The mapping works with a mmap() of the trace_pipe_raw interface. 19 The first system page of the mapping contains ring-buffer statistics and 20 description. It is referred to as the meta-page. One of the most important 21 fields of the meta-page is the reader. It contains the sub-buffer ID which can [all …]
|
| /linux/fs/ntfs/ |
| H A D | aops.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (c) 2001-2014 Anton Altaparmakov and Tuxera Inc. 20 int error = blk_status_to_errno(bio->bi_status); in ntfs_iomap_read_end_io() 25 struct ntfs_inode *ni = NTFS_I(folio->mapping->host); in ntfs_iomap_read_end_io() 29 init_size = ni->initialized_size; in ntfs_iomap_read_end_io() 52 * ntfs_read_folio - Read data for a folio from the device 54 * @folio: page cache folio to fill with data 56 * This function handles reading data into the page cache. It first checks 59 * - If the attribute is encrypted, access is denied (-EACCES) because 61 * - If the attribute is non-resident and compressed, the read operation is [all …]
|
| /linux/fs/nfs/ |
| H A D | write.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Write file data over NFS. 23 #include <linux/backing-dev.h> 48 void (*complete)(void *data); 49 void *data; member 83 INIT_LIST_HEAD(&p->pages); in nfs_commitdata_alloc() 105 p->rw_mode = FMODE_WRITE; in nfs_writehdr_alloc() 120 void (*complete)(void *), void *data) in nfs_io_completion_init() argument 122 ioc->complete = complete; in nfs_io_completion_init() 123 ioc->data = data; in nfs_io_completion_init() [all …]
|
| /linux/fs/xfs/ |
| H A D | xfs_aops.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (c) 2000-2005 Silicon Graphics, Inc. 4 * Copyright (c) 2016-2025 Christoph Hellwig. 26 #include <linux/bio-integrity.h> 41 * Update on-disk file size now that data has been written to disk. 49 struct xfs_mount *mp = ip->i_mount; in xfs_setfilesize() 54 error = xfs_trans_alloc(mp, &M_RES(mp)->tr_fsyncts, 0, 0, 0, &tp); in xfs_setfilesize() 68 ip->i_disk_size = isize; in xfs_setfilesize() 81 * out. If we don't, we can leave a stale delalloc mapping covered by a clean 82 * page that needs to be dirtied again before the delalloc mapping can be [all …]
|
| H A D | xfs_reflink.c | 1 // SPDX-License-Identifier: GPL-2.0+ 44 * through the use of a copy-on-write mechanism. At a high level, that 46 * block, write the data to the new block, and if that succeeds we map the 50 * of disk blocks to dirty-but-not-yet-mapped file blocks as long as 56 * create a delalloc mapping, which is a regular in-core extent, but without 58 * a flag that this is a delalloc mapping, and a worst-case estimate of how 59 * many blocks might be required to put the mapping into the BMBT.) delalloc 68 * D: --RRRRRRSSSRRRRRRRR--- (data fork) 69 * C: ------DDDDDDD--------- (CoW fork) 73 * allocating blocks and replacing the delalloc mapping with real ones. [all …]
|
| /linux/net/core/ |
| H A D | ieee8021q_helpers.c | 1 // SPDX-License-Identifier: GPL-2.0 17 * IEEE 802.1Q-2022 in Annex I "I.3 Traffic type to traffic class mapping" and 18 * Table I-1 "Traffic type to traffic class mapping". 87 * ieee8021q_tt_to_tc - Map IEEE 802.1Q Traffic Type to Traffic Class 92 * on the number of queues configured on the NIC. The mapping is based on the 93 * example provided by IEEE 802.1Q-2022 in Annex I "I.3 Traffic type to traffic 94 * class mapping" and Table I-1 "Traffic type to traffic class mapping". 104 return -EINVAL; in ieee8021q_tt_to_tc() 136 return -EINVAL; in ieee8021q_tt_to_tc() 141 * ietf_dscp_to_ieee8021q_tt - Map IETF DSCP to IEEE 802.1Q Traffic Type [all …]
|
| /linux/drivers/net/ethernet/broadcom/bnxt/ |
| H A D | bnxt_xdp.c | 1 /* Broadcom NetXtreme-C/E network driver. 3 * Copyright (c) 2016-2017 Broadcom Limited 28 dma_addr_t mapping, u32 len, in bnxt_xmit_bd() argument 41 num_frags = sinfo->nr_frags; in bnxt_xmit_bd() 45 prod = txr->tx_prod; in bnxt_xmit_bd() 46 tx_buf = &txr->tx_buf_ring[RING_TX(bp, prod)]; in bnxt_xmit_bd() 47 tx_buf->nr_frags = num_frags; in bnxt_xmit_bd() 49 tx_buf->page = virt_to_head_page(xdp->data); in bnxt_xmit_bd() 51 txbd = &txr->tx_desc_ring[TX_RING(bp, prod)][TX_IDX(prod)]; in bnxt_xmit_bd() 54 txbd->tx_bd_len_flags_type = cpu_to_le32(flags); in bnxt_xmit_bd() [all …]
|
| /linux/net/netfilter/ |
| H A D | nft_set_pipapo.h | 1 // SPDX-License-Identifier: GPL-2.0-only 8 /* Count of concatenated fields depends on count of 32-bit nftables registers */ 25 #define NFT_PIPAPO_GROUPS_PER_BYTE(f) (BITS_PER_BYTE / (f)->bb) 32 * crossing page boundaries on most architectures (x86-64 and MIPS huge pages, 34 * keeps performance nice in case kvmalloc() gives us non-contiguous areas. 39 #define NFT_PIPAPO_LT_SIZE_LOW NFT_PIPAPO_LT_SIZE_THRESHOLD - \ 44 (round_up((f)->groups / NFT_PIPAPO_GROUPS_PER_BYTE(f), sizeof(u32))) 49 /* Each n-bit range maps to up to n * 2 rules */ 52 /* Use the rest of mapping table buckets for rule indices, but it makes no sense 58 #define NFT_PIPAPO_MAP_TOBITS (BITS_PER_LONG - NFT_PIPAPO_MAP_NBITS) [all …]
|
| /linux/arch/mips/include/asm/ |
| H A D | vdso.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 16 * struct mips_vdso_image - Details of a VDSO image. 17 * @data: Pointer to VDSO image data (page-aligned). 18 * @size: Size of the VDSO image data (page-aligned). 21 * @mapping: Special mapping structure. 23 * This structure contains details of a VDSO image, including the image data 25 * part of the VDSO build process, aside from the mapping page array, which is 29 void *data; member 35 struct vm_special_mapping mapping; member 39 * The following structures are auto-generated as part of the build for each
|
| /linux/include/linux/pinctrl/ |
| H A D | machine.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 5 * Copyright (C) 2011 ST-Ericsson SA 6 * Written on behalf of Linaro for ST-Ericsson 16 #include <linux/pinctrl/pinctrl-state.h> 27 * struct pinctrl_map_mux - mapping table content for MAP_TYPE_MUX_GROUP 39 * struct pinctrl_map_configs - mapping table content for MAP_TYPE_CONFIGS_* 54 * struct pinctrl_map - boards/machines shall provide this map for devices 55 * @dev_name: the name of the device using this specific mapping, the name 61 * @type: the type of mapping table entry 62 * @ctrl_dev_name: the name of the device controlling this specific mapping, [all …]
|
| /linux/fs/netfs/ |
| H A D | buffered_write.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 /* Network filesystem high-level buffered write support. 19 static struct folio *netfs_grab_folio_for_write(struct address_space *mapping, in netfs_grab_folio_for_write() argument 25 if (mapping_large_folio_support(mapping)) in netfs_grab_folio_for_write() 28 return __filemap_get_folio(mapping, index, fgp_flags, in netfs_grab_folio_for_write() 29 mapping_gfp_mask(mapping)); in netfs_grab_folio_for_write() 34 * data written into the pagecache until we can find out from the server what 47 if (ctx->ops->update_i_size) { in netfs_update_i_size() 48 ctx->ops->update_i_size(inode, end); in netfs_update_i_size() 52 spin_lock(&inode->i_lock); in netfs_update_i_size() [all …]
|
| H A D | buffered_read.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 2 /* Network filesystem high-level buffered read support. 17 struct netfs_cache_resources *cres = &rreq->cache_resources; in netfs_cache_expand_readahead() 19 if (cres->ops && cres->ops->expand_readahead) in netfs_cache_expand_readahead() 20 cres->ops->expand_readahead(cres, _start, _len, i_size); in netfs_cache_expand_readahead() 29 netfs_cache_expand_readahead(rreq, &rreq->start, &rreq->len, rreq->i_size); in netfs_rreq_expand() 34 if (rreq->netfs_ops->expand_readahead) in netfs_rreq_expand() 35 rreq->netfs_ops->expand_readahead(rreq); in netfs_rreq_expand() 46 if (rreq->start != readahead_pos(ractl) || in netfs_rreq_expand() 47 rreq->len != readahead_length(ractl)) { in netfs_rreq_expand() [all …]
|
| /linux/Documentation/devicetree/bindings/display/ |
| H A D | lvds.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - $ref: lvds-data-mapping.yaml# 13 - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> 14 - Thierry Reding <thierry.reding@gmail.com> 17 This binding extends the data mapping defined in lvds-data-mapping.yaml. 19 to accommodate for even more specialized data formats, since a variety of 20 data formats and layouts is used to drive LVDS displays. 23 data-mirror: [all …]
|
| /linux/drivers/platform/x86/intel/ |
| H A D | tpmi_power_domains.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Mapping of TPMI power domains CPU mapping 23 #include <asm/intel-family.h> 48 * struct tpmi_cpu_info - Mapping information for a CPU 49 * @hnode: Used to add mapping information to hash list 56 * Structure to store mapping information for a Linux CPU 97 return info->pkg_id < topology_max_packages() && in tpmi_domain_is_valid() 98 info->punit_domain_id < MAX_POWER_DOMAINS; in tpmi_domain_is_valid() 104 int ret = -EINVAL; in tpmi_get_linux_cpu_number() 108 if (info->punit_domain_id == domain_id && info->pkg_id == package_id) { in tpmi_get_linux_cpu_number() [all …]
|
| /linux/drivers/pci/controller/ |
| H A D | pcie-iproc.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * Copyright (C) 2014-2015 Broadcom Corporation 10 * enum iproc_pcie_type - iProc PCIe interface type 11 * @IPROC_PCIE_PAXB_BCMA: BCMA-based host controllers 12 * @IPROC_PCIE_PAXB: PAXB-based host controllers for 14 * @IPROC_PCIE_PAXB_V2: PAXB-based host controllers for Stingray SoCs 15 * @IPROC_PCIE_PAXC: PAXC-based host controllers 16 * @IPROC_PCIE_PAXC_V2: PAXC-based host controllers (second generation) 33 * struct iproc_pcie_ob - iProc PCIe outbound mapping 36 * @nr_windows: total number of supported outbound mapping windows [all …]
|
| /linux/drivers/iommu/ |
| H A D | ipmmu-vmsa.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * IOMMU API for Renesas VMSA-compatible IPMMU 6 * Copyright (C) 2014-2020 Renesas Electronics Corporation 11 #include <linux/dma-mapping.h> 18 #include <linux/io-pgtable.h> 29 #include <asm/dma-iommu.h> 32 #define arm_iommu_attach_device(...) -ENODEV 37 #define IPMMU_CTX_INVALID -1 67 struct dma_iommu_mapping *mapping; member 93 /* ----------------------------------------------------------------------------- [all …]
|
| /linux/include/linux/ |
| H A D | iomap.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 35 #define IOMAP_INLINE 4 /* data inline in the inode */ 41 * zeroing for areas that no data is copied to. 44 * written data and requires fdatasync to commit them to persistent storage. 55 * buffer heads for this mapping. 58 * rather than a file data extent. 61 * never be merged with the mapping before it. 72 * IOMAP_F_ZERO_TAIL indicates the remainder of the block after the data 98 * Fsverity metadata is stored after the regular file data and thus beyond 128 #define IOMAP_NULL_ADDR -1ULL /* addr is not valid */ [all …]
|
| /linux/drivers/net/dsa/microchip/ |
| H A D | ksz_dcb.c | 1 // SPDX-License-Identifier: GPL-2.0 14 * The datasheet specifies: Port 1 - 0x10, Port 2 - 0x20, Port 3 - 0x30. 61 /* ksz_supported_apptrust[] - Supported apptrust selectors and Priority Order 65 * the index within the array indicates the priority of the selector - lower 72 * non-configurable precedence where certain types of priority information 75 * 1. Tail Tag - Highest priority, overrides ACL, VLAN PCP, and DSCP priorities. 76 * 2. ACL - Overrides VLAN PCP and DSCP priorities. 77 * 3. VLAN PCP - Overrides DSCP priority. 78 * 4. DSCP - Lowest priority, does not override any other priority source. 84 * DCB_APP_SEL_PCP - Priority Code Point selector [all …]
|
| /linux/Documentation/filesystems/iomap/ |
| H A D | operations.rst | 1 .. SPDX-License-Identifier: GPL-2.0 32 mapping, managing uptodate and dirty state, or writeback of pagecache 35 linked lists of buffer heads instead of the per-folio bitmaps that iomap 42 ----------------------------------- 61 -------------------------- 63 .. code-block:: c 77 - ``get_folio``: Called to allocate and return an active reference to 81 This could be used to `set up per-folio filesystem state 82 <https://lore.kernel.org/all/20190429220934.10415-5-agruenba@redhat.com/>`_ 85 - ``put_folio``: Called to unlock and put a folio after a pagecache [all …]
|
| /linux/drivers/net/ethernet/sunplus/ |
| H A D | spl2sw_desc.c | 1 // SPDX-License-Identifier: GPL-2.0 20 rx_desc = comm->rx_desc[i]; in spl2sw_rx_descs_flush() 21 rx_skbinfo = comm->rx_skb_info[i]; in spl2sw_rx_descs_flush() 22 for (j = 0; j < comm->rx_desc_num[i]; j++) { in spl2sw_rx_descs_flush() 23 rx_desc[j].addr1 = rx_skbinfo[j].mapping; in spl2sw_rx_descs_flush() 24 rx_desc[j].cmd2 = (j == comm->rx_desc_num[i] - 1) ? in spl2sw_rx_descs_flush() 25 RXD_EOR | comm->rx_desc_buff_size : in spl2sw_rx_descs_flush() 26 comm->rx_desc_buff_size; in spl2sw_rx_descs_flush() 37 if (!comm->tx_desc) in spl2sw_tx_descs_clean() 41 comm->tx_desc[i].cmd1 = 0; in spl2sw_tx_descs_clean() [all …]
|
| /linux/Documentation/core-api/ |
| H A D | dma-api.rst | 2 Dynamic DMA mapping using the generic device 8 of the API (and actual examples), see Documentation/core-api/dma-api-howto.rst. 11 Part II describes extensions for supporting non-coherent memory 13 non-coherent platforms (this is usually only legacy platforms) you 16 Part I - DMA API 17 ---------------- 19 To get the DMA API, you must #include <linux/dma-mapping.h>. This 27 Part Ia - Using large DMA-coherent buffers 28 ------------------------------------------ 74 Part Ib - Using small DMA-coherent buffers [all …]
|