selftest
unsigned long selftest = (unsigned long)&int3_selftest_asm;
OPTIMIZER_HIDE_VAR(selftest);
if (regs->ip - INT3_INSN_SIZE != selftest)
static void set_default_test_all(struct selftest *st, unsigned long count)
static int run_selftests(struct selftest *st, unsigned long count)
selftest(sanitycheck, __sanitycheck__) /* keep first (igt selfcheck) */
selftest(dma_fence, dma_fence)
selftest(dma_fence_chain, dma_fence_chain)
selftest(dma_fence_unwrap, dma_fence_unwrap)
selftest(dma_resv, dma_resv)
I915_SELFTEST_DECLARE(struct i915_selftest_stash selftest;)
selftest(sanitycheck, i915_live_sanitycheck) /* keep first (igt selfcheck) */
selftest(uncore, intel_uncore_live_selftests)
selftest(workarounds, intel_workarounds_live_selftests)
selftest(gt_engines, intel_engine_live_selftests)
selftest(gt_timelines, intel_timeline_live_selftests)
selftest(gt_contexts, intel_context_live_selftests)
selftest(gt_lrc, intel_lrc_live_selftests)
selftest(gt_mocs, intel_mocs_live_selftests)
selftest(gt_pm, intel_gt_pm_live_selftests)
selftest(gt_heartbeat, intel_heartbeat_live_selftests)
selftest(gt_tlb, intel_tlb_live_selftests)
selftest(requests, i915_request_live_selftests)
#ifndef selftest
selftest(migrate, intel_migrate_live_selftests)
selftest(active, i915_active_live_selftests)
selftest(objects, i915_gem_object_live_selftests)
selftest(mman, i915_gem_mman_live_selftests)
selftest(dmabuf, i915_gem_dmabuf_live_selftests)
selftest(vma, i915_vma_live_selftests)
selftest(coherency, i915_gem_coherency_live_selftests)
selftest(gtt, i915_gem_gtt_live_selftests)
selftest(gem, i915_gem_live_selftests)
selftest(evict, i915_gem_evict_live_selftests)
selftest(hugepages, i915_gem_huge_page_live_selftests)
selftest(gem_contexts, i915_gem_context_live_selftests)
selftest(client, i915_gem_client_blt_live_selftests)
selftest(gem_migrate, i915_gem_migrate_live_selftests)
selftest(reset, intel_reset_live_selftests)
selftest(memory_region, intel_memory_region_live_selftests)
selftest(hangcheck, intel_hangcheck_live_selftests)
selftest(execlists, intel_execlists_live_selftests)
selftest(ring_submission, intel_ring_submission_live_selftests)
selftest(perf, i915_perf_live_selftests)
selftest(slpc, intel_slpc_live_selftests)
selftest(guc, intel_guc_live_selftests)
selftest(guc_multi_lrc, intel_guc_multi_lrc_live_selftests)
selftest(guc_hang, intel_guc_hang_check)
selftest(late_gt_pm, intel_gt_pm_late_selftests)
selftest(sanitycheck, i915_mock_sanitycheck) /* keep first (igt selfcheck) */
selftest(shmem, shmem_utils_mock_selftests)
selftest(fence, i915_sw_fence_mock_selftests)
selftest(scatterlist, scatterlist_mock_selftests)
selftest(syncmap, i915_syncmap_mock_selftests)
selftest(uncore, intel_uncore_mock_selftests)
selftest(ring, intel_ring_mock_selftests)
selftest(engine, intel_engine_cs_mock_selftests)
selftest(timelines, intel_timeline_mock_selftests)
selftest(requests, i915_request_mock_selftests)
selftest(objects, i915_gem_object_mock_selftests)
selftest(phys, i915_gem_phys_mock_selftests)
#ifndef selftest
selftest(dmabuf, i915_gem_dmabuf_mock_selftests)
selftest(vma, i915_vma_mock_selftests)
selftest(evict, i915_gem_evict_mock_selftests)
selftest(gtt, i915_gem_gtt_mock_selftests)
selftest(hugepages, i915_gem_huge_page_mock_selftests)
selftest(memory_region, intel_memory_region_mock_selftests)
selftest(engine_cs, intel_engine_cs_perf_selftests)
selftest(request, i915_request_perf_selftests)
selftest(migrate, intel_migrate_perf_selftests)
selftest(region, intel_memory_region_perf_selftests)
#ifndef selftest
if (atomic_dec_and_test(&i915->selftest.counter)) {
wake_up_var(&i915->selftest.counter);
if (wait_var_event_timeout(&i915->selftest.counter,
!atomic_read(&i915->selftest.counter),
atomic_set(&i915->selftest.counter, nengines);
atomic_set(&i915->selftest.counter, nengines);
static void set_default_test_all(struct selftest *st, unsigned int count)
struct selftest *st,
static struct selftest mock_selftests[] = {
static struct selftest live_selftests[] = {
static struct selftest perf_selftests[] = {
ida_init(&i915->selftest.mock_region_instances);
int instance = ida_alloc_max(&i915->selftest.mock_region_instances,
ida_free(&i915->selftest.mock_region_instances, instance);
static DEVICE_ATTR(selftest, S_IRUGO, tsc200x_selftest_show, NULL);
static LP55XX_DEV_ATTR_RO(selftest, lp5521_selftest);
static LP55XX_DEV_ATTR_RO(selftest, lp5523_selftest);
static LP55XX_DEV_ATTR_RO(selftest, lp5569_selftest);
u8 selftest;
selftest = CTRL4_ST0;
selftest = CTRL1_ST;
selftest = CTRL1_STP;
lis3->write(lis3, ctlreg, (reg | selftest));
static DEVICE_ATTR(selftest, S_IRUSR, lis3lv02d_selftest_show, NULL);
} selftest;
u32 dma_addr = nic->dma_addr + offsetof(struct mem, selftest);
nic->mem->selftest.signature = 0;
nic->mem->selftest.result = 0xFFFFFFFF;
iowrite32(selftest | dma_addr, &nic->csr->port);
if (nic->mem->selftest.result != 0) {
nic->mem->selftest.result);
if (nic->mem->selftest.signature == 0) {
.selftest = &qed_selftest_ops_pass,
if (edev->ops->common->selftest->selftest_interrupt(edev->cdev)) {
if (edev->ops->common->selftest->selftest_memory(edev->cdev)) {
if (edev->ops->common->selftest->selftest_register(edev->cdev)) {
if (edev->ops->common->selftest->selftest_clock(edev->cdev)) {
if (edev->ops->common->selftest->selftest_nvram(edev->cdev)) {
struct qed_selftest_ops *selftest;
selftest();
struct trace_selftests *selftest;
selftest = kmalloc(sizeof(*selftest), GFP_KERNEL);
if (!selftest)
selftest->type = type;
list_add(&selftest->list, &postponed_selftests);
if (!type->selftest || tracing_selftest_disabled)
ret = type->selftest(type, tr);
int (*selftest)(struct tracer *trace,
.selftest = trace_selftest_startup_branch,
.selftest = trace_selftest_startup_function,
.selftest = trace_selftest_startup_function_graph,
.selftest = trace_selftest_startup_irqsoff,
.selftest = trace_selftest_startup_preemptoff,
.selftest = trace_selftest_startup_preemptirqsoff,
.selftest = trace_selftest_startup_nop,
.selftest = trace_selftest_startup_wakeup,
.selftest = trace_selftest_startup_wakeup,
.selftest = trace_selftest_startup_wakeup,
selftest(); \