| /linux/drivers/net/ethernet/freescale/fman/ |
| H A D | fman_keygen.c | 24 /* Select Scheme Value Register */ 56 /* Scheme Registers bit field masks */ 133 /* Scheme Configuration RAM Registers */ 146 /* 0x140: KeyGen Scheme Entry Statistic Packet Counter */ 147 u32 kgse_dv0; /* 0x144: KeyGen Scheme Entry Default Value 0 */ 148 u32 kgse_dv1; /* 0x148: KeyGen Scheme Entry Default Value 1 */ 150 /* 0x14C: KeyGen Scheme Entry Coarse Classification Bit*/ 151 u32 kgse_mv; /* 0x150: KeyGen Scheme Entry Match vector */ 152 u32 kgse_om; /* 0x154: KeyGen Scheme Entry Operation Mode bits */ 154 /* 0x158: KeyGen Scheme Entry Virtual Storage Profile */ [all …]
|
| /linux/mm/damon/ |
| H A D | sysfs-schemes.c | 14 * scheme region directory 128 * scheme regions directory 1324 * scheme/weights directory 1898 * scheme directory 1968 struct damon_sysfs_scheme *scheme = kmalloc(sizeof(*scheme), in damon_sysfs_scheme_alloc() local 1971 if (!scheme) in damon_sysfs_scheme_alloc() 1973 scheme->kobj = (struct kobject){}; in damon_sysfs_scheme_alloc() 1974 scheme->action = action; in damon_sysfs_scheme_alloc() 1975 scheme->apply_interval_us = apply_interval_us; in damon_sysfs_scheme_alloc() 1976 scheme->target_nid = NUMA_NO_NODE; in damon_sysfs_scheme_alloc() [all …]
|
| H A D | paddr.c | 126 static bool damos_pa_filter_out(struct damos *scheme, struct folio *folio) in damos_pa_filter_out() argument 130 if (scheme->core_filters_allowed) in damos_pa_filter_out() 133 damos_for_each_ops_filter(filter, scheme) { in damos_pa_filter_out() 137 return scheme->ops_filters_default_reject; in damos_pa_filter_out() 322 struct damos *scheme, unsigned long *sz_filter_passed) in damon_pa_apply_scheme() argument 326 switch (scheme->action) { in damon_pa_apply_scheme() 328 return damon_pa_pageout(r, aunit, scheme, sz_filter_passed); in damon_pa_apply_scheme() 330 return damon_pa_mark_accessed(r, aunit, scheme, in damon_pa_apply_scheme() 333 return damon_pa_deactivate_pages(r, aunit, scheme, in damon_pa_apply_scheme() 337 return damon_pa_migrate(r, aunit, scheme, sz_filter_passed); in damon_pa_apply_scheme() [all …]
|
| H A D | core.c | 380 struct damos *scheme; in damon_new_scheme() local 382 scheme = kmalloc(sizeof(*scheme), GFP_KERNEL); in damon_new_scheme() 383 if (!scheme) in damon_new_scheme() 385 scheme->pattern = *pattern; in damon_new_scheme() 386 scheme->action = action; in damon_new_scheme() 387 scheme->apply_interval_us = apply_interval_us; in damon_new_scheme() 393 scheme->next_apply_sis = 0; in damon_new_scheme() 394 scheme->walk_completed = false; in damon_new_scheme() 395 INIT_LIST_HEAD(&scheme->core_filters); in damon_new_scheme() 396 INIT_LIST_HEAD(&scheme->ops_filters); in damon_new_scheme() [all …]
|
| H A D | vaddr.c | 611 static bool damos_va_filter_out(struct damos *scheme, struct folio *folio, in damos_va_filter_out() argument 618 if (scheme->core_filters_allowed) in damos_va_filter_out() 621 damos_for_each_ops_filter(filter, scheme) { in damos_va_filter_out() 625 * vaddr scheme, we have direct access to the page tables, so in damos_va_filter_out() 637 return scheme->ops_filters_default_reject; in damos_va_filter_out() 642 struct damos *scheme; member 705 struct damos *s = priv->scheme; in damos_va_migrate_pmd_entry() 823 priv.scheme = s; in damos_va_migrate() 854 struct damos *scheme; member 868 struct damos *s = priv->scheme; in damos_va_stat_pmd_entry() [all …]
|
| H A D | reclaim.c | 195 struct damos *scheme; in damon_reclaim_apply_parameters() local 223 scheme = damon_reclaim_new_scheme(); in damon_reclaim_apply_parameters() 224 if (!scheme) in damon_reclaim_apply_parameters() 226 damon_set_schemes(param_ctx, &scheme, 1); in damon_reclaim_apply_parameters() 233 damos_add_quota_goal(&scheme->quota, goal); in damon_reclaim_apply_parameters() 241 damos_add_quota_goal(&scheme->quota, goal); in damon_reclaim_apply_parameters() 248 damos_add_filter(scheme, filter); in damon_reclaim_apply_parameters()
|
| /linux/tools/testing/selftests/damon/ |
| H A D | _damon_sysfs.py | 45 scheme = None variable in DamosAccessPattern 60 return os.path.join(self.scheme.sysfs_dir(), 'access_pattern') 137 scheme = None # owner scheme variable in DamosQuota 154 return os.path.join(self.scheme.sysfs_dir(), 'quotas') 202 scheme = None # owner scheme variable in DamosWatermarks 212 return os.path.join(self.scheme.sysfs_dir(), 'watermarks') 299 scheme = None # owner scheme variable in DamosFilters 309 return os.path.join(self.scheme.sysfs_dir(), self.name) 346 scheme = None # owner scheme variable in DamosDests 355 return os.path.join(self.scheme.sysfs_dir(), 'dests') [all …]
|
| H A D | sysfs.py | 112 def assert_scheme_committed(scheme, dump): argument 113 assert_access_pattern_committed(scheme.access_pattern, dump['pattern']) 126 assert_true(dump['action'] == action_val[scheme.action], 'action', dump) 127 assert_true(dump['apply_interval_us'] == scheme. apply_interval_us, 129 assert_true(dump['target_nid'] == scheme.target_nid, 'target_nid', dump) 130 assert_migrate_dests_committed(scheme.dests, dump['migrate_dests']) 131 assert_quota_committed(scheme.quota, dump['quota']) 132 assert_watermarks_committed(scheme.watermarks, dump['wmarks']) 134 for idx, f in enumerate(scheme.core_filters.filters): 136 for idx, f in enumerate(scheme.ops_filters.filters): [all …]
|
| H A D | damos_apply_interval.py | 53 print('scheme(s) are not tried') 56 # Because the second scheme was having the apply interval that is ten times 57 # lower than that of the first scheme, the second scheme should be tried 58 # about ten times more frequently than the first scheme. For possible
|
| H A D | damon_nr_regions.py | 49 scheme = kdamonds.kdamonds[0].contexts[0].schemes[0] 50 if scheme.tried_regions is None: 55 nr_tried_regions = len(scheme.tried_regions) 128 scheme = kdamonds.kdamonds[0].contexts[0].schemes[0] 129 if scheme.tried_regions is None: 134 nr_tried_regions = len(scheme.tried_regions)
|
| H A D | sysfs_update_removed_scheme_dir.sh | 21 # start DAMON with a scheme 35 # remove scheme sysfs dir 38 # try to update stat of already removed scheme sysfs dir 47 # try to update tried regions of already removed scheme sysfs dir
|
| H A D | damos_tried_regions.py | 39 scheme = kdamonds.kdamonds[0].contexts[0].schemes[0] 40 if scheme.tried_regions is None: 45 nr_tried_regions = len(scheme.tried_regions)
|
| H A D | damos_quota.py | 49 scheme = kdamonds.kdamonds[0].contexts[0].schemes[0] 50 wss_collected.append(scheme.tried_bytes) 51 nr_quota_exceeds = scheme.stats.qt_exceeds
|
| /linux/include/linux/ |
| H A D | damon.h | 115 * Operation Scheme. 173 * struct damos_quota_goal - DAMOS scheme quota auto-tuning goal. 213 * struct damos_quota - Controls the aggressiveness of the given scheme. 215 * @ms: Maximum milliseconds that the scheme can use. 238 * the scheme's action. DAMON then compares it against &sz and uses smaller 248 * For selecting regions within the quota, DAMON prioritizes current scheme's 286 * @DAMOS_WMARK_NONE: Ignore the watermarks of the given scheme. 297 * struct damos_watermarks - Controls when a given scheme should be activated. 304 * If &metric is &DAMOS_WMARK_NONE, the scheme is always active. Being active 305 * means DAMON does monitoring and applying the action of the scheme to [all …]
|
| /linux/Documentation/ABI/testing/ |
| H A D | sysfs-bus-iio-light-isl29018 | 9 Scheme 0, makes full n (4, 8, 12, 16) bits (unsigned) proximity 10 detection. The range of Scheme 0 proximity count is from 0 to 11 2^n. Logic 1 of this bit, Scheme 1, makes n-1 (3, 7, 11, 15) 13 range of Scheme 1 proximity count is from -2^(n-1) to 2^(n-1). 15 Scheme 0 has wider dynamic range, Scheme 1 proximity detection
|
| H A D | sysfs-kernel-mm-damon | 33 'tried_regions' directory of every scheme directory of this 200 directories for controlling each DAMON-based operation scheme 207 of the scheme. 219 the scheme in microseconds. Reading this file returns the 226 size of the scheme's target regions in bytes. 232 size of the scheme's target regions in bytes. 238 'nr_accesses' of the scheme's target regions. 244 'nr_accesses' of the scheme's target regions. 250 'age' of the scheme's target regions. 256 'age' of the scheme's target regions. [all …]
|
| /linux/Documentation/admin-guide/mm/damon/ |
| H A D | usage.rst | 147 DAMON-based operation scheme of the kdamond. For details of the stats, 149 - ``update_schemes_tried_regions``: Update the DAMON-based operation scheme 150 action tried regions directory for each DAMON-based operation scheme of the 151 kdamond. For details of the DAMON-based operation scheme action tried 156 - ``clear_schemes_tried_regions``: Clear the DAMON-based operating scheme 157 action tried regions directory for each DAMON-based operation scheme of the 160 ``effective_bytes`` files for each DAMON-based operation scheme of the 328 to ``N-1``. Each directory represents each DAMON-based operation scheme. 335 In each scheme directory, eight directories (``access_pattern``, ``quotas``, 340 The ``action`` file is for setting and getting the scheme's :ref:`action [all …]
|
| /linux/drivers/atm/ |
| H A D | fore200e.c | 285 int scheme, magn, nbr; in fore200e_free_rx_buf() local 288 for (scheme = 0; scheme < BUFFER_SCHEME_NBR; scheme++) { in fore200e_free_rx_buf() 291 if ((buffer = fore200e->host_bsq[ scheme ][ magn ].buffer) != NULL) { in fore200e_free_rx_buf() 293 for (nbr = 0; nbr < fore200e_rx_buf_nbr[ scheme ][ magn ]; nbr++) { in fore200e_free_rx_buf() 309 int scheme, magn; in fore200e_uninit_bs_queue() local 311 for (scheme = 0; scheme < BUFFER_SCHEME_NBR; scheme++) { in fore200e_uninit_bs_queue() 314 struct chunk* status = &fore200e->host_bsq[ scheme ][ magn ].status; in fore200e_uninit_bs_queue() 315 struct chunk* rbd_block = &fore200e->host_bsq[ scheme ][ magn ].rbd_block; in fore200e_uninit_bs_queue() 857 int bsq_audit(int where, struct host_bsq* bsq, int scheme, int magn) in bsq_audit() argument 867 where, scheme, magn, buffer->index); in bsq_audit() [all …]
|
| /linux/Documentation/mm/damon/ |
| H A D | design.rst | 216 This scheme, however, cannot preserve the quality of the output if the 494 regions that the scheme is having an interest in. 508 region having the access pattern of interest is found, applying the scheme's 536 scheme action. In contrast, the colder regions would be deprioritized for huge 537 page collapse scheme action. Hence, the prioritization mechanisms for each 563 aggressiveness (the quota) of the corresponding scheme. For example, if DAMOS 609 memory is guaranteed, running a scheme for proactive reclamation would only 617 high watermark or below the low watermark, the scheme is deactivated. If the 618 metric becomes below the mid watermark but above the low watermark, the scheme 642 number of filters for each scheme. Each filter specifies [all …]
|
| /linux/drivers/media/usb/pvrusb2/ |
| H A D | pvrusb2-devattr.h | 111 /* Signal routing scheme used by device, contains one of 113 encounter them. This is an arbitrary integer scheme id; its 119 /* Indicates scheme for controlling device's LED (if any). The 124 /* Control scheme to use if there is a digital tuner. This 126 integer scheme id; its meaning is contained entirely within the 155 /* Indicate IR scheme of hardware. If not set, then it is assumed
|
| /linux/samples/damon/ |
| H A D | mtier.c | 79 struct damos *scheme; in damon_sample_mtier_build_ctx() local 128 scheme = damon_new_scheme( in damon_sample_mtier_build_ctx() 151 if (!scheme) in damon_sample_mtier_build_ctx() 153 damon_set_schemes(ctx, &scheme, 1); in damon_sample_mtier_build_ctx() 161 damos_add_quota_goal(&scheme->quota, quota_goal); in damon_sample_mtier_build_ctx() 165 damos_add_filter(scheme, filter); in damon_sample_mtier_build_ctx()
|
| H A D | prcl.c | 63 struct damos *scheme; in damon_sample_prcl_start() local 89 scheme = damon_new_scheme( in damon_sample_prcl_start() 102 if (!scheme) { in damon_sample_prcl_start() 106 damon_set_schemes(ctx, &scheme, 1); in damon_sample_prcl_start()
|
| /linux/mm/damon/tests/ |
| H A D | core-kunit.h | 876 static void damos_test_help_initailize_scheme(struct damos *scheme) in damos_test_help_initailize_scheme() argument 878 INIT_LIST_HEAD(&scheme->quota.goals); in damos_test_help_initailize_scheme() 879 INIT_LIST_HEAD(&scheme->core_filters); in damos_test_help_initailize_scheme() 880 INIT_LIST_HEAD(&scheme->ops_filters); in damos_test_help_initailize_scheme() 1141 struct damos scheme; in damon_test_set_filters_default_reject() local 1144 INIT_LIST_HEAD(&scheme.core_filters); in damon_test_set_filters_default_reject() 1145 INIT_LIST_HEAD(&scheme.ops_filters); in damon_test_set_filters_default_reject() 1147 damos_set_filters_default_reject(&scheme); in damon_test_set_filters_default_reject() 1152 KUNIT_EXPECT_EQ(test, scheme.core_filters_default_reject, false); in damon_test_set_filters_default_reject() 1153 KUNIT_EXPECT_EQ(test, scheme.ops_filters_default_reject, false); in damon_test_set_filters_default_reject() [all …]
|
| /linux/drivers/iio/light/ |
| H A D | isl29018.c | 225 static int isl29018_read_proximity_ir(struct isl29018_chip *chip, int scheme, in isl29018_read_proximity_ir() argument 233 /* Do proximity sensing with required scheme */ in isl29018_read_proximity_ir() 236 scheme << ISL29018_CMD2_SCHEME_SHIFT); in isl29018_read_proximity_ir() 247 if (scheme == 1) { in isl29018_read_proximity_ir() 308 * Proximity Sensing Scheme: Bit 7. This bit programs the function 309 * of the proximity detection. Logic 0 of this bit, Scheme 0, makes 311 * of Scheme 0 proximity count is from 0 to 2^n. Logic 1 of this bit, 312 * Scheme 1, makes n-1 (3, 7, 11, 15) bits (2's complementary) 313 * proximity_less_ambient detection. The range of Scheme 1 315 * for resolutions less than 16. While Scheme 0 has wider dynamic [all …]
|
| /linux/arch/arm/mach-omap2/ |
| H A D | omap_hwmod_common_data.c | 24 * struct omap_hwmod_sysc_type1 - TYPE1 sysconfig scheme. 40 * struct omap_hwmod_sysc_type2 - TYPE2 sysconfig scheme. 54 * struct omap_hwmod_sysc_type3 - TYPE3 sysconfig scheme.
|