/linux/drivers/gpu/drm/tests/ |
H A D | drm_gem_shmem_test.c | 3 * KUnit test suite for GEM objects backed by shmem buffers 38 * Test creating a shmem GEM object backed by shmem buffer. The test 40 * shmem file node and object functions attributes set, and the size 46 struct drm_gem_shmem_object *shmem; in drm_gem_shmem_test_obj_create() local 48 shmem = drm_gem_shmem_create(drm_dev, TEST_SIZE); in drm_gem_shmem_test_obj_create() 49 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, shmem); in drm_gem_shmem_test_obj_create() 50 KUNIT_EXPECT_EQ(test, shmem->base.size, TEST_SIZE); in drm_gem_shmem_test_obj_create() 51 KUNIT_EXPECT_NOT_NULL(test, shmem->base.filp); in drm_gem_shmem_test_obj_create() 52 KUNIT_EXPECT_NOT_NULL(test, shmem->base.funcs); in drm_gem_shmem_test_obj_create() 54 drm_gem_shmem_free(shmem); in drm_gem_shmem_test_obj_create() [all …]
|
/linux/include/drm/ |
H A D | drm_gem_shmem_helper.h | 21 * struct drm_gem_shmem_object - GEM object backed by shmem 91 * @map_wc: map object write-combined (instead of using shmem defaults). 100 void drm_gem_shmem_free(struct drm_gem_shmem_object *shmem); 102 void drm_gem_shmem_put_pages(struct drm_gem_shmem_object *shmem); 103 int drm_gem_shmem_pin(struct drm_gem_shmem_object *shmem); 104 void drm_gem_shmem_unpin(struct drm_gem_shmem_object *shmem); 105 int drm_gem_shmem_vmap(struct drm_gem_shmem_object *shmem, 107 void drm_gem_shmem_vunmap(struct drm_gem_shmem_object *shmem, 109 int drm_gem_shmem_mmap(struct drm_gem_shmem_object *shmem, struct vm_area_struct *vma); 111 int drm_gem_shmem_pin_locked(struct drm_gem_shmem_object *shmem); [all …]
|
/linux/arch/riscv/kvm/ |
H A D | vcpu_sbi_sta.c | 21 vcpu->arch.sta.shmem = INVALID_GPA; in kvm_riscv_vcpu_sbi_sta_reset() 27 gpa_t shmem = vcpu->arch.sta.shmem; in kvm_riscv_vcpu_record_steal_time() local 38 if (shmem == INVALID_GPA) in kvm_riscv_vcpu_record_steal_time() 42 * shmem is 64-byte aligned (see the enforcement in in kvm_riscv_vcpu_record_steal_time() 46 gfn = shmem >> PAGE_SHIFT; in kvm_riscv_vcpu_record_steal_time() 50 vcpu->arch.sta.shmem = INVALID_GPA; in kvm_riscv_vcpu_record_steal_time() 54 sequence_ptr = (__le32 __user *)(hva + offset_in_page(shmem) + in kvm_riscv_vcpu_record_steal_time() 56 steal_ptr = (__le64 __user *)(hva + offset_in_page(shmem) + in kvm_riscv_vcpu_record_steal_time() 90 gpa_t shmem; in kvm_sbi_sta_steal_time_set_shmem() local 98 vcpu->arch.sta.shmem = INVALID_GPA; in kvm_sbi_sta_steal_time_set_shmem() [all …]
|
/linux/drivers/gpu/drm/panfrost/ |
H A D | panfrost_gem_shrinker.c | 22 struct drm_gem_shmem_object *shmem; in panfrost_gem_shrinker_count() local 28 list_for_each_entry(shmem, &pfdev->shrinker_list, madv_list) { in panfrost_gem_shrinker_count() 29 if (drm_gem_shmem_is_purgeable(shmem)) in panfrost_gem_shrinker_count() 30 count += shmem->base.size >> PAGE_SHIFT; in panfrost_gem_shrinker_count() 40 struct drm_gem_shmem_object *shmem = to_drm_gem_shmem_obj(obj); in panfrost_gem_purge() local 50 if (!dma_resv_trylock(shmem->base.resv)) in panfrost_gem_purge() 57 dma_resv_unlock(shmem->base.resv); in panfrost_gem_purge() 68 struct drm_gem_shmem_object *shmem, *tmp; in panfrost_gem_shrinker_scan() local 74 list_for_each_entry_safe(shmem, tmp, &pfdev->shrinker_list, madv_list) { in panfrost_gem_shrinker_scan() 77 if (drm_gem_shmem_is_purgeable(shmem) && in panfrost_gem_shrinker_scan() [all …]
|
/linux/drivers/firmware/arm_scmi/ |
H A D | smc.c |
|
H A D | optee.c |
|
/linux/drivers/net/arcnet/ |
H A D | com90xx.c | 44 * shmem are left in the list at Stage 5, they must correspond to each 58 static int com90xx_found(int ioaddr, int airq, u_long shmem, void __iomem *); 86 static int io; /* use the insmod io= irq= shmem= options */ 88 static int shmem; variable 93 module_param(shmem, int, 0); 107 if (!io && !irq && !shmem && !*device && com90xx_skip_probe) in com90xx_probe() 131 if (shmem) in com90xx_probe() 132 shmems[numshmems++] = shmem; in com90xx_probe() 203 /* Stage 3: abandon any shmem addresses that don't have the signature in com90xx_probe() 243 * sure no "mirror" shmem areas show up - if they occur in com90xx_probe() [all …]
|
H A D | arc-rimi.c | 65 * need to be passed a specific shmem address, IRQ, and node ID. 72 pr_info("Given: node %02Xh, shmem %lXh, irq %d\n", in arcrimi_probe() 78 pr_err("No autoprobe for RIM I; you must specify the shmem and irq!\n"); in arcrimi_probe() 126 unsigned long first_mirror, last_mirror, shmem; in arcrimi_found() local 146 shmem = dev->mem_start; in arcrimi_found() 159 check_mirror(shmem - MIRROR_SIZE, MIRROR_SIZE) == 0 && in arcrimi_found() 160 check_mirror(shmem - 2 * MIRROR_SIZE, MIRROR_SIZE) == 1) in arcrimi_found() 163 first_mirror = shmem - mirror_size; in arcrimi_found() 168 last_mirror = shmem + mirror_size; in arcrimi_found() 194 release_mem_region(shmem, MIRROR_SIZE); in arcrimi_found() [all …]
|
/linux/drivers/net/ethernet/microsoft/mana/ |
H A D | shm_channel.c | 82 /* shmem reads as 0xFFFFFFFF in the reset case */ in mana_smc_poll_register() 146 u64 *shmem; in mana_smc_setup_hwc() local 186 shmem = (u64 *)ptr; in mana_smc_setup_hwc() 188 *shmem = frame_addr & PAGE_FRAME_L48_MASK; in mana_smc_setup_hwc() 194 shmem = (u64 *)ptr; in mana_smc_setup_hwc() 196 *shmem = frame_addr & PAGE_FRAME_L48_MASK; in mana_smc_setup_hwc() 202 shmem = (u64 *)ptr; in mana_smc_setup_hwc() 204 *shmem = frame_addr & PAGE_FRAME_L48_MASK; in mana_smc_setup_hwc() 210 shmem = (u64 *)ptr; in mana_smc_setup_hwc() 212 *shmem = frame_addr & PAGE_FRAME_L48_MASK; in mana_smc_setup_hwc() [all …]
|
/linux/Documentation/devicetree/bindings/reserved-memory/ |
H A D | nvidia,tegra264-bpmp-shmem.yaml | 4 $id: http://devicetree.org/schemas/reserved-memory/nvidia,tegra264-bpmp-shmem.yaml# 17 The sub-node is named shmem@<address>. 24 const: nvidia,tegra264-bpmp-shmem 41 dram_cpu_bpmp_mail: shmem@f1be0000 { 42 compatible = "nvidia,tegra264-bpmp-shmem";
|
/linux/Documentation/devicetree/bindings/mailbox/ |
H A D | mailbox.txt | 26 - shmem : List of phandle pointing to the shared memory(SHM) area between the 39 Example with shared memory(shmem): 49 cl_shmem: shmem@0 { 50 compatible = "client-shmem"; 58 shmem = <&cl_shmem>;
|
H A D | arm,mhu.yaml | 111 shmem = <&cpu_scp_hpri>; /* HP-NonSecure */ 145 shmem = <&cpu_scp_lpri0>, 163 shmem = <&cpu_scp_hpri0>,
|
/linux/drivers/gpu/drm/ |
H A D | drm_fbdev_shmem.c | 48 struct drm_gem_shmem_object *shmem = to_drm_gem_shmem_obj(obj); in drm_fbdev_shmem_fb_mmap() local 50 if (shmem->map_wc) in drm_fbdev_shmem_fb_mmap() 89 struct drm_gem_shmem_object *shmem = to_drm_gem_shmem_obj(obj); in drm_fbdev_shmem_get_page() local 96 page = shmem->pages[i]; // protected by active vmap in drm_fbdev_shmem_get_page() 114 struct drm_gem_shmem_object *shmem; in drm_fbdev_shmem_helper_fb_probe() local 130 shmem = to_drm_gem_shmem_obj(buffer->gem); in drm_fbdev_shmem_helper_fb_probe() 157 if (!shmem->map_wc) in drm_fbdev_shmem_helper_fb_probe() 259 drm_err(dev, "fbdev-shmem: Failed to setup emulation (ret=%d)\n", ret); in drm_fbdev_shmem_client_hotplug() 271 * drm_fbdev_shmem_setup() - Setup fbdev emulation for GEM SHMEM helpers
|
/linux/Documentation/admin-guide/cgroup-v1/ |
H A D | memcg_test.rst | 108 6. Shmem(tmpfs) Page Cache 111 The best way to understand shmem's page state transition is to read 112 mm/shmem.c. 114 But brief explanation of the behavior of memcg around shmem will be 117 Shmem's page (just leaf page, not direct/indirect block) can be on 119 - radix-tree of shmem's inode. 126 - A new page is added to shmem's radix-tree. 155 9.2 Shmem 158 Historically, memcg's shmem handling was poor and we saw some amount 159 of troubles here. This is because shmem is page-cache but can be [all …]
|
/linux/arch/arm64/boot/dts/arm/ |
H A D | juno-scmi.dtsi | 49 shmem = <&cpu_scp_lpri0 &cpu_scp_lpri1>; 63 shmem = <&cpu_scp_hpri0 &cpu_scp_hpri1>; 205 compatible = "arm,scmi-shmem"; 210 compatible = "arm,scmi-shmem"; 215 compatible = "arm,scmi-shmem"; 220 compatible = "arm,scmi-shmem";
|
/linux/drivers/gpu/drm/panthor/ |
H A D | panthor_gem.c | 204 struct drm_gem_shmem_object *shmem; in panthor_gem_create_with_handle() local 207 shmem = drm_gem_shmem_create(ddev, *size); in panthor_gem_create_with_handle() 208 if (IS_ERR(shmem)) in panthor_gem_create_with_handle() 209 return PTR_ERR(shmem); in panthor_gem_create_with_handle() 211 bo = to_panthor_bo(&shmem->base); in panthor_gem_create_with_handle() 224 ret = drm_gem_handle_create(file, &shmem->base, handle); in panthor_gem_create_with_handle() 229 drm_gem_object_put(&shmem->base); in panthor_gem_create_with_handle()
|
/linux/Documentation/devicetree/bindings/firmware/ |
H A D | arm,scpi.yaml | 48 shmem: 170 - shmem 178 shmem = <&cpu_scp_hpri>; /* HP-NonSecure */ 225 compatible = "arm,scp-shmem"; 230 compatible = "arm,scp-shmem"; 241 shmem = <&cpu_scp_lpri>, <&cpu_scp_hpri>;
|
H A D | nvidia,tegra186-bpmp.yaml | 63 See "../reserved-memory/nvidia,tegra264-bpmp-shmem.yaml" for bindings for 81 shmem: 130 - shmem 182 shmem = <&cpu_bpmp_tx>, <&cpu_bpmp_rx>;
|
/linux/drivers/gpu/drm/virtio/ |
H A D | virtgpu_object.c | 123 struct virtio_gpu_object_shmem *shmem; in virtio_gpu_create_object() local 126 shmem = kzalloc(sizeof(*shmem), GFP_KERNEL); in virtio_gpu_create_object() 127 if (!shmem) in virtio_gpu_create_object() 130 dshmem = &shmem->base.base; in virtio_gpu_create_object()
|
/linux/tools/testing/selftests/cachestat/ |
H A D | test_cachestat.c | 219 ksft_print_msg("Unable to create shmem file.\n"); in test_cachestat_shmem() 225 ksft_print_msg("Unable to truncate shmem file.\n"); in test_cachestat_shmem() 231 ksft_print_msg("Unable to write to shmem file.\n"); in test_cachestat_shmem() 312 ksft_test_result_pass("cachestat works with a shmem file\n"); in main() 314 ksft_test_result_fail("cachestat fails with a shmem file\n"); in main()
|
/linux/Documentation/devicetree/bindings/sram/ |
H A D | sram.yaml | 87 - amlogic,meson-gxbb-scp-shmem 88 - amlogic,meson-axg-scp-shmem 89 - arm,juno-scp-shmem 90 - arm,scmi-shmem 91 - arm,scp-shmem
|
/linux/fs/xfs/ |
H A D | xfs_buf_mem.c | 26 * requirements. Therefore, the xmbuf mechanism uses an unlinked shmem file to 39 * shmem files used to back an in-memory buffer cache must not be exposed to 130 /* Directly map a shmem page into the buffer cache. */ 178 /* Unmap a shmem page that was mapped into the buffer cache. */
|
/linux/include/uapi/linux/ |
H A D | userfaultfd.h | 196 * UFFD_FEATURE_MISSING_HUGETLBFS, but it applies to shmem 197 * (i.e. tmpfs and other shmem based APIs). 211 * UFFD_FEATURE_MINOR_HUGETLBFS, but for shmem-backed pages instead. 218 * write-protection mode is supported on both shmem and hugetlbfs. 222 * (i.e. empty ptes). This will be the default behavior for shmem
|
/linux/drivers/firmware/ |
H A D | arm_scpi.c | 899 { .compatible = "amlogic,meson-gxbb-scp-shmem", }, 900 { .compatible = "amlogic,meson-axg-scp-shmem", }, 901 { .compatible = "arm,juno-scp-shmem", }, 902 { .compatible = "arm,scp-shmem", }, 940 struct device_node *shmem = of_parse_phandle(np, "shmem", idx); in scpi_probe() local 942 if (!of_match_node(shmem_of_match, shmem)) in scpi_probe() 945 ret = of_address_to_resource(shmem, 0, &res); in scpi_probe() 946 of_node_put(shmem); in scpi_probe()
|
/linux/drivers/accel/ivpu/ |
H A D | ivpu_gem.c | 177 struct drm_gem_shmem_object *shmem; in ivpu_bo_alloc() local 188 shmem = drm_gem_shmem_create(&vdev->drm, size); in ivpu_bo_alloc() 189 if (IS_ERR(shmem)) in ivpu_bo_alloc() 190 return ERR_CAST(shmem); in ivpu_bo_alloc() 192 bo = to_ivpu_bo(&shmem->base); in ivpu_bo_alloc()
|