Lines Matching +full:ftrace +full:- +full:size

1 // SPDX-License-Identifier: GPL-2.0
12 switch (entry->type) { in trace_valid_entry()
33 while ((event = ring_buffer_consume(buf->buffer, cpu, NULL, NULL))) { in trace_test_buffer_cpu()
37 * The ring buffer is a size of trace_buf_size, if in trace_test_buffer_cpu()
38 * we loop more than the size, there's something wrong in trace_test_buffer_cpu()
47 entry->type); in trace_test_buffer_cpu()
57 return -1; in trace_test_buffer_cpu()
71 arch_spin_lock(&buf->tr->max_lock); in trace_test_buffer()
73 cnt = ring_buffer_entries(buf->buffer); in trace_test_buffer()
89 arch_spin_unlock(&buf->tr->max_lock); in trace_test_buffer()
101 trace->name, init_ret); in warn_failed_init_tracer()
191 int ret = -1; in trace_selftest_ops()
194 pr_info("Testing dynamic ftrace ops #%d: ", cnt); in trace_selftest_ops()
221 register_ftrace_function(tr->ops); in trace_selftest_ops()
257 dyn_ops->func = trace_selftest_test_dyn_func; in trace_selftest_ops()
336 unregister_ftrace_function(tr->ops); in trace_selftest_ops()
349 ret = -1; in trace_selftest_ops()
356 /* Test dynamic code modification and ftrace filters */
366 /* The ftrace test PASSED */ in trace_selftest_startup_dynamic_tracing()
368 pr_info("Testing dynamic ftrace: "); in trace_selftest_startup_dynamic_tracing()
397 ret = trace_test_buffer(&tr->array_buffer, &count); in trace_selftest_startup_dynamic_tracing()
402 ret = -1; in trace_selftest_startup_dynamic_tracing()
418 ret = trace_test_buffer(&tr->array_buffer, &count); in trace_selftest_startup_dynamic_tracing()
425 trace->reset(tr); in trace_selftest_startup_dynamic_tracing()
427 ret = -1; in trace_selftest_startup_dynamic_tracing()
433 trace->reset(tr); in trace_selftest_startup_dynamic_tracing()
456 * The ftrace infrastructure should provide the recursion in trace_selftest_test_recursion_func()
473 * all of ftrace features and nothing else is using the function in trace_selftest_test_recursion_safe_func()
500 pr_info("Testing ftrace recursion: "); in trace_selftest_function_recursion()
526 ret = -1; in trace_selftest_function_recursion()
541 pr_info("Testing ftrace recursion safe: "); in trace_selftest_function_recursion()
559 ret = -1; in trace_selftest_function_recursion()
616 pr_info("Testing ftrace regs%s: ", in trace_selftest_function_regs()
631 if (ret && ret != -ENODEV) { in trace_selftest_function_regs()
643 pr_cont("*registered save-regs without arch support* "); in trace_selftest_function_regs()
659 ret = -1; in trace_selftest_function_regs()
687 * Simple verification test of ftrace function tracer.
688 * Enable ftrace, sleep 1/10 second, and then read the trace
724 ret = trace_test_buffer(&tr->array_buffer, &count); in trace_selftest_startup_function()
727 trace->reset(tr); in trace_selftest_startup_function()
732 ret = -1; in trace_selftest_startup_function()
749 /* kill ftrace totally if we failed */ in trace_selftest_startup_function()
781 const char *type = fixture->store_type_name; in store_entry()
782 int size = fixture->store_size; in store_entry() local
785 p = fgraph_reserve_data(gops->idx, size); in store_entry()
787 snprintf(fixture->error_str_buf, ERRSTR_BUFLEN, in store_entry()
792 switch (size) { in store_entry()
815 const char *type = fixture->store_type_name; in store_return()
817 long long found = -1; in store_return()
818 int size; in store_return() local
821 p = fgraph_retrieve_data(gops->idx, &size); in store_return()
823 snprintf(fixture->error_str_buf, ERRSTR_BUFLEN, in store_return()
827 if (fixture->store_size > size) { in store_return()
828 snprintf(fixture->error_str_buf, ERRSTR_BUFLEN, in store_return()
829 "Retrieved size %d is smaller than expected %d\n", in store_return()
830 size, (int)fixture->store_size); in store_return()
834 switch (fixture->store_size) { in store_return()
854 snprintf(fixture->error_str_buf, ERRSTR_BUFLEN, in store_return()
858 fixture->error_str = NULL; in store_return()
866 snprintf(fixture->error_str_buf, ERRSTR_BUFLEN, in init_fgraph_fixture()
867 "Failed to execute storage %s\n", fixture->store_type_name); in init_fgraph_fixture()
868 fixture->error_str = fixture->error_str_buf; in init_fgraph_fixture()
873 return ftrace_set_filter(&fixture->gops.ops, func_name, len, 1); in init_fgraph_fixture()
876 /* Test fgraph storage for each size */
879 int size = fixture->store_size; in test_graph_storage_single() local
883 pr_info("Testing fgraph storage of %d byte%s: ", size, str_plural(size)); in test_graph_storage_single()
886 if (ret && ret != -ENODEV) { in test_graph_storage_single()
888 return -1; in test_graph_storage_single()
891 ret = register_ftrace_graph(&fixture->gops); in test_graph_storage_single()
894 return -1; in test_graph_storage_single()
899 unregister_ftrace_graph(&fixture->gops); in test_graph_storage_single()
901 if (fixture->error_str) { in test_graph_storage_single()
902 pr_cont("*** %s ***", fixture->error_str); in test_graph_storage_single()
903 return -1; in test_graph_storage_single()
956 if (ret && ret != -ENODEV) { in test_graph_storage_multi()
965 ret = register_ftrace_graph(&fixture->gops); in test_graph_storage_multi()
975 while (--j >= 0) { in test_graph_storage_multi()
977 unregister_ftrace_graph(&fixture->gops); in test_graph_storage_multi()
979 if (fixture->error_str && !printed) { in test_graph_storage_multi()
980 pr_cont("*** %s ***", fixture->error_str); in test_graph_storage_multi()
985 while (--i >= 0) { in test_graph_storage_multi()
987 ftrace_free_filter(&fixture->gops.ops); in test_graph_storage_multi()
989 if (fixture->error_str && !printed) { in test_graph_storage_multi()
990 pr_cont("*** %s ***", fixture->error_str); in test_graph_storage_multi()
994 return printed ? -1 : 0; in test_graph_storage_multi()
1080 tracing_reset_online_cpus(&tr->array_buffer); in trace_selftest_startup_function_graph()
1095 ret = -1; in trace_selftest_startup_function_graph()
1102 ret = trace_test_buffer(&tr->array_buffer, &count); in trace_selftest_startup_function_graph()
1104 /* Need to also simulate the tr->reset to remove this fgraph_ops */ in trace_selftest_startup_function_graph()
1112 ret = -1; in trace_selftest_startup_function_graph()
1123 tracing_reset_online_cpus(&tr->array_buffer); in trace_selftest_startup_function_graph()
1158 ret = trace_test_buffer(&tr->array_buffer, &count); in trace_selftest_startup_function_graph()
1173 ret = -1; in trace_selftest_startup_function_graph()
1198 unsigned long save_max = tr->max_latency; in trace_selftest_startup_irqsoff()
1210 tr->max_latency = 0; in trace_selftest_startup_irqsoff()
1222 trace->stop(tr); in trace_selftest_startup_irqsoff()
1226 ret = trace_test_buffer(&tr->array_buffer, NULL); in trace_selftest_startup_irqsoff()
1228 ret = trace_test_buffer(&tr->max_buffer, &count); in trace_selftest_startup_irqsoff()
1229 trace->reset(tr); in trace_selftest_startup_irqsoff()
1234 ret = -1; in trace_selftest_startup_irqsoff()
1237 tr->max_latency = save_max; in trace_selftest_startup_irqsoff()
1247 unsigned long save_max = tr->max_latency; in trace_selftest_startup_preemptoff()
1272 tr->max_latency = 0; in trace_selftest_startup_preemptoff()
1284 trace->stop(tr); in trace_selftest_startup_preemptoff()
1288 ret = trace_test_buffer(&tr->array_buffer, NULL); in trace_selftest_startup_preemptoff()
1290 ret = trace_test_buffer(&tr->max_buffer, &count); in trace_selftest_startup_preemptoff()
1291 trace->reset(tr); in trace_selftest_startup_preemptoff()
1296 ret = -1; in trace_selftest_startup_preemptoff()
1299 tr->max_latency = save_max; in trace_selftest_startup_preemptoff()
1309 unsigned long save_max = tr->max_latency; in trace_selftest_startup_preemptirqsoff()
1334 tr->max_latency = 0; in trace_selftest_startup_preemptirqsoff()
1350 trace->stop(tr); in trace_selftest_startup_preemptirqsoff()
1354 ret = trace_test_buffer(&tr->array_buffer, NULL); in trace_selftest_startup_preemptirqsoff()
1358 ret = trace_test_buffer(&tr->max_buffer, &count); in trace_selftest_startup_preemptirqsoff()
1364 ret = -1; in trace_selftest_startup_preemptirqsoff()
1369 tr->max_latency = 0; in trace_selftest_startup_preemptirqsoff()
1371 trace->start(tr); in trace_selftest_startup_preemptirqsoff()
1380 trace->stop(tr); in trace_selftest_startup_preemptirqsoff()
1384 ret = trace_test_buffer(&tr->array_buffer, NULL); in trace_selftest_startup_preemptirqsoff()
1388 ret = trace_test_buffer(&tr->max_buffer, &count); in trace_selftest_startup_preemptirqsoff()
1392 ret = -1; in trace_selftest_startup_preemptirqsoff()
1399 trace->reset(tr); in trace_selftest_startup_preemptirqsoff()
1400 tr->max_latency = save_max; in trace_selftest_startup_preemptirqsoff()
1424 /* Make this a -deadline thread */ in trace_wakeup_test_thread()
1436 complete(&x->is_ready); in trace_wakeup_test_thread()
1440 while (!x->go) { in trace_wakeup_test_thread()
1445 complete(&x->is_ready); in trace_wakeup_test_thread()
1462 unsigned long save_max = tr->max_latency; in trace_selftest_startup_wakeup()
1472 /* create a -deadline thread */ in trace_selftest_startup_wakeup()
1473 p = kthread_run(trace_wakeup_test_thread, &data, "ftrace-test"); in trace_selftest_startup_wakeup()
1475 printk(KERN_CONT "Failed to create ftrace wakeup test thread "); in trace_selftest_startup_wakeup()
1476 return -1; in trace_selftest_startup_wakeup()
1479 /* make sure the thread is running at -deadline policy */ in trace_selftest_startup_wakeup()
1490 tr->max_latency = 0; in trace_selftest_startup_wakeup()
1494 * Sleep to make sure the -deadline thread is asleep too. in trace_selftest_startup_wakeup()
1514 ret = trace_test_buffer(&tr->array_buffer, NULL); in trace_selftest_startup_wakeup()
1516 ret = trace_test_buffer(&tr->max_buffer, &count); in trace_selftest_startup_wakeup()
1519 trace->reset(tr); in trace_selftest_startup_wakeup()
1522 tr->max_latency = save_max; in trace_selftest_startup_wakeup()
1529 ret = -1; in trace_selftest_startup_wakeup()
1555 ret = trace_test_buffer(&tr->array_buffer, &count); in trace_selftest_startup_branch()
1556 trace->reset(tr); in trace_selftest_startup_branch()
1561 ret = -1; in trace_selftest_startup_branch()