Lines Matching refs:meta

99 static void kfence_print_stack(struct seq_file *seq, const struct kfence_metadata *meta,  in kfence_print_stack()  argument
102 const struct kfence_track *track = show_alloc ? &meta->alloc_track : &meta->free_track; in kfence_print_stack()
116 void kfence_print_object(struct seq_file *seq, const struct kfence_metadata *meta) in kfence_print_object() argument
118 const int size = abs(meta->size); in kfence_print_object()
119 const unsigned long start = meta->addr; in kfence_print_object()
120 const struct kmem_cache *const cache = meta->cache; in kfence_print_object()
122 lockdep_assert_held(&meta->lock); in kfence_print_object()
124 if (meta->state == KFENCE_OBJECT_UNUSED) { in kfence_print_object()
125 seq_con_printf(seq, "kfence-#%td unused\n", meta - kfence_metadata); in kfence_print_object()
132 meta - kfence_metadata, (void *)start, (void *)(start + size - 1), size, in kfence_print_object()
133 (cache && cache->name) ? cache->name : "<destroyed>", meta->alloc_track.pid); in kfence_print_object()
134 kfence_print_stack(seq, meta, true); in kfence_print_object()
136 if (meta->state == KFENCE_OBJECT_FREED) { in kfence_print_object()
137 seq_con_printf(seq, "\nfreed by task %d:\n", meta->free_track.pid); in kfence_print_object()
138 kfence_print_stack(seq, meta, false); in kfence_print_object()
147 const struct kfence_metadata *meta) in print_diff_canary() argument
153 end = (const u8 *)(address < meta->addr ? min(show_until_addr, meta->addr) in print_diff_canary()
174 const struct kfence_metadata *meta, enum kfence_error_type type) in kfence_report_error() argument
177 const ptrdiff_t object_index = meta ? meta - kfence_metadata : -1; in kfence_report_error()
189 if (WARN_ON(type != KFENCE_ERROR_INVALID && !meta)) in kfence_report_error()
192 if (meta) in kfence_report_error()
193 lockdep_assert_held(&meta->lock); in kfence_report_error()
209 const bool left_of_object = address < meta->addr; in kfence_report_error()
215 left_of_object ? meta->addr - address : address - meta->addr, in kfence_report_error()
228 print_diff_canary(address, 16, meta); in kfence_report_error()
247 if (meta) { in kfence_report_error()
249 kfence_print_object(NULL, meta); in kfence_report_error()