brintos

brintos / linux-shallow public Read only

0
0
Text · 1.2 KiB · 31cfafb Raw
50 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2/*3 * Copyright (c) 2024 Meta Platforms, Inc. and affiliates.4 */5#include <bpf/bpf.h>6#include <scx/common.h>7#include <sys/wait.h>8#include <unistd.h>9#include "maybe_null.bpf.skel.h"10#include "maybe_null_fail_dsp.bpf.skel.h"11#include "maybe_null_fail_yld.bpf.skel.h"12#include "scx_test.h"13 14static enum scx_test_status run(void *ctx)15{16	struct maybe_null *skel;17	struct maybe_null_fail_dsp *fail_dsp;18	struct maybe_null_fail_yld *fail_yld;19 20	skel = maybe_null__open_and_load();21	if (!skel) {22		SCX_ERR("Failed to open and load maybe_null skel");23		return SCX_TEST_FAIL;24	}25	maybe_null__destroy(skel);26 27	fail_dsp = maybe_null_fail_dsp__open_and_load();28	if (fail_dsp) {29		maybe_null_fail_dsp__destroy(fail_dsp);30		SCX_ERR("Should failed to open and load maybe_null_fail_dsp skel");31		return SCX_TEST_FAIL;32	}33 34	fail_yld = maybe_null_fail_yld__open_and_load();35	if (fail_yld) {36		maybe_null_fail_yld__destroy(fail_yld);37		SCX_ERR("Should failed to open and load maybe_null_fail_yld skel");38		return SCX_TEST_FAIL;39	}40 41	return SCX_TEST_PASS;42}43 44struct scx_test maybe_null = {45	.name = "maybe_null",46	.description = "Verify if PTR_MAYBE_NULL work for .dispatch",47	.run = run,48};49REGISTER_SCX_TEST(&maybe_null)50