#!/bin/sh
# SPDX-License-Identifier: GPL-2.0
# description: ftrace - function glob filters

# Make sure that function glob matching filter works.

if ! grep -q function available_tracers; then
    echo "no function tracer configured"
    exit_unsupported
fi

disable_tracing
clear_trace

ftrace_filter_check() { # glob grep
  echo "$1" > set_ftrace_filter
  cut -f1 -d" " set_ftrace_filter > $TMPDIR/actual
  cut -f1 -d" " available_filter_functions | grep "$2" > $TMPDIR/expected
  DIFF=`diff $TMPDIR/actual $TMPDIR/expected`
  test -z "$DIFF"
}

# filter by *, front match
ftrace_filter_check '*schedule' '^.*schedule$'

# filter by *, middle match
ftrace_filter_check '*schedule*' '^.*schedule.*$'

# filter by *, end match
ftrace_filter_check 'schedule*' '^schedule.*$'

# Advanced full-glob matching feature is recently supported.
# Skip the tests if we are sure the kernel does not support it.
if grep -q 'accepts: .* glob-matching-pattern' README ; then

# filter by *, both side match
ftrace_filter_check 'sch*ule' '^sch.*ule$'

# filter by char class.
ftrace_filter_check '[Ss]y[Ss]_*' '^[Ss]y[Ss]_.*$'

# filter by ?, schedule is always good
if ! echo "sch?dule" > set_ftrace_filter; then
    # test for powerpc 64
    if ! echo ".sch?dule" > set_ftrace_filter; then
	fail "can not enable schedule filter"
    fi
    cat set_ftrace_filter | grep '^.schedule$'
else
    cat set_ftrace_filter | grep '^schedule$'
fi

fi

echo > set_ftrace_filter
enable_tracing
