#include #include #include #include #include #include "tests.h" #include "debug.h" #include "probe-file.h" #include "build-id.h" /* To test SDT event, we need libelf support to scan elf binary */ #if defined(HAVE_SDT_EVENT) && defined(HAVE_LIBELF_SUPPORT) #include static int target_function(void) { DTRACE_PROBE(perf, test_target); return TEST_OK; } /* Copied from builtin-buildid-cache.c */ static int build_id_cache__add_file(const char *filename) { char sbuild_id[SBUILD_ID_SIZE]; u8 build_id[BUILD_ID_SIZE]; int err; err = filename__read_build_id(filename, &build_id, sizeof(build_id)); if (err < 0) { pr_debug("Failed to read build id of %s\n", filename); return err; } build_id__sprintf(build_id, sizeof(build_id), sbuild_id); err = build_id_cache__add_s(sbuild_id, filename, false, false); if (err < 0) pr_debug("Failed to add build id cache of %s\n", filename); return err; } static char *get_self_path(void) { char *buf = calloc(PATH_MAX, sizeof(char)); if (buf && readlink("/proc/self/exe", buf, PATH_MAX) < 0) { pr_debug("Failed to get correct path of perf\n"); free(buf); return NULL; } return buf; } static int search_cached_probe(const char *target, const char *group, const char *event) { struct probe_cache *cache = probe_cache__new(target); int ret = 0; if (!cache) { pr_debug("Failed to open probe cache of %s\n", target); return -EINVAL; } if (!probe_cache__find_by_name(cache, group, event)) { pr_debug("Failed to find %s:%s in the cache\n", group, event); ret = -ENOENT; } probe_cache__delete(cache); return ret; } int test__sdt_event(int subtests __maybe_unused) { int ret = TEST_FAIL; char __tempdir[] = "./test-buildid-XXXXXX"; char *tempdir = NULL, *myself = get_self_path(); if (myself == NULL || mkdtemp(__tempdir) == NULL) { pr_debug("Failed to make a tempdir for build-id cache\n"); goto error; } /* Note that buildid_dir must be an absolute path */ tempdir = realpath(__tempdir, NULL); /* At first, scan itself */ set_buildid_dir(tempdir); if (build_id_cache__add_file(myself) < 0) goto error_rmdir; /* Open a cache and make sure the SDT is stored */ if (search_cached_probe(myself, "sdt_perf", "test_target") < 0) goto error_rmdir; /* TBD: probing on the SDT event and collect logs */ /* Call the target and get an event */ ret = target_function(); error_rmdir: /* Cleanup temporary buildid dir */ rm_rf(tempdir); error: free(tempdir); free(myself); return ret; } #else int test__sdt_event(int subtests __maybe_unused) { pr_debug("Skip SDT event test because SDT support is not compiled\n"); return TEST_SKIP; } #endif ca21e820'>include/drm
ModeNameSize
-rw-r--r--ati_pcigart.h692logplain
d---------bridge111logplain
-rw-r--r--drmP.h25758logplain
-rw-r--r--drm_agpsupport.h3867logplain
-rw-r--r--drm_atomic.h14443logplain
-rw-r--r--drm_atomic_helper.h10607logplain
-rw-r--r--drm_auth.h2260logplain
-rw-r--r--drm_blend.h2700logplain
-rw-r--r--drm_bridge.h7977logplain
-rw-r--r--drm_cache.h1763logplain
-rw-r--r--drm_color_mgmt.h2166logplain
-rw-r--r--drm_connector.h28613logplain
-rw-r--r--drm_crtc.h28999logplain
-rw-r--r--drm_crtc_helper.h3301logplain
-rw-r--r--drm_debugfs_crc.h2670logplain
-rw-r--r--drm_displayid.h2850logplain
-rw-r--r--drm_dp_dual_mode_helper.h4532logplain
-rw-r--r--drm_dp_helper.h30638logplain
-rw-r--r--drm_dp_mst_helper.h16260logplain
-rw-r--r--drm_drv.h14861logplain
-rw-r--r--drm_edid.h14335logplain
-rw-r--r--drm_encoder.h8160logplain
-rw-r--r--drm_encoder_slave.h6583logplain
-rw-r--r--drm_fb_cma_helper.h1929logplain
-rw-r--r--drm_fb_helper.h15125logplain
-rw-r--r--drm_fixed.h4825logplain
-rw-r--r--drm_flip_work.h3071logplain
-rw-r--r--drm_fourcc.h2748logplain
-rw-r--r--drm_framebuffer.h9623logplain
-rw-r--r--drm_gem.h8052logplain
-rw-r--r--drm_gem_cma_helper.h2286logplain
-rw-r--r--drm_global.h2011logplain
-rw-r--r--drm_hashtab.h3139logplain
-rw-r--r--drm_irq.h6323logplain
-rw-r--r--drm_legacy.h6933logplain
-rw-r--r--drm_mem_util.h2468logplain
-rw-r--r--drm_mipi_dsi.h10327logplain
-rw-r--r--drm_mm.h11462logplain
-rw-r--r--drm_mode_config.h23728logplain
-rw-r--r--drm_mode_object.h4911logplain
-rw-r--r--drm_modes.h17078logplain
-rw-r--r--drm_modeset_helper.h1576logplain
-rw-r--r--drm_modeset_helper_vtables.h41180logplain
-rw-r--r--drm_modeset_lock.h4241logplain
-rw-r--r--drm_of.h2034logplain
-rw-r--r--drm_os_linux.h2230logplain
-rw-r--r--drm_panel.h7079logplain
-rw-r--r--drm_pciids.h68035logplain
-rw-r--r--drm_plane.h19435logplain
-rw-r--r--drm_plane_helper.h3186logplain
-rw-r--r--drm_print.h3232logplain
-rw-r--r--drm_property.h11460logplain
-rw-r--r--drm_rect.h5103logplain
-rw-r--r--drm_simple_kms_helper.h4090logplain
-rw-r--r--drm_sysfs.h300logplain
-rw-r--r--drm_vma_manager.h7840logplain
-rw-r--r--gma_drm.h1033logplain
d---------i2c109logplain