Lines Matching refs:sdbt
60 static inline int require_table_link(const void *sdbt) in require_table_link() argument
62 return ((unsigned long)sdbt & ~PAGE_MASK) == CPUM_SF_SDBT_TL_OFFSET; in require_table_link()
88 unsigned long *sdbt; /* Sample-data-block-table origin */ member
175 return !!cpuhw->sfb.sdbt; in sf_buffer_available()
183 unsigned long *sdbt, *curr; in free_sampling_buffer() local
185 if (!sfb->sdbt) in free_sampling_buffer()
188 sdbt = sfb->sdbt; in free_sampling_buffer()
189 curr = sdbt; in free_sampling_buffer()
193 if (!*curr || !sdbt) in free_sampling_buffer()
199 if (sdbt) in free_sampling_buffer()
200 free_page((unsigned long)sdbt); in free_sampling_buffer()
203 if (curr == sfb->sdbt) in free_sampling_buffer()
206 sdbt = curr; in free_sampling_buffer()
219 static int alloc_sample_data_block(unsigned long *sdbt, gfp_t gfp_flags) in alloc_sample_data_block() argument
232 *sdbt = virt_to_phys((void *)sdb); in alloc_sample_data_block()
254 if (!sfb->sdbt || !sfb->tail) in realloc_sampling_buffer()
270 if (sfb->sdbt != get_next_sdbt(tail)) { in realloc_sampling_buffer()
272 __func__, (unsigned long)sfb->sdbt, in realloc_sampling_buffer()
319 *tail = virt_to_phys(sfb->sdbt) + 1; in realloc_sampling_buffer()
340 if (sfb->sdbt) in alloc_sampling_buffer()
344 sfb->sdbt = (unsigned long *)get_zeroed_page(GFP_KERNEL); in alloc_sampling_buffer()
345 if (!sfb->sdbt) in alloc_sampling_buffer()
353 sfb->tail = sfb->sdbt; in alloc_sampling_buffer()
354 *sfb->tail = virt_to_phys((void *)sfb->sdbt) + 1; in alloc_sampling_buffer()
384 if (!sfb->sdbt) in sfb_pending_allocs()
407 if (cpuhw->sfb.sdbt) in deallocate_buffers()
1127 static void hw_collect_samples(struct perf_event *event, unsigned long *sdbt, in hw_collect_samples() argument
1133 te = trailer_entry_ptr((unsigned long)sdbt); in hw_collect_samples()
1134 sample = (struct hws_basic_entry *)sdbt; in hw_collect_samples()
1197 unsigned long *sdbt, sdb; in hw_perf_event_update() local
1207 sdbt = (unsigned long *)TEAR_REG(hwc); in hw_perf_event_update()
1211 sdb = (unsigned long)phys_to_virt(*sdbt); in hw_perf_event_update()
1248 sdbt++; in hw_perf_event_update()
1249 if (is_link_entry(sdbt)) in hw_perf_event_update()
1250 sdbt = get_next_sdbt(sdbt); in hw_perf_event_update()
1253 TEAR_REG(hwc) = (unsigned long)sdbt; in hw_perf_event_update()
1659 sfb->sdbt = (unsigned long *)get_zeroed_page(GFP_KERNEL); in aux_buffer_setup()
1660 if (!sfb->sdbt) in aux_buffer_setup()
1662 aux->sdbt_index[sfb->num_sdbt++] = (unsigned long)sfb->sdbt; in aux_buffer_setup()
1663 tail = sfb->tail = sfb->sdbt; in aux_buffer_setup()
1687 *tail = virt_to_phys(sfb->sdbt) + 1; in aux_buffer_setup()
1798 if (!SAMPL_DIAG_MODE(&event->hw) && !cpuhw->sfb.sdbt) in cpumsf_pmu_add()
1814 cpuhw->lsctl.tear = virt_to_phys(cpuhw->sfb.sdbt); in cpumsf_pmu_add()
1815 cpuhw->lsctl.dear = *(unsigned long *)cpuhw->sfb.sdbt; in cpumsf_pmu_add()
1816 TEAR_REG(&event->hw) = (unsigned long)cpuhw->sfb.sdbt; in cpumsf_pmu_add()