| /linux/Documentation/mm/damon/ |
| H A D | monitoring_intervals_tuning_example.rst | 17 monitor and visualize access patterns on the physical address space of a system 23 Let's start by capturing the access pattern snapshot on the physical address 27 the capturing of the snapshot, to show a meaningful time-wise access patterns. 35 Then, list the DAMON-found regions of different access patterns, sorted by the 36 "access temperature". "Access temperature" is a metric representing the 37 access-hotness of a region. It is calculated as a weighted sum of the access 38 frequency and the age of the region. If the access frequency is 0 %, the 44 # damo report access --sort_regions_by temperature 45 0 addr 16.052 GiB size 5.985 GiB access 0 % age 5.900 s # coldest 46 1 addr 22.037 GiB size 6.029 GiB access 0 % age 5.300 s [all …]
|
| /linux/security/landlock/ |
| H A D | audit.c | 89 const access_mask_t access) in log_blockers() argument 91 const unsigned long access_mask = access; in log_blockers() 95 for_each_set_bit(access_bit, &access_mask, BITS_PER_TYPE(access)) { in log_blockers() 230 access_mask_t access; in test_get_denied_layer() local 232 access = LANDLOCK_ACCESS_FS_EXECUTE; in test_get_denied_layer() 234 get_denied_layer(&dom, &access, &layer_masks, in test_get_denied_layer() 236 KUNIT_EXPECT_EQ(test, access, LANDLOCK_ACCESS_FS_EXECUTE); in test_get_denied_layer() 238 access = LANDLOCK_ACCESS_FS_READ_FILE; in test_get_denied_layer() 240 get_denied_layer(&dom, &access, &layer_masks, in test_get_denied_layer() 242 KUNIT_EXPECT_EQ(test, access, LANDLOCK_ACCESS_FS_READ_FILE); in test_get_denied_layer() [all …]
|
| /linux/drivers/iommu/iommufd/ |
| H A D | device.c | 1071 static int iommufd_access_change_ioas(struct iommufd_access *access, in iommufd_access_change_ioas() argument 1074 u32 iopt_access_list_id = access->iopt_access_list_id; in iommufd_access_change_ioas() 1075 struct iommufd_ioas *cur_ioas = access->ioas; in iommufd_access_change_ioas() 1078 lockdep_assert_held(&access->ioas_lock); in iommufd_access_change_ioas() 1081 if (cur_ioas != access->ioas_unpin) in iommufd_access_change_ioas() 1091 access->ioas = NULL; in iommufd_access_change_ioas() 1094 rc = iopt_add_access(&new_ioas->iopt, access); in iommufd_access_change_ioas() 1096 access->ioas = cur_ioas; in iommufd_access_change_ioas() 1103 if (!iommufd_access_is_internal(access) && access->ops->unmap) { in iommufd_access_change_ioas() 1104 mutex_unlock(&access->ioas_lock); in iommufd_access_change_ioas() [all …]
|
| H A D | viommu.c | 253 struct iommufd_access *access, in iommufd_hw_queue_destroy_access() argument 259 iommufd_access_unpin_pages(access, aligned_iova, in iommufd_hw_queue_destroy_access() 261 iommufd_access_detach_internal(access); in iommufd_hw_queue_destroy_access() 262 iommufd_access_destroy_internal(ictx, access); in iommufd_hw_queue_destroy_access() 272 if (hw_queue->access) in iommufd_hw_queue_destroy() 274 hw_queue->access, in iommufd_hw_queue_destroy() 295 struct iommufd_access *access; in iommufd_hw_queue_alloc_phys() local 319 access = iommufd_access_create_internal(viommu->ictx); in iommufd_hw_queue_alloc_phys() 320 if (IS_ERR(access)) { in iommufd_hw_queue_alloc_phys() 321 rc = PTR_ERR(access); in iommufd_hw_queue_alloc_phys() [all …]
|
| /linux/drivers/infiniband/sw/rxe/ |
| H A D | rxe_mw.c | 51 struct rxe_mw *mw, struct rxe_mr *mr, int access) in rxe_check_bind_mw() argument 61 if (unlikely((access & IB_ZERO_BASED))) { in rxe_check_bind_mw() 94 if (unlikely(mr->access & IB_ZERO_BASED)) { in rxe_check_bind_mw() 100 if (unlikely(!(mr->access & IB_ACCESS_MW_BIND))) { in rxe_check_bind_mw() 107 if (unlikely((access & in rxe_check_bind_mw() 109 !(mr->access & IB_ACCESS_LOCAL_WRITE))) { in rxe_check_bind_mw() 116 if (access & IB_ZERO_BASED) { in rxe_check_bind_mw() 136 struct rxe_mw *mw, struct rxe_mr *mr, int access) in rxe_do_bind_mw() argument 141 mw->access = access; in rxe_do_bind_mw() 172 int access = wqe->wr.wr.mw.access; in rxe_bind_mw() local [all …]
|
| H A D | rxe_mr.c | 48 void rxe_mr_init(int access, struct rxe_mr *mr) in rxe_mr_init() argument 60 mr->access = access; in rxe_mr_init() 67 void rxe_mr_init_dma(int access, struct rxe_mr *mr) in rxe_mr_init_dma() argument 69 rxe_mr_init(access, mr); in rxe_mr_init_dma() 99 bool persistent = !!(mr->access & IB_ACCESS_FLUSH_PERSISTENT); in rxe_mr_fill_pages_from_sgt() 130 int access, struct rxe_mr *mr) in rxe_mr_init_user() argument 135 rxe_mr_init(access, mr); in rxe_mr_init_user() 139 umem = ib_umem_get(&rxe->ib_dev, start, length, access); in rxe_mr_init_user() 212 bool persistent = !!(mr->access & IB_ACCESS_FLUSH_PERSISTENT); in rxe_set_page() 337 int access, in copy_data() argument [all …]
|
| /linux/security/ |
| H A D | device_cgroup.c | 38 short access; member 118 walk->access |= ex->access; in dev_exception_add() 146 walk->access &= ~ex->access; in dev_exception_rm() 147 if (!walk->access) { in dev_exception_rm() 250 static void set_access(char *acc, short access) in set_access() argument 254 if (access & DEVCG_ACC_READ) in set_access() 256 if (access & DEVCG_ACC_WRITE) in set_access() 258 if (access & DEVCG_ACC_MKNOD) in set_access() 302 set_access(acc, ex->access); in devcgroup_seq_show() 328 u32 major, u32 minor, short access) in match_exception() argument [all …]
|
| /linux/Documentation/admin-guide/mm/damon/ |
| H A D | start.rst | 40 The commands below show the memory access pattern of a program at the moment of 45 $ sudo damo report access 48 0 addr 86.182 TiB size 8.000 KiB access 0 % age 14.900 s 49 1 addr 86.182 TiB size 8.000 KiB access 60 % age 0 ns 50 2 addr 86.182 TiB size 3.422 MiB access 0 % age 4.100 s 51 3 addr 86.182 TiB size 2.004 MiB access 95 % age 2.200 s 52 4 addr 86.182 TiB size 29.688 MiB access 0 % age 14.100 s 53 5 addr 86.182 TiB size 29.516 MiB access 0 % age 16.700 s 54 6 addr 86.182 TiB size 29.633 MiB access 0 % age 17.900 s 55 7 addr 86.182 TiB size 117.652 MiB access 0 % age 18.400 s [all …]
|
| /linux/sound/core/ |
| H A D | control_led.c | 49 unsigned int access; member 82 static inline unsigned int access_to_group(unsigned int access) in access_to_group() argument 84 return ((access & SNDRV_CTL_ELEM_ACCESS_LED_MASK) >> in access_to_group() 93 static struct snd_ctl_led *snd_ctl_led_get_by_access(unsigned int access) in snd_ctl_led_get_by_access() argument 95 unsigned int group = access_to_group(access); in snd_ctl_led_get_by_access() 138 static void snd_ctl_led_set_state(struct snd_card *card, unsigned int access, in snd_ctl_led_set_state() argument 146 led = snd_ctl_led_get_by_access(access); in snd_ctl_led_set_state() 164 lctl->access = access; in snd_ctl_led_set_state() 201 unsigned int access) in snd_ctl_led_remove() argument 208 if (lctl && (access == 0 || access != lctl->access)) { in snd_ctl_led_remove() [all …]
|
| /linux/Documentation/admin-guide/LSM/ |
| H A D | Smack.rst | 10 Smack is a kernel based implementation of mandatory access 33 access to systems that use them as Smack does. 50 load the Smack access rules 53 report if a process with one label has access 85 Used to make access control decisions. In almost all cases 95 label does not allow all of the access permitted to a process 102 the Smack rule (more below) that permitted the write access 110 Use the Smack label in this attribute for access control 115 Use the Smack label in this attribute for access control 131 access [all …]
|
| /linux/kernel/kcsan/ |
| H A D | kcsan_test.c | 152 } access[2]; member 159 const bool is_assert = (r->access[0].type | r->access[1].type) & KCSAN_ACCESS_ASSERT; in __report_matches() 182 if (r->access[1].fn) { in __report_matches() 187 scnprintf(tmp[0], sizeof(tmp[0]), "%pS", r->access[0].fn); in __report_matches() 188 scnprintf(tmp[1], sizeof(tmp[1]), "%pS", r->access[1].fn); in __report_matches() 191 cmp < 0 ? r->access[0].fn : r->access[1].fn, in __report_matches() 192 cmp < 0 ? r->access[1].fn : r->access[0].fn); in __report_matches() 194 scnprintf(cur, end - cur, "%pS", r->access[0].fn); in __report_matches() 204 if (!r->access[1].fn) in __report_matches() 209 const int ty = r->access[i].type; in __report_matches() [all …]
|
| /linux/tools/testing/selftests/landlock/ |
| H A D | fs_test.c | 600 __u64 access; in TEST_F_FORK() local 621 for (access = 1; access <= ACCESS_LAST; access <<= 1) { in TEST_F_FORK() 622 path_beneath_dir.allowed_access = access; in TEST_F_FORK() 627 path_beneath_file.allowed_access = access; in TEST_F_FORK() 630 if (access & ACCESS_FILE) { in TEST_F_FORK() 660 __u64 access; in TEST_F_FORK() local 674 for (access = 1ULL << 63; access != ACCESS_LAST; access >>= 1) { in TEST_F_FORK() 675 path_beneath.allowed_access = access; in TEST_F_FORK() 692 __u64 access; in TEST_F_FORK() local 701 for (access = 1; access > 0; access <<= 1) { in TEST_F_FORK() [all …]
|
| /linux/drivers/platform/chrome/ |
| H A D | cros_ec_lpc_mec.c | 129 enum cros_ec_lpc_mec_emi_access_mode access, new_access; in cros_ec_lpc_io_bytes_mec() local 145 access = ACCESS_TYPE_BYTE; in cros_ec_lpc_io_bytes_mec() 147 access = ACCESS_TYPE_LONG_AUTO_INCREMENT; in cros_ec_lpc_io_bytes_mec() 154 cros_ec_lpc_mec_emi_write_address(offset, access); in cros_ec_lpc_io_bytes_mec() 182 if (new_access != access || in cros_ec_lpc_io_bytes_mec() 183 access != ACCESS_TYPE_LONG_AUTO_INCREMENT) { in cros_ec_lpc_io_bytes_mec() 184 access = new_access; in cros_ec_lpc_io_bytes_mec() 185 cros_ec_lpc_mec_emi_write_address(offset, access); in cros_ec_lpc_io_bytes_mec()
|
| /linux/drivers/gpu/drm/nouveau/nvkm/engine/dma/ |
| H A D | user.c | 87 args->v0.version, args->v0.target, args->v0.access, in nvkm_dmaobj_ctor() 90 dmaobj->access = args->v0.access; in nvkm_dmaobj_ctor() 120 switch (dmaobj->access) { in nvkm_dmaobj_ctor() 122 dmaobj->access = NV_MEM_ACCESS_VM; in nvkm_dmaobj_ctor() 125 dmaobj->access = NV_MEM_ACCESS_RO; in nvkm_dmaobj_ctor() 128 dmaobj->access = NV_MEM_ACCESS_WO; in nvkm_dmaobj_ctor() 131 dmaobj->access = NV_MEM_ACCESS_RW; in nvkm_dmaobj_ctor()
|
| /linux/arch/arm/include/asm/ |
| H A D | arch_timer.h | 28 void arch_timer_reg_write_cp15(int access, enum arch_timer_reg reg, u64 val) in arch_timer_reg_write_cp15() argument 30 if (access == ARCH_TIMER_PHYS_ACCESS) { in arch_timer_reg_write_cp15() 42 } else if (access == ARCH_TIMER_VIRT_ACCESS) { in arch_timer_reg_write_cp15() 60 u32 arch_timer_reg_read_cp15(int access, enum arch_timer_reg reg) in arch_timer_reg_read_cp15() argument 64 if (access == ARCH_TIMER_PHYS_ACCESS) { in arch_timer_reg_read_cp15() 72 } else if (access == ARCH_TIMER_VIRT_ACCESS) { in arch_timer_reg_read_cp15()
|
| /linux/include/linux/ |
| H A D | device_cgroup.h | 16 short access); 19 short type, access = 0; in devcgroup_inode_permission() local 33 access |= DEVCG_ACC_WRITE; in devcgroup_inode_permission() 35 access |= DEVCG_ACC_READ; in devcgroup_inode_permission() 38 access); in devcgroup_inode_permission() 62 short access) in devcgroup_check_permission() argument
|
| H A D | iommufd.h | 92 void iommufd_access_destroy(struct iommufd_access *access); 93 int iommufd_access_attach(struct iommufd_access *access, u32 ioas_id); 94 int iommufd_access_replace(struct iommufd_access *access, u32 ioas_id); 95 void iommufd_access_detach(struct iommufd_access *access); 132 struct iommufd_access *access; member 206 int iommufd_access_pin_pages(struct iommufd_access *access, unsigned long iova, 209 void iommufd_access_unpin_pages(struct iommufd_access *access, 211 int iommufd_access_rw(struct iommufd_access *access, unsigned long iova, 226 static inline int iommufd_access_pin_pages(struct iommufd_access *access, in iommufd_access_pin_pages() argument 235 static inline void iommufd_access_unpin_pages(struct iommufd_access *access, in iommufd_access_unpin_pages() argument [all …]
|
| /linux/fs/afs/ |
| H A D | security.c | 131 h += permits->permits[i].access; in afs_hash_permits() 168 if (permits->permits[i].access != caller_access) { in afs_cache_permit() 233 new->permits[j].access = caller_access; in afs_cache_permit() 237 new->permits[j].access = permits->permits[i].access; in afs_cache_permit() 244 new->permits[j].access = caller_access; in afs_cache_permit() 327 *_access = permits->permits[i].access; in afs_check_permit_rcu() 367 *_access = permits->permits[i].access; in afs_check_permit() 402 afs_access_t access; in afs_permission() local 416 !afs_check_permit_rcu(vnode, key, &access)) in afs_permission() 430 ret = afs_check_permit(vnode, key, &access); in afs_permission() [all …]
|
| /linux/Documentation/core-api/ |
| H A D | unaligned-memory-access.rst | 14 when it comes to memory access. This document presents some details about 19 The definition of an unaligned access 26 access. 28 The above may seem a little vague, as memory access can happen in different 32 which will compile to multiple-byte memory access instructions, namely when 47 of memory access. However, we must consider ALL supported architectures; 52 Why unaligned access is bad 55 The effects of performing an unaligned memory access vary from architecture 62 happen. The exception handler is able to correct the unaligned access, 66 unaligned access to be corrected. [all …]
|
| /linux/Documentation/security/ |
| H A D | landlock.rst | 12 Landlock's goal is to create scoped access-control (i.e. sandboxing). To 20 system security policy enforced by other access control mechanisms (e.g. DAC, 21 LSM). A Landlock rule shall not interfere with other access-controls enforced 31 Guiding principles for safe access controls 34 * A Landlock rule shall be focused on access control on kernel objects instead 40 * Kernel access check shall not slow down access request from unsandboxed 47 Cf. `File descriptor access rights`_. 56 Inode access rights 59 All access rights are tied to an inode and what can be accessed through it. 68 File descriptor access rights [all …]
|
| /linux/Documentation/arch/arm/ |
| H A D | mem_alignment.rst | 5 Too many problems popped up because of unnoticed misaligned memory access in 14 unaligned memory access in general. If those access are predictable, you 16 alignment trap can fixup misaligned access for the exception cases, but at 20 trap to SIGBUS any code performing unaligned access (good for debugging bad 21 code), or even fixup the access by software like for kernel code. The later 36 0 A user process performing an unaligned memory access 42 performing the unaligned access. This is of course 47 performing the unaligned access. 59 information on unaligned access occurrences plus the current mode of
|
| /linux/drivers/net/dsa/sja1105/ |
| H A D | sja1105_dynamic_config.c | 886 .access = OP_WRITE, 894 .access = (OP_READ | OP_WRITE | OP_DEL), 902 .access = (OP_READ | OP_WRITE | OP_VALID_ANYWAY), 910 .access = (OP_WRITE | OP_DEL), 919 .access = OP_WRITE, 927 .access = OP_WRITE, 935 .access = OP_WRITE, 943 .access = OP_WRITE, 951 .access = (OP_WRITE | OP_DEL), 959 .access = OP_WRITE, [all …]
|
| /linux/drivers/dax/ |
| H A D | Kconfig | 3 tristate "DAX: direct access to differentiated memory" 9 tristate "Device DAX: direct access mapping device" 12 Support raw access to differentiated (persistence, bandwidth, 20 tristate "PMEM DAX: direct access to persistent memory" 24 Support raw access to persistent memory. Note that this 31 tristate "HMEM DAX: direct access to 'specific purpose' memory" 48 tristate "CXL DAX: direct access to CXL RAM regions" 56 instance is created to access that unmapped-by-default address range. 57 Per usual it can remain as dedicated access via a device interface, or 70 Support access to persistent, or other performance
|
| /linux/include/rdma/ |
| H A D | ib_umem.h | 112 size_t size, int access); 165 int fd, int access, 170 int access); 175 int fd, int access); 187 int access) in ib_umem_get() argument 212 int access, in ib_umem_dmabuf_get() argument 219 size_t size, int fd, int access) in ib_umem_dmabuf_get_pinned() argument 228 int fd, int access) in ib_umem_dmabuf_get_pinned_with_dma_device() argument
|
| /linux/tools/testing/selftests/exec/ |
| H A D | check-exec.c | 71 FIXTURE(access) in FIXTURE() argument 77 FIXTURE_VARIANT(access) in FIXTURE_VARIANT() argument 84 FIXTURE_VARIANT_ADD(access, mount_exec_file_exec) { in FIXTURE_VARIANT_ADD() argument 91 FIXTURE_VARIANT_ADD(access, mount_exec_file_noexec) { in FIXTURE_VARIANT_ADD() argument 98 FIXTURE_VARIANT_ADD(access, mount_noexec_file_exec) { in FIXTURE_VARIANT_ADD() argument 105 FIXTURE_VARIANT_ADD(access, mount_noexec_file_noexec) { in FIXTURE_VARIANT_ADD() argument 119 FIXTURE_SETUP(access) in FIXTURE_SETUP() argument 173 FIXTURE_TEARDOWN_PARENT(access) in FIXTURE_TEARDOWN_PARENT() argument 267 TEST_F(access, regular_file_empty) in TEST_F() argument 277 TEST_F(access, regular_file_elf) in TEST_F() argument [all …]
|