Home
last modified time | relevance | path

Searched refs:walker (Results 1 - 25 of 40) sorted by relevance

12

/kernel/linux/linux-6.6/arch/x86/kvm/mmu/
H A Dpaging_tmpl.h78 * table walker.
199 struct guest_walker *walker, in update_accessed_dirty_bits()
212 for (level = walker->max_level; level >= walker->level; --level) { in update_accessed_dirty_bits()
213 pte = orig_pte = walker->ptes[level - 1]; in update_accessed_dirty_bits()
214 table_gfn = walker->table_gfn[level - 1]; in update_accessed_dirty_bits()
215 ptep_user = walker->ptep_user[level - 1]; in update_accessed_dirty_bits()
221 if (level == walker->level && write_fault && in update_accessed_dirty_bits()
246 if (unlikely(!walker->pte_writable[level - 1])) in update_accessed_dirty_bits()
254 walker in update_accessed_dirty_bits()
197 update_accessed_dirty_bits(struct kvm_vcpu *vcpu, struct kvm_mmu *mmu, struct guest_walker *walker, gpa_t addr, int write_fault) update_accessed_dirty_bits() argument
302 walk_addr_generic(struct guest_walker *walker, struct kvm_vcpu *vcpu, struct kvm_mmu *mmu, gpa_t addr, u64 access) walk_addr_generic() argument
525 walk_addr(struct guest_walker *walker, struct kvm_vcpu *vcpu, gpa_t addr, u64 access) walk_addr() argument
779 struct guest_walker walker; page_fault() local
872 struct guest_walker walker; gva_to_gpa() local
[all...]
/kernel/linux/linux-5.10/arch/x86/kvm/mmu/
H A Dpaging_tmpl.h83 * table walker.
234 struct guest_walker *walker, in update_accessed_dirty_bits()
247 for (level = walker->max_level; level >= walker->level; --level) { in update_accessed_dirty_bits()
248 pte = orig_pte = walker->ptes[level - 1]; in update_accessed_dirty_bits()
249 table_gfn = walker->table_gfn[level - 1]; in update_accessed_dirty_bits()
250 ptep_user = walker->ptep_user[level - 1]; in update_accessed_dirty_bits()
256 if (level == walker->level && write_fault && in update_accessed_dirty_bits()
281 if (unlikely(!walker->pte_writable[level - 1])) in update_accessed_dirty_bits()
289 walker in update_accessed_dirty_bits()
232 update_accessed_dirty_bits(struct kvm_vcpu *vcpu, struct kvm_mmu *mmu, struct guest_walker *walker, gpa_t addr, int write_fault) update_accessed_dirty_bits() argument
308 walk_addr_generic(struct guest_walker *walker, struct kvm_vcpu *vcpu, struct kvm_mmu *mmu, gpa_t addr, u32 access) walk_addr_generic() argument
510 walk_addr(struct guest_walker *walker, struct kvm_vcpu *vcpu, gpa_t addr, u32 access) walk_addr() argument
518 walk_addr_nested(struct guest_walker *walker, struct kvm_vcpu *vcpu, gva_t addr, u32 access) walk_addr_nested() argument
749 is_self_change_mapping(struct kvm_vcpu *vcpu, struct guest_walker *walker, bool user_fault, bool *write_fault_to_shadow_pgtable) is_self_change_mapping() argument
790 struct guest_walker walker; page_fault() local
964 struct guest_walker walker; gva_to_gpa() local
985 struct guest_walker walker; gva_to_gpa_nested() local
[all...]
/kernel/linux/linux-6.6/arch/arm64/kvm/hyp/
H A Dpgtable.c63 struct kvm_pgtable_walker *walker; member
179 struct kvm_pgtable_walker *walker = data->walker; in kvm_pgtable_visitor_cb() local
183 return walker->cb(ctx, visit); in kvm_pgtable_visitor_cb()
186 static bool kvm_pgtable_walk_continue(const struct kvm_pgtable_walker *walker, in kvm_pgtable_walk_continue() argument
200 return !(walker->flags & KVM_PGTABLE_WALK_HANDLE_FAULT); in kvm_pgtable_walk_continue()
212 enum kvm_pgtable_walk_flags flags = data->walker->flags; in __kvm_pgtable_visit()
213 kvm_pte_t *ptep = kvm_dereference_pteref(data->walker, pteref); in __kvm_pgtable_visit()
217 .arg = data->walker->arg, in __kvm_pgtable_visit()
241 * Reload the page table after invoking the walker callbac in __kvm_pgtable_visit()
320 kvm_pgtable_walk(struct kvm_pgtable *pgt, u64 addr, u64 size, struct kvm_pgtable_walker *walker) kvm_pgtable_walk() argument
361 struct kvm_pgtable_walker walker = { kvm_pgtable_get_leaf() local
491 struct kvm_pgtable_walker walker = { kvm_pgtable_hyp_map() local
550 struct kvm_pgtable_walker walker = { kvm_pgtable_hyp_unmap() local
599 struct kvm_pgtable_walker walker = { kvm_pgtable_hyp_destroy() local
1045 struct kvm_pgtable_walker walker = { kvm_pgtable_stage2_map() local
1076 struct kvm_pgtable_walker walker = { kvm_pgtable_stage2_set_owner() local
1136 struct kvm_pgtable_walker walker = { kvm_pgtable_stage2_unmap() local
1205 struct kvm_pgtable_walker walker = { stage2_update_leaf_attrs() local
1285 struct kvm_pgtable_walker walker = { kvm_pgtable_stage2_test_clear_young() local
1339 struct kvm_pgtable_walker walker = { kvm_pgtable_stage2_flush() local
1362 struct kvm_pgtable_walker walker = { kvm_pgtable_stage2_create_unlinked() local
1499 struct kvm_pgtable_walker walker = { kvm_pgtable_stage2_split() local
1564 struct kvm_pgtable_walker walker = { kvm_pgtable_stage2_destroy() local
1579 struct kvm_pgtable_walker walker = { kvm_pgtable_stage2_free_unlinked() local
[all...]
/kernel/linux/linux-6.6/security/landlock/
H A Dptrace.c35 const struct landlock_hierarchy *walker; in domain_scope_le() local
41 for (walker = child->hierarchy; walker; walker = walker->parent) { in domain_scope_le()
42 if (walker == parent->hierarchy) in domain_scope_le()
/kernel/linux/linux-6.6/arch/arm64/include/asm/
H A Dkvm_pgtable.h116 * The @arg parameter can be used by the walker
275 static inline kvm_pte_t *kvm_dereference_pteref(struct kvm_pgtable_walker *walker, in kvm_dereference_pteref() argument
281 static inline int kvm_pgtable_walk_begin(struct kvm_pgtable_walker *walker) in kvm_pgtable_walk_begin() argument
287 if (walker->flags & KVM_PGTABLE_WALK_SHARED) in kvm_pgtable_walk_begin()
293 static inline void kvm_pgtable_walk_end(struct kvm_pgtable_walker *walker) {} in kvm_pgtable_walk_end() argument
304 static inline kvm_pte_t *kvm_dereference_pteref(struct kvm_pgtable_walker *walker, in kvm_dereference_pteref() argument
307 return rcu_dereference_check(pteref, !(walker->flags & KVM_PGTABLE_WALK_SHARED)); in kvm_dereference_pteref()
310 static inline int kvm_pgtable_walk_begin(struct kvm_pgtable_walker *walker) in kvm_pgtable_walk_begin() argument
312 if (walker->flags & KVM_PGTABLE_WALK_SHARED) in kvm_pgtable_walk_begin()
318 static inline void kvm_pgtable_walk_end(struct kvm_pgtable_walker *walker) in kvm_pgtable_walk_end() argument
[all...]
/kernel/linux/linux-5.10/arch/arm64/kvm/hyp/
H A Dpgtable.c50 struct kvm_pgtable_walker *walker; member
196 struct kvm_pgtable_walker *walker = data->walker; in kvm_pgtable_visitor_cb() local
197 return walker->cb(addr, data->end, level, ptep, flag, walker->arg); in kvm_pgtable_visitor_cb()
210 enum kvm_pgtable_walk_flags flags = data->walker->flags; in __kvm_pgtable_visit()
295 struct kvm_pgtable_walker *walker) in kvm_pgtable_walk()
301 .walker = walker, in kvm_pgtable_walk()
381 struct kvm_pgtable_walker walker in kvm_pgtable_hyp_map() local
294 kvm_pgtable_walk(struct kvm_pgtable *pgt, u64 addr, u64 size, struct kvm_pgtable_walker *walker) kvm_pgtable_walk() argument
420 struct kvm_pgtable_walker walker = { kvm_pgtable_hyp_destroy() local
627 struct kvm_pgtable_walker walker = { kvm_pgtable_stage2_map() local
700 struct kvm_pgtable_walker walker = { kvm_pgtable_stage2_unmap() local
753 struct kvm_pgtable_walker walker = { stage2_update_leaf_attrs() local
845 struct kvm_pgtable_walker walker = { kvm_pgtable_stage2_flush() local
898 struct kvm_pgtable_walker walker = { kvm_pgtable_stage2_destroy() local
[all...]
/kernel/linux/linux-5.10/fs/ecryptfs/
H A Dsuper.c137 struct ecryptfs_global_auth_tok *walker; in ecryptfs_show_options() local
140 list_for_each_entry(walker, in ecryptfs_show_options()
143 if (walker->flags & ECRYPTFS_AUTH_TOK_FNEK) in ecryptfs_show_options()
144 seq_printf(m, ",ecryptfs_fnek_sig=%s", walker->sig); in ecryptfs_show_options()
146 seq_printf(m, ",ecryptfs_sig=%s", walker->sig); in ecryptfs_show_options()
H A Dkeystore.c489 struct ecryptfs_global_auth_tok *walker; in ecryptfs_find_global_auth_tok_for_sig() local
495 list_for_each_entry(walker, in ecryptfs_find_global_auth_tok_for_sig()
498 if (memcmp(walker->sig, sig, ECRYPTFS_SIG_SIZE_HEX)) in ecryptfs_find_global_auth_tok_for_sig()
501 if (walker->flags & ECRYPTFS_AUTH_TOK_INVALID) { in ecryptfs_find_global_auth_tok_for_sig()
506 rc = key_validate(walker->global_auth_tok_key); in ecryptfs_find_global_auth_tok_for_sig()
513 down_write(&(walker->global_auth_tok_key->sem)); in ecryptfs_find_global_auth_tok_for_sig()
515 walker->global_auth_tok_key, auth_tok); in ecryptfs_find_global_auth_tok_for_sig()
519 (*auth_tok_key) = walker->global_auth_tok_key; in ecryptfs_find_global_auth_tok_for_sig()
526 up_write(&(walker->global_auth_tok_key->sem)); in ecryptfs_find_global_auth_tok_for_sig()
529 walker in ecryptfs_find_global_auth_tok_for_sig()
[all...]
/kernel/linux/linux-6.6/fs/ecryptfs/
H A Dsuper.c137 struct ecryptfs_global_auth_tok *walker; in ecryptfs_show_options() local
140 list_for_each_entry(walker, in ecryptfs_show_options()
143 if (walker->flags & ECRYPTFS_AUTH_TOK_FNEK) in ecryptfs_show_options()
144 seq_printf(m, ",ecryptfs_fnek_sig=%s", walker->sig); in ecryptfs_show_options()
146 seq_printf(m, ",ecryptfs_sig=%s", walker->sig); in ecryptfs_show_options()
H A Dkeystore.c489 struct ecryptfs_global_auth_tok *walker; in ecryptfs_find_global_auth_tok_for_sig() local
495 list_for_each_entry(walker, in ecryptfs_find_global_auth_tok_for_sig()
498 if (memcmp(walker->sig, sig, ECRYPTFS_SIG_SIZE_HEX)) in ecryptfs_find_global_auth_tok_for_sig()
501 if (walker->flags & ECRYPTFS_AUTH_TOK_INVALID) { in ecryptfs_find_global_auth_tok_for_sig()
506 rc = key_validate(walker->global_auth_tok_key); in ecryptfs_find_global_auth_tok_for_sig()
513 down_write(&(walker->global_auth_tok_key->sem)); in ecryptfs_find_global_auth_tok_for_sig()
515 walker->global_auth_tok_key, auth_tok); in ecryptfs_find_global_auth_tok_for_sig()
519 (*auth_tok_key) = walker->global_auth_tok_key; in ecryptfs_find_global_auth_tok_for_sig()
526 up_write(&(walker->global_auth_tok_key->sem)); in ecryptfs_find_global_auth_tok_for_sig()
529 walker in ecryptfs_find_global_auth_tok_for_sig()
[all...]
/kernel/linux/linux-5.10/security/yama/
H A Dyama_lsm.c276 struct task_struct *walker = child; in task_is_descendant() local
284 while (walker->pid > 0) { in task_is_descendant()
285 if (!thread_group_leader(walker)) in task_is_descendant()
286 walker = rcu_dereference(walker->group_leader); in task_is_descendant()
287 if (walker == parent) { in task_is_descendant()
291 walker = rcu_dereference(walker->real_parent); in task_is_descendant()
/kernel/linux/linux-6.6/security/yama/
H A Dyama_lsm.c276 struct task_struct *walker = child; in task_is_descendant() local
284 while (walker->pid > 0) { in task_is_descendant()
285 if (!thread_group_leader(walker)) in task_is_descendant()
286 walker = rcu_dereference(walker->group_leader); in task_is_descendant()
287 if (walker == parent) { in task_is_descendant()
291 walker = rcu_dereference(walker->real_parent); in task_is_descendant()
/kernel/linux/linux-5.10/net/sched/
H A Dsch_dsmark.c166 static void dsmark_walk(struct Qdisc *sch, struct qdisc_walker *walker) in dsmark_walk() argument
171 pr_debug("%s(sch %p,[qdisc %p],walker %p)\n", in dsmark_walk()
172 __func__, sch, p, walker); in dsmark_walk()
174 if (walker->stop) in dsmark_walk()
180 if (walker->count >= walker->skip) { in dsmark_walk()
181 if (walker->fn(sch, i + 1, walker) < 0) { in dsmark_walk()
182 walker->stop = 1; in dsmark_walk()
187 walker in dsmark_walk()
[all...]
H A Dsch_cbs.c519 static void cbs_walk(struct Qdisc *sch, struct qdisc_walker *walker) in cbs_walk() argument
521 if (!walker->stop) { in cbs_walk()
522 if (walker->count >= walker->skip) { in cbs_walk()
523 if (walker->fn(sch, 1, walker) < 0) { in cbs_walk()
524 walker->stop = 1; in cbs_walk()
528 walker->count++; in cbs_walk()
H A Dsch_atm.c347 static void atm_tc_walk(struct Qdisc *sch, struct qdisc_walker *walker) in atm_tc_walk() argument
352 pr_debug("atm_tc_walk(sch %p,[qdisc %p],walker %p)\n", sch, p, walker); in atm_tc_walk()
353 if (walker->stop) in atm_tc_walk()
356 if (walker->count >= walker->skip && in atm_tc_walk()
357 walker->fn(sch, (unsigned long)flow, walker) < 0) { in atm_tc_walk()
358 walker->stop = 1; in atm_tc_walk()
361 walker in atm_tc_walk()
[all...]
H A Dsch_sfb.c659 static void sfb_walk(struct Qdisc *sch, struct qdisc_walker *walker) in sfb_walk() argument
661 if (!walker->stop) { in sfb_walk()
662 if (walker->count >= walker->skip) in sfb_walk()
663 if (walker->fn(sch, 1, walker) < 0) { in sfb_walk()
664 walker->stop = 1; in sfb_walk()
667 walker->count++; in sfb_walk()
H A Dsch_tbf.c564 static void tbf_walk(struct Qdisc *sch, struct qdisc_walker *walker) in tbf_walk() argument
566 if (!walker->stop) { in tbf_walk()
567 if (walker->count >= walker->skip) in tbf_walk()
568 if (walker->fn(sch, 1, walker) < 0) { in tbf_walk()
569 walker->stop = 1; in tbf_walk()
572 walker->count++; in tbf_walk()
H A Dsch_red.c522 static void red_walk(struct Qdisc *sch, struct qdisc_walker *walker) in red_walk() argument
524 if (!walker->stop) { in red_walk()
525 if (walker->count >= walker->skip) in red_walk()
526 if (walker->fn(sch, 1, walker) < 0) { in red_walk()
527 walker->stop = 1; in red_walk()
530 walker->count++; in red_walk()
H A Dsch_netem.c1248 static void netem_walk(struct Qdisc *sch, struct qdisc_walker *walker) in netem_walk() argument
1250 if (!walker->stop) { in netem_walk()
1251 if (walker->count >= walker->skip) in netem_walk()
1252 if (walker->fn(sch, 1, walker) < 0) { in netem_walk()
1253 walker->stop = 1; in netem_walk()
1256 walker->count++; in netem_walk()
/kernel/linux/linux-5.10/lib/
H A Drhashtable.c316 struct rhashtable_walker *walker; in rhashtable_rehash_table() local
335 list_for_each_entry(walker, &old_tbl->walkers, list) in rhashtable_rehash_table()
336 walker->tbl = NULL; in rhashtable_rehash_table()
674 iter->walker.tbl = in rhashtable_walk_enter()
676 list_add(&iter->walker.list, &iter->walker.tbl->walkers); in rhashtable_walk_enter()
690 if (iter->walker.tbl) in rhashtable_walk_exit()
691 list_del(&iter->walker.list); in rhashtable_walk_exit()
723 if (iter->walker.tbl) in __acquires()
724 list_del(&iter->walker in __acquires()
[all...]
/kernel/linux/linux-6.6/lib/
H A Drhashtable.c319 struct rhashtable_walker *walker; in rhashtable_rehash_table() local
338 list_for_each_entry(walker, &old_tbl->walkers, list) in rhashtable_rehash_table()
339 walker->tbl = NULL; in rhashtable_rehash_table()
678 iter->walker.tbl = in rhashtable_walk_enter()
680 list_add(&iter->walker.list, &iter->walker.tbl->walkers); in rhashtable_walk_enter()
694 if (iter->walker.tbl) in rhashtable_walk_exit()
695 list_del(&iter->walker.list); in rhashtable_walk_exit()
727 if (iter->walker.tbl) in __acquires()
728 list_del(&iter->walker in __acquires()
[all...]
/kernel/linux/linux-6.6/arch/arm64/kvm/hyp/nvhe/
H A Dsetup.c228 struct kvm_pgtable_walker walker = { in fix_host_ownership() local
238 ret = kvm_pgtable_walk(&pkvm_pgtable, start, reg->size, &walker); in fix_host_ownership()
248 struct kvm_pgtable_walker walker = { in fix_hyp_pgtable_refcnt() local
255 &walker); in fix_hyp_pgtable_refcnt()
/kernel/linux/linux-5.10/include/linux/
H A Drhashtable-types.h78 * @lock: Spin lock to protect walker list
102 * struct rhashtable_walker - Hash table walker
116 * @walker: Associated rhashtable walker
124 struct rhashtable_walker walker; member
/kernel/linux/linux-6.6/include/linux/
H A Drhashtable-types.h78 * @lock: Spin lock to protect walker list
102 * struct rhashtable_walker - Hash table walker
116 * @walker: Associated rhashtable walker
124 struct rhashtable_walker walker; member
/kernel/linux/linux-5.10/arch/arm64/include/asm/
H A Dkvm_pgtable.h290 * @walker: Walker callback description.
295 * The walker will walk the page-table entries corresponding to the input
296 * address range specified, visiting entries according to the walker flags.
298 * after invoking the walker callback, allowing the walker to descend into
301 * Returning a negative error code from the walker callback function will
307 struct kvm_pgtable_walker *walker);

Completed in 23 milliseconds

12