Lines Matching full:sample

43 /* Minimum number of sample-data-block-tables:
45 * A single table contains up to 511 pointers to sample-data-blocks.
49 /* Number of sample-data-blocks per sample-data-block-table (SDBT):
68 * the number of sample-data-block-tables into account. Note that these
88 unsigned long *sdbt; /* Sample-data-block-table origin */
90 unsigned long num_sdb; /* Number of sample-data-blocks */
91 unsigned long num_sdbt; /* Number of sample-data-block-tables */
92 unsigned long *tail; /* last sample-data-block-table */
132 /* Return pointer to trailer entry of an sample data block */
145 * Return true if the entry in the sample data block table (sdbt)
212 /* Allocate and initialize sample-data-block */ in alloc_sample_data_block()
219 /* Link SDB into the sample-data-block-table */ in alloc_sample_data_block()
228 * Allocates new sample-data-blocks and adds them to the specified sampling
282 /* Allocate a new sample-data-block. in realloc_sampling_buffer()
317 * specified number of sample-data-blocks (SDB). For each allocation,
318 * a 4K page is used. The number of sample-data-block-tables (SDBT)
331 /* Allocate the sample-data-block-table origin */ in alloc_sampling_buffer()
344 /* Allocate requested number of sample-data-blocks */ in alloc_sampling_buffer()
413 * sample-data-blocks (SDB). This is done per SDB. This in allocate_buffers()
416 * be 2 to 3 SBDs available for sample processing. in allocate_buffers()
428 * 4. Compute the number of sample-data-block-tables (SDBT) and in allocate_buffers()
460 * buffer. Accept up to 5% sample data loss. in compute_sfb_extent()
462 * sample-data-blocks. in compute_sfb_extent()
488 /* The sample_overflow contains the average number of sample data in sfb_account_overflows()
489 * that has been lost because sample-data-blocks were full. in sfb_account_overflows()
491 * Calculate the total number of sample data entries that has been in sfb_account_overflows()
498 /* Compute number of sample-data-blocks */ in sfb_account_overflows()
665 static unsigned long getrate(bool freq, unsigned long sample, in getrate() argument
671 rate = freq_to_sample_rate(si, sample); in getrate()
675 * of sample periods. If the specified sample period is in getrate()
678 rate = hw_limit_rate(si, sample); in getrate()
680 /* The perf core maintains a maximum sample rate that is in getrate()
984 * @sde_regs: Sample-data-entry (sde) regs structure
1006 * @sample: Hardware sample data
1008 * Use the hardware sample data to create perf event sample. The sample
1023 /* Setup perf sample */ in perf_push_sample()
1028 * field which is unused contains additional sample-data-entry related in perf_push_sample()
1044 * sample belongs to a guest or host. If that is not available, in perf_push_sample()
1047 * sample. Some early samples or samples from guests without in perf_push_sample()
1067 * Store the PID value from the sample-data-entry to be in perf_push_sample()
1086 /* hw_collect_samples() - Walk through a sample-data-block and collect samples
1088 * @sdbt: Sample-data-block table
1091 * Walks through a sample-data-block and collects sampling data entries that are
1110 struct hws_basic_entry *sample; in hw_collect_samples() local
1113 sample = (struct hws_basic_entry *)sdbt; in hw_collect_samples()
1114 while ((unsigned long *)sample < (unsigned long *)te) { in hw_collect_samples()
1115 /* Check for an empty sample */ in hw_collect_samples()
1116 if (!sample->def || sample->LS) in hw_collect_samples()
1122 /* Check whether sample is valid */ in hw_collect_samples()
1123 if (sample->def == 0x0001) { in hw_collect_samples()
1125 * throttle event delivery. Remaining sample data is in hw_collect_samples()
1129 /* Check whether sample is consistent */ in hw_collect_samples()
1130 if (sample->I == 0 && sample->W == 0) { in hw_collect_samples()
1131 /* Deliver sample data to perf */ in hw_collect_samples()
1133 sample); in hw_collect_samples()
1139 /* Sample slot is not yet written or other record. in hw_collect_samples()
1145 * This is typically the case for sample-data-blocks in hw_collect_samples()
1153 /* Reset sample slot and advance to next sample */ in hw_collect_samples()
1154 sample->def = 0; in hw_collect_samples()
1155 sample++; in hw_collect_samples()
1161 * @flush_all: Flag to also flush partially filled sample-data-blocks
1167 * Only full sample-data-blocks are processed. Specify the flush_all flag
1168 * to also walk through partially filled sample-data-blocks.
1189 /* Get the trailer entry of the sample-data-block */ in hw_perf_event_update()
1200 /* Check the sample overflow count */ in hw_perf_event_update()
1202 /* Account sample overflows and, if a particular limit in hw_perf_event_update()
1208 /* Collect all samples from a single sample-data-block and in hw_perf_event_update()
1224 /* Advance to next sample-data-block */ in hw_perf_event_update()
1232 /* Stop processing sample-data if all samples of the current in hw_perf_event_update()
1233 * sample-data-block were flushed even if it was not full. in hw_perf_event_update()
1239 /* Account sample overflows in the event hardware structure */ in hw_perf_event_update()
1535 pr_err("Sample data caused the AUX buffer with %lu " in hw_collect_aux()
1952 /* Loss of sample data due to high-priority machine activities */ in cpumf_measurement_alert()
1954 pr_err("Sample data was lost\n"); in cpumf_measurement_alert()