forked from luck/tmp_suning_uos_patched
linux-kselftest-5.7-rc6
This Kselftest update for Linux 5.7-rc6 consists of - lkdtm runner fixes to prevent dmesg clearing and shellcheck errors - ftrace test handling when test module doesn't exist - nsfs test fix to replace zero-length array with flexible-array - dmabuf-heaps test fix to return clear error value -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEPZKym/RZuOCGeA/kCwJExA0NQxwFAl6+0KwACgkQCwJExA0N QxyBog/8DME+7YtjZ8TqgeWuxMckDHqVBTLTobd3Wyd2Vsk6W3EWKaDo+R8sqRfN VmjExY1PH0+N4JAFuQxR1UAmO0E/YZ/HwGxU6IH4iAoXtVZ0Tc52jzlZkwo0/RwF uOXukaEjLNlMva06/CEptxZy4UAWKP1l9DaEYjY48zDC4zlXaPgGjk69MACZhK4E 2M6mWJuUewf+PobZTGFv/4RPIAihZpx8gDMRBR/hy+RWKh1qNhpNeXQRrwTQm0u3 5ewOQjP26VRam4pA/e7RsU1b2IR8nbDZFpX3dTEzkme9dJ2hoN3DZLOw0/WXS/aQ /Ha5bPBI7RMhq0FUQP1vMErZ6Da/YEkbTxmCpx1kL6vliKqMkHb+epLABTJlGGnD i+ENoLeJVhcyQ3vyWq3VNZDGlHYF3KuUftf21sdG4bXDajucnu/lSPvfSKzhMNIG c1+AcvTAeGTPHi2dCfdETjg1dakO4exrX9/ABvu3JY1pp9D8DLHZNc/O9iOvG0O5 6Lp9LhtxCxKdAGJVxKxzXPjwPDSnzNV5sGm1ElFpXzA0Nv17VH/DIL8i6745sQXW ik29Z1QNv3QIOs5U1pe5wyY22D51UJOfS7hVWH+pWPveG46ApYeUxqmfNYoG/Vtr cMspPzCSgZTAvkswCGfnSahlqCSpJxzuxUEkM4HlPTulrW4jbDk= =2cqI -----END PGP SIGNATURE----- Merge tag 'linux-kselftest-5.7-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest Pull kselftest fixes from Shuah Khan: - lkdtm runner fixes to prevent dmesg clearing and shellcheck errors - ftrace test handling when test module doesn't exist - nsfs test fix to replace zero-length array with flexible-array - dmabuf-heaps test fix to return clear error value * tag 'linux-kselftest-5.7-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest: selftests/lkdtm: Use grep -E instead of egrep selftests/lkdtm: Don't clear dmesg when running tests selftests/ftrace: mark irqsoff_tracer.tc test as unresolved if the test module does not exist tools/testing: Replace zero-length array with flexible-array kselftests: dmabuf-heaps: Fix confused return value on expected error testing
This commit is contained in:
commit
ce24729667
|
@ -351,6 +351,7 @@ static int test_alloc_errors(char *heap_name)
|
|||
}
|
||||
|
||||
printf("Expected error checking passed\n");
|
||||
ret = 0;
|
||||
out:
|
||||
if (dmabuf_fd >= 0)
|
||||
close(dmabuf_fd);
|
||||
|
|
|
@ -17,7 +17,14 @@ unsup() { #msg
|
|||
exit_unsupported
|
||||
}
|
||||
|
||||
modprobe $MOD || unsup "$MOD module not available"
|
||||
unres() { #msg
|
||||
reset_tracer
|
||||
rmmod $MOD || true
|
||||
echo $1
|
||||
exit_unresolved
|
||||
}
|
||||
|
||||
modprobe $MOD || unres "$MOD module not available"
|
||||
rmmod $MOD
|
||||
|
||||
grep -q "preemptoff" available_tracers || unsup "preemptoff tracer not enabled"
|
||||
|
|
|
@ -25,13 +25,13 @@ fi
|
|||
# Figure out which test to run from our script name.
|
||||
test=$(basename $0 .sh)
|
||||
# Look up details about the test from master list of LKDTM tests.
|
||||
line=$(egrep '^#?'"$test"'\b' tests.txt)
|
||||
line=$(grep -E '^#?'"$test"'\b' tests.txt)
|
||||
if [ -z "$line" ]; then
|
||||
echo "Skipped: missing test '$test' in tests.txt"
|
||||
exit $KSELFTEST_SKIP_TEST
|
||||
fi
|
||||
# Check that the test is known to LKDTM.
|
||||
if ! egrep -q '^'"$test"'$' "$TRIGGER" ; then
|
||||
if ! grep -E -q '^'"$test"'$' "$TRIGGER" ; then
|
||||
echo "Skipped: test '$test' missing in $TRIGGER!"
|
||||
exit $KSELFTEST_SKIP_TEST
|
||||
fi
|
||||
|
@ -59,30 +59,32 @@ if [ -z "$expect" ]; then
|
|||
expect="call trace:"
|
||||
fi
|
||||
|
||||
# Clear out dmesg for output reporting
|
||||
dmesg -c >/dev/null
|
||||
|
||||
# Prepare log for report checking
|
||||
LOG=$(mktemp --tmpdir -t lkdtm-XXXXXX)
|
||||
LOG=$(mktemp --tmpdir -t lkdtm-log-XXXXXX)
|
||||
DMESG=$(mktemp --tmpdir -t lkdtm-dmesg-XXXXXX)
|
||||
cleanup() {
|
||||
rm -f "$LOG"
|
||||
rm -f "$LOG" "$DMESG"
|
||||
}
|
||||
trap cleanup EXIT
|
||||
|
||||
# Save existing dmesg so we can detect new content below
|
||||
dmesg > "$DMESG"
|
||||
|
||||
# Most shells yell about signals and we're expecting the "cat" process
|
||||
# to usually be killed by the kernel. So we have to run it in a sub-shell
|
||||
# and silence errors.
|
||||
($SHELL -c 'cat <(echo '"$test"') >'"$TRIGGER" 2>/dev/null) || true
|
||||
|
||||
# Record and dump the results
|
||||
dmesg -c >"$LOG"
|
||||
dmesg | diff --changed-group-format='%>' --unchanged-group-format='' "$DMESG" - > "$LOG" || true
|
||||
|
||||
cat "$LOG"
|
||||
# Check for expected output
|
||||
if egrep -qi "$expect" "$LOG" ; then
|
||||
if grep -E -qi "$expect" "$LOG" ; then
|
||||
echo "$test: saw '$expect': ok"
|
||||
exit 0
|
||||
else
|
||||
if egrep -qi XFAIL: "$LOG" ; then
|
||||
if grep -E -qi XFAIL: "$LOG" ; then
|
||||
echo "$test: saw 'XFAIL': [SKIP]"
|
||||
exit $KSELFTEST_SKIP_TEST
|
||||
else
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
#define __stack_aligned__ __attribute__((aligned(16)))
|
||||
struct cr_clone_arg {
|
||||
char stack[128] __stack_aligned__;
|
||||
char stack_ptr[0];
|
||||
char stack_ptr[];
|
||||
};
|
||||
|
||||
static int child(void *args)
|
||||
|
|
Loading…
Reference in New Issue
Block a user