exclude.sh revision 327082
1279418Smarkj# $FreeBSD: stable/11/cddl/usr.sbin/dtrace/tests/tools/exclude.sh 327082 2017-12-22 16:15:44Z markj $
2279418Smarkj
3279418Smarkj# This file lists DTrace tests which are known to fail or hang/crash the
4279418Smarkj# system. They were pulled from the legacy DTrace test infrastructure in
5279418Smarkj# tools/tests/dtrace and may be out of date.
6279418Smarkj#
7279418Smarkj# Tests are listed here generally because one or more of the following is true:
8279418Smarkj#
9279418Smarkj# 1) The test is broken (usually because it assumes it's running on Solaris and
10279418Smarkj#    the test encodes some sort of Solarisism).
11279418Smarkj# 2) The functionality being tested is buggy (often but not always the result
12279418Smarkj#    of a FreeBSD-specific bug).
13279418Smarkj# 3) The test relies on DTrace functionality that's not yet available in FreeBSD
14279418Smarkj#    (e.g. tests for a specific SDT provider that we don't have).
15279418Smarkj#
16279418Smarkj# An end goal is to remove this file, concentrating first on instances of
17279418Smarkj# 1) and 2).
18279418Smarkj#
19279418Smarkj# The SKIP variable contains tests that should not be executed at all. The
20279418Smarkj# EXFAIL variable contains tests that are expected to fail when run. Please
21279418Smarkj# avoid adding tests to SKIP unless it really is necessary; with EXFAIL, tests
22279418Smarkj# that begin passing as the result of a change are visible in the test summary.
23279418Smarkj
24279418Smarkjexclude()
25279418Smarkj{
26279418Smarkj    eval $1=\"\$$1\\n$2\"
27279418Smarkj}
28279418Smarkj
29279418Smarkjexclude EXFAIL common/aggs/tst.subr.d
30279418Smarkjexclude EXFAIL common/dtraceUtil/tst.DataModel32.d.ksh
31279418Smarkjexclude EXFAIL common/dtraceUtil/tst.ELFGenerationOut.d.ksh
32279418Smarkjexclude EXFAIL common/dtraceUtil/tst.ELFGenerationWithO.d.ksh
33279418Smarkjexclude EXFAIL common/funcs/tst.copyin.d
34279418Smarkjexclude EXFAIL common/funcs/tst.copyinto.d
35279418Smarkjexclude EXFAIL common/funcs/tst.ddi_pathname.d
36279418Smarkjexclude EXFAIL common/io/tst.fds.d
37279418Smarkjexclude EXFAIL common/ip/tst.ipv4localudp.ksh
38279418Smarkjexclude EXFAIL common/mdb/tst.dtracedcmd.ksh
39279418Smarkjexclude EXFAIL common/misc/tst.dofmax.ksh
40279418Smarkjexclude EXFAIL common/misc/tst.include.ksh
41279418Smarkjexclude EXFAIL common/safety/tst.copyin2.d
42279418Smarkjexclude EXFAIL common/safety/tst.msgdsize.d
43279418Smarkjexclude EXFAIL common/safety/tst.msgsize.d
44279418Smarkjexclude EXFAIL common/safety/tst.zonename.d
45279418Smarkjexclude EXFAIL common/scalars/tst.misc.d
46279418Smarkjexclude EXFAIL common/scalars/tst.selfarray2.d
47279418Smarkjexclude EXFAIL common/sched/tst.enqueue.d
48279418Smarkjexclude EXFAIL common/speculation/tst.SpecSizeVariations3.d
49279418Smarkjexclude EXFAIL common/tracemem/err.D_TRACEMEM_ADDR.badaddr.d
50279418Smarkjexclude EXFAIL common/translators/tst.TestTransStability2.ksh
51279418Smarkjexclude EXFAIL common/types/tst.struct.d
52279418Smarkjexclude EXFAIL common/types/tst.typedef.d
53279418Smarkj
54279418Smarkj# We don't have a cpc provider.
55279418Smarkjexclude SKIP common/cpc/err.D_PDESC_ZERO.lowfrequency.d
56279418Smarkjexclude SKIP common/cpc/err.D_PDESC_ZERO.malformedoverflow.d
57279418Smarkjexclude SKIP common/cpc/err.D_PDESC_ZERO.nonexistentevent.d
58279418Smarkjexclude SKIP common/cpc/err.cpcvscpustatpart1.ksh
59279418Smarkjexclude SKIP common/cpc/err.cpcvscpustatpart2.ksh
60279418Smarkjexclude SKIP common/cpc/err.cputrackfailtostart.ksh
61279418Smarkjexclude SKIP common/cpc/err.cputrackterminates.ksh
62279418Smarkjexclude SKIP common/cpc/err.toomanyenablings.d
63279418Smarkjexclude SKIP common/cpc/tst.allcpus.ksh
64279418Smarkjexclude SKIP common/cpc/tst.genericevent.d
65279418Smarkjexclude SKIP common/cpc/tst.platformevent.ksh
66279418Smarkj
67279418Smarkj# We don't have a mib provider.
68279418Smarkjexclude EXFAIL common/mib/tst.icmp.ksh
69279418Smarkjexclude EXFAIL common/mib/tst.tcp.ksh
70279418Smarkjexclude EXFAIL common/mib/tst.udp.ksh
71279418Smarkj
72279418Smarkj# At the moment dtrace(1) always needs to run as root.
73279418Smarkjexclude SKIP common/privs/tst.fds.ksh
74279418Smarkjexclude SKIP common/privs/tst.func_access.ksh
75279418Smarkjexclude SKIP common/privs/tst.getf.ksh
76313130Smarkjexclude SKIP common/privs/tst.kpriv.ksh
77279418Smarkjexclude SKIP common/privs/tst.op_access.ksh
78279418Smarkjexclude SKIP common/privs/tst.procpriv.ksh
79279418Smarkjexclude SKIP common/privs/tst.providers.ksh
80279418Smarkjexclude SKIP common/privs/tst.unpriv_funcs.ksh
81279418Smarkj
82279418Smarkj# These tests hang for reasons unknown.
83279418Smarkjexclude SKIP common/buffering/tst.ring3.d
84279418Smarkjexclude SKIP common/funcs/tst.chill.ksh
85279418Smarkjexclude SKIP common/funcs/tst.index.d
86279418Smarkj
87279418Smarkj# No Java support at the moment.
88279418Smarkjexclude EXFAIL common/java_api/tst.Abort.ksh
89279418Smarkjexclude EXFAIL common/java_api/tst.Bean.ksh
90279418Smarkjexclude EXFAIL common/java_api/tst.Close.ksh
91279418Smarkjexclude EXFAIL common/java_api/tst.Drop.ksh
92279418Smarkjexclude EXFAIL common/java_api/tst.Enable.ksh
93279418Smarkjexclude EXFAIL common/java_api/tst.FunctionLookup.ksh
94279418Smarkjexclude EXFAIL common/java_api/tst.GetAggregate.ksh
95279418Smarkjexclude EXFAIL common/java_api/tst.MaxConsumers.ksh
96279418Smarkjexclude EXFAIL common/java_api/tst.MultiAggPrinta.ksh
97279418Smarkjexclude EXFAIL common/java_api/tst.ProbeData.ksh
98279418Smarkjexclude EXFAIL common/java_api/tst.ProbeDescription.ksh
99279418Smarkjexclude EXFAIL common/java_api/tst.StateMachine.ksh
100279418Smarkjexclude EXFAIL common/java_api/tst.StopLock.ksh
101279418Smarkj
102279418Smarkj# Expects specific formatting from banner(6).
103279418Smarkjexclude EXFAIL common/aggs/tst.aggpackbanner.ksh
104279418Smarkj
105279418Smarkj# Test assumes we're running on a Solaris kernel.
106279418Smarkjexclude EXFAIL common/misc/tst.roch.d
107279418Smarkjexclude EXFAIL common/predicates/tst.argsnotcached.d
108279418Smarkjexclude EXFAIL common/safety/tst.vahole.d
109279418Smarkj
110279418Smarkj# Tests that depend on the plockstat provider.
111279418Smarkjexclude EXFAIL common/plockstat/tst.available.d
112279418Smarkjexclude EXFAIL common/plockstat/tst.libmap.d
113279418Smarkjexclude EXFAIL common/usdt/tst.andpid.ksh
114279418Smarkj
115279418Smarkj# Depends on java.
116279418Smarkjexclude SKIP common/drops/drp.DTRACEDROP_STKSTROVERFLOW.d
117279418Smarkj
118279418Smarkj# Interrupt priority isn't relevant on FreeBSD.
119279418Smarkjexclude SKIP common/builtinvar/tst.ipl.d
120279418Smarkjexclude SKIP common/builtinvar/tst.ipl1.d
121279418Smarkj
122279418Smarkj# These tests rely on being able to find a host via broadcast pings.
123279418Smarkjexclude EXFAIL common/ip/tst.ipv4remotetcp.ksh
124279418Smarkjexclude EXFAIL common/ip/tst.ipv4remoteudp.ksh
125279418Smarkjexclude EXFAIL common/ip/tst.ipv6remoteicmp.ksh
126279418Smarkjexclude EXFAIL common/ip/tst.ipv4remoteicmp.ksh
127279418Smarkj
128279418Smarkj# FreeBSD never places tcpcbs in the TIME_WAIT state, so the probe never fires.
129279418Smarkjexclude EXFAIL common/ip/tst.localtcpstate.ksh
130279418Smarkjexclude EXFAIL common/ip/tst.remotetcpstate.ksh
131279418Smarkj
132279418Smarkj# Depends on the number of probes in /bin/sh and the current DOF limit.
133279418Smarkjexclude EXFAIL common/pid/err.D_PROC_CREATEFAIL.many.d
134279418Smarkj
135279418Smarkj# Tries to enable pid$target:libc::entry, though there's no "libc" module.
136279418Smarkj# Currently unsure as to whether this might be a libproc bug.
137279418Smarkjexclude EXFAIL common/pid/tst.probemod.ksh
138279418Smarkj
139279418Smarkj# Assumes date(1) has a pid$target::main:return probe.
140279418Smarkjexclude EXFAIL common/pid/tst.newprobes.ksh
141279418Smarkj
142279418Smarkj# libproc+librtld_db don't handle dlopen(2) yet.
143279418Smarkjexclude EXFAIL common/pid/tst.provregex2.ksh
144279418Smarkjexclude EXFAIL common/pid/tst.provregex4.ksh
145279418Smarkj
146279418Smarkj# libproc doesn't properly handle probe sites that correspond to multiple
147279418Smarkj# symbols.
148279418Smarkjexclude EXFAIL common/pid/tst.weak1.d
149279418Smarkjexclude EXFAIL common/pid/tst.weak2.d
150279418Smarkj
151326366Smarkj# This test appears to be invalid. dtrace is supposed to press on if a
152326366Smarkj# depends_on pragma cannot be satisfied, per the comment above
153326366Smarkj# dt_load_libs_dir() in libdtrace.
154326366Smarkjexclude EXFAIL common/pragma/err.invalidlibdep.ksh
155326366Smarkj
156279418Smarkj# This test checks for a leading tab on a line before #define. That is illegal
157279418Smarkj# on Solaris, but the clang pre-processor on FreeBSD is happy with code like
158279418Smarkj# that.
159279418Smarkjexclude EXFAIL common/preprocessor/err.D_PRAGCTL_INVAL.tabdefine.d
160279418Smarkj
161279418Smarkj# This test uses proc:::signal-handle, which we don't appear to have.
162279418Smarkjexclude EXFAIL common/proc/tst.signal.ksh
163279418Smarkj
164279418Smarkj# This test uses proc:::lwp-start, which we don't appear to have.
165279418Smarkjexclude EXFAIL common/proc/tst.startexit.ksh
166279418Smarkj
167279418Smarkj# This test causes a panic at the moment because fbt instruments the lock class'
168279418Smarkj# lc_owned method.
169279418Smarkjexclude SKIP common/safety/tst.rw.d
170279418Smarkj
171279418Smarkj# Depends on some implementation details of the runtime linker.
172279418Smarkjexclude EXFAIL common/vars/tst.ucaller.ksh
173279418Smarkj
174279418Smarkj# These rely on process attributes that FreeBSD doesn't carry.
175279418Smarkjexclude EXFAIL common/scripting/tst.projid.ksh
176279418Smarkjexclude EXFAIL common/scripting/tst.taskid.ksh
177279418Smarkj
178327082Smarkj# Depends on tst.chasestrings.exe being ELF32. See r326181 and r326285.
179327082Smarkjexclude EXFAIL common/uctf/err.user64mode.ksh
180327082Smarkj
181279418Smarkj# This test expects its test program to be installed without CTF data, but
182279418Smarkj# the rest of the programs for this feature need CTF data. Not yet sure how
183279418Smarkj# to build that.
184279418Smarkjexclude EXFAIL common/uctf/tst.libtype.ksh
185279418Smarkj
186279418Smarkj# libproc doesn't have linkmap support yet.
187279418Smarkjexclude EXFAIL common/uctf/tst.linkmap.ksh
188279418Smarkj
189279418Smarkj# Uses Sun-specific compiler options.
190279418Smarkjexclude EXFAIL common/usdt/tst.badguess.ksh
191279418Smarkjexclude EXFAIL common/usdt/tst.guess32.ksh
192279418Smarkjexclude EXFAIL common/usdt/tst.guess64.ksh
193279418Smarkj
194326306Smarkj# Depends on non-standard static linker behaviour.
195326306Smarkjexclude EXFAIL common/usdt/tst.eliminate.ksh
196326306Smarkj
197279418Smarkj# Generated headers include <sys/sdt.h>, so _DTRACE_VERSION is always defined.
198279418Smarkjexclude EXFAIL common/usdt/tst.nodtrace.ksh
199279418Smarkj
200279418Smarkj# The second dtrace -G invocation returns an error with "no probes found," which
201279418Smarkj# makes sense to me. Not yet sure what the expected behaviour is here.
202279418Smarkjexclude EXFAIL common/usdt/tst.static2.ksh
203279418Smarkj
204279418Smarkj# Uses the Solaris-specific ppriv(1).
205279418Smarkjexclude EXFAIL common/usdt/tst.user.ksh
206