1# $FreeBSD$ 2 3# This file lists DTrace tests which are known to fail or hang/crash the 4# system. They were pulled from the legacy DTrace test infrastructure in 5# tools/tests/dtrace and may be out of date. 6# 7# Tests are listed here generally because one or more of the following is true: 8# 9# 1) The test is broken (usually because it assumes it's running on Solaris and 10# the test encodes some sort of Solarisism). 11# 2) The functionality being tested is buggy (often but not always the result 12# of a FreeBSD-specific bug). 13# 3) The test relies on DTrace functionality that's not yet available in FreeBSD 14# (e.g. tests for a specific SDT provider that we don't have). 15# 16# An end goal is to remove this file, concentrating first on instances of 17# 1) and 2). 18# 19# The SKIP variable contains tests that should not be executed at all. The 20# EXFAIL variable contains tests that are expected to fail when run. The 21# SKIPCI variable contains tests that are flakey and should not be executed in 22# the CI environment. Please avoid adding tests to SKIP unless it really is 23# necessary; with EXFAIL, tests that begin passing as the result of a change 24# are visible in the test summary. 25 26exclude() 27{ 28 case $2 in 29 # Handle globbing later 30 *"*"*) ;; 31 # No globbing needed 32 *) 33 eval $1=\"\$$1\\n$2\" 34 return 35 ;; 36 esac 37 for file in ${TESTBASE}/${2}; do 38 case ${file} in 39 # Invalid glob 40 "${TESTBASE}/${2}") echo "Invalid exclude for $2" >&2; exit 1; ;; 41 esac 42 exclude "$1" "${file##${TESTBASE}/}" 43 done 44} 45 46exclude EXFAIL common/aggs/tst.subr.d 47exclude EXFAIL common/dtraceUtil/tst.ELFGenerationOut.d.ksh 48exclude EXFAIL common/dtraceUtil/tst.ELFGenerationWithO.d.ksh 49exclude EXFAIL common/funcs/tst.copyin.d 50exclude EXFAIL common/funcs/tst.copyinto.d 51exclude EXFAIL common/funcs/tst.ddi_pathname.d 52exclude EXFAIL common/io/tst.fds.d 53exclude EXFAIL common/mdb/tst.dtracedcmd.ksh 54exclude EXFAIL common/misc/tst.dofmax.ksh 55exclude EXFAIL common/misc/tst.include.ksh 56exclude EXFAIL common/safety/tst.copyin2.d 57exclude EXFAIL common/safety/tst.msgdsize.d 58exclude EXFAIL common/safety/tst.msgsize.d 59exclude EXFAIL common/scalars/tst.misc.d 60exclude EXFAIL common/scalars/tst.selfarray2.d 61exclude EXFAIL common/sched/tst.enqueue.d 62exclude EXFAIL common/speculation/tst.SpecSizeVariations3.d 63exclude EXFAIL common/tracemem/err.D_TRACEMEM_ADDR.badaddr.d 64exclude EXFAIL common/translators/tst.TestTransStability2.ksh 65exclude EXFAIL common/types/tst.struct.d 66exclude EXFAIL common/types/tst.typedef.d 67 68# We don't have a cpc provider. 69exclude SKIP common/cpc/err.D_PDESC_ZERO.lowfrequency.d 70exclude SKIP common/cpc/err.D_PDESC_ZERO.malformedoverflow.d 71exclude SKIP common/cpc/err.D_PDESC_ZERO.nonexistentevent.d 72exclude SKIP common/cpc/err.cpcvscpustatpart1.ksh 73exclude SKIP common/cpc/err.cpcvscpustatpart2.ksh 74exclude SKIP common/cpc/err.cputrackfailtostart.ksh 75exclude SKIP common/cpc/err.cputrackterminates.ksh 76exclude SKIP common/cpc/err.toomanyenablings.d 77exclude SKIP common/cpc/tst.allcpus.ksh 78exclude SKIP common/cpc/tst.genericevent.d 79exclude SKIP common/cpc/tst.platformevent.ksh 80 81# We don't have a mib provider. 82exclude EXFAIL common/mib/tst.icmp.ksh 83exclude EXFAIL common/mib/tst.tcp.ksh 84exclude EXFAIL common/mib/tst.udp.ksh 85 86# At the moment dtrace(1) always needs to run as root. 87exclude SKIP common/privs/tst.fds.ksh 88exclude SKIP common/privs/tst.func_access.ksh 89exclude SKIP common/privs/tst.getf.ksh 90exclude SKIP common/privs/tst.kpriv.ksh 91exclude SKIP common/privs/tst.op_access.ksh 92exclude SKIP common/privs/tst.procpriv.ksh 93exclude SKIP common/privs/tst.providers.ksh 94exclude SKIP common/privs/tst.unpriv_funcs.ksh 95 96# These tests hang for reasons unknown. 97exclude SKIP common/buffering/tst.ring3.d 98exclude SKIP common/funcs/tst.chill.ksh 99exclude SKIP common/funcs/tst.index.d 100 101# No Java support at the moment. 102exclude EXFAIL common/java_api/tst.Abort.ksh 103exclude EXFAIL common/java_api/tst.Bean.ksh 104exclude EXFAIL common/java_api/tst.Close.ksh 105exclude EXFAIL common/java_api/tst.Drop.ksh 106exclude EXFAIL common/java_api/tst.Enable.ksh 107exclude EXFAIL common/java_api/tst.FunctionLookup.ksh 108exclude EXFAIL common/java_api/tst.GetAggregate.ksh 109exclude EXFAIL common/java_api/tst.MaxConsumers.ksh 110exclude EXFAIL common/java_api/tst.MultiAggPrinta.ksh 111exclude EXFAIL common/java_api/tst.ProbeData.ksh 112exclude EXFAIL common/java_api/tst.ProbeDescription.ksh 113exclude EXFAIL common/java_api/tst.StateMachine.ksh 114exclude EXFAIL common/java_api/tst.StopLock.ksh 115 116# Expects specific formatting from banner(6). 117exclude EXFAIL common/aggs/tst.aggpackbanner.ksh 118 119# Test assumes we're running on a Solaris kernel. 120exclude EXFAIL common/misc/tst.roch.d 121exclude EXFAIL common/predicates/tst.argsnotcached.d 122exclude EXFAIL common/safety/tst.vahole.d 123 124# Tests that depend on the plockstat provider. 125exclude EXFAIL common/plockstat/tst.available.d 126exclude EXFAIL common/plockstat/tst.libmap.d 127exclude EXFAIL common/usdt/tst.andpid.ksh 128 129# Depends on java. 130exclude SKIP common/drops/drp.DTRACEDROP_STKSTROVERFLOW.d 131 132# Interrupt priority isn't relevant on FreeBSD. 133exclude SKIP common/builtinvar/tst.ipl.d 134exclude SKIP common/builtinvar/tst.ipl1.d 135 136# These tests rely on being able to find a host via broadcast pings. 137exclude EXFAIL common/ip/tst.ipv4remotesctp.ksh 138exclude EXFAIL common/ip/tst.ipv4remotetcp.ksh 139exclude EXFAIL common/ip/tst.ipv4remoteudp.ksh 140exclude EXFAIL common/ip/tst.ipv4remoteudplite.ksh 141exclude EXFAIL common/ip/tst.ipv6remoteicmp.ksh 142exclude EXFAIL common/ip/tst.ipv4remoteicmp.ksh 143exclude EXFAIL common/ip/tst.remotesctpstate.ksh 144exclude EXFAIL common/ip/tst.remotetcpstate.ksh 145 146# Tries to enable pid$target:libc::entry, though there's no "libc" module. 147# Currently unsure as to whether this might be a libproc bug. 148exclude EXFAIL common/pid/tst.probemod.ksh 149 150# Assumes date(1) has a pid$target::main:return probe. 151exclude EXFAIL common/pid/tst.newprobes.ksh 152 153# libproc+librtld_db don't handle dlopen(2) yet. 154exclude EXFAIL common/pid/tst.provregex2.ksh 155exclude EXFAIL common/pid/tst.provregex4.ksh 156 157# This test appears to be invalid. dtrace is supposed to press on if a 158# depends_on pragma cannot be satisfied, per the comment above 159# dt_load_libs_dir() in libdtrace. 160exclude EXFAIL common/pragma/err.invalidlibdep.ksh 161 162# This test checks for a leading tab on a line before #define. That is illegal 163# on Solaris, but the clang pre-processor on FreeBSD is happy with code like 164# that. 165exclude EXFAIL common/preprocessor/err.D_PRAGCTL_INVAL.tabdefine.d 166 167# This test uses proc:::signal-handle, which we don't appear to have. 168exclude EXFAIL common/proc/tst.signal.ksh 169 170# This test uses proc:::lwp-start, which we don't appear to have. 171exclude EXFAIL common/proc/tst.startexit.ksh 172 173# This test causes a panic at the moment because fbt instruments the lock class' 174# lc_owned method. 175exclude SKIP common/safety/tst.rw.d 176 177# Depends on some implementation details of the runtime linker. 178exclude EXFAIL common/vars/tst.ucaller.ksh 179 180# These rely on process attributes that FreeBSD doesn't carry. 181exclude EXFAIL common/scripting/tst.projid.ksh 182exclude EXFAIL common/scripting/tst.taskid.ksh 183 184# Depends on tst.chasestrings.exe being ELF32. See r326181 and r326285. 185exclude EXFAIL common/uctf/err.user64mode.ksh 186 187# This test expects its test program to be installed without CTF data, but 188# the rest of the programs for this feature need CTF data. Not yet sure how 189# to build that. 190exclude EXFAIL common/uctf/tst.libtype.ksh 191 192# libproc doesn't have linkmap support yet. 193exclude EXFAIL common/uctf/tst.linkmap.ksh 194 195# Uses Sun-specific compiler options. 196exclude EXFAIL common/usdt/tst.badguess.ksh 197exclude EXFAIL common/usdt/tst.guess32.ksh 198exclude EXFAIL common/usdt/tst.guess64.ksh 199 200# Depends on non-standard static linker behaviour. 201exclude EXFAIL common/usdt/tst.eliminate.ksh 202 203# Generated headers include <sys/sdt.h>, so _DTRACE_VERSION is always defined. 204exclude EXFAIL common/usdt/tst.nodtrace.ksh 205 206# Uses the Solaris-specific ppriv(1). 207exclude EXFAIL common/usdt/tst.user.ksh 208 209# Triggers a lock assertion by using the raise() action from a profile probe. 210exclude SKIP common/ustack/tst.spin.ksh 211 212# https://bugs.freebsd.org/237641 213exclude SKIPCI common/misc/tst.dynopt.d 214