On 10/06/20 19:43, Bird, Tim wrote: >>> (rc=$?; \ >>> if [ $rc -eq $skip_rc ]; then \ >>> - echo "not ok $test_num $TEST_HDR_MSG # SKIP" >>> + echo "ok $test_num $TEST_HDR_MSG # SKIP" > > This is a pretty big change, and might break upstream CIs that have come to > rely on kselftest's existing behavior. I know it's going to break Fuego's parsing > of results. Do you have a pointer to this code? > kselftest has a few conventions that are different from the TAP spec, > and a few items it does that are extensions to the TAP spec. Yes, there are extensions to directives are not a problem and parsers might raise an error on them. That can be an issue, but it's a separate one (and it's easier to ignore it as long as test pass...). > IMHO, the TAP spec got this one wrong, but I could be convinced > otherwise. Here the TAP spec says that a skip starts with "ok" and has a "SKIP" directive, and anyone can parse it to treat as it as a failure if desirable. But doing something else should be treated simply as a violation of the spec, it's not a matter of "right" or "wrong". So, if you want to use "not ok ... # SKIP", don't call it TAP. However, I noticed now that there is another instance of "not ok.*SKIP" in testing/selftests/kselftest.h (and also one in a comment). So they should all be fixed at the same time, and I'm okay with holding this patch. Paolo > But I think we should discuss this among CI users of > kselftest before making the change. > > I started work quite a while ago on an effort to document the > conventions used by kselftest (particularly where it deviates > from the TAP spec), but never submitted it. > > I'm going to submit what I've got as an RFC now, for discussion, > even though it's not finished. I'll do that in a separate thread. > > >>> elif [ $rc -eq $timeout_rc ]; then \ >>> echo "#" >>> echo "not ok $test_num $TEST_HDR_MSG # TIMEOUT" >>> >> >> Thanks. I will pull this in for Linux 5.8-rc2 > Shuah - can you hold off on this until we discuss it? > > Thanks, > -- Tim >