Junio C Hamano reported a noticeable pause after "rm -f -r 'test-results'" before real output appears in "make test", which he attributes to make test-lint. Five consecutive runs took about 49 seconds. After reverting the merge of mm/test-grep-lint they took about 9 seconds. He asked whether it can be made faster.

Jeff King reproduced the problem. "make test-greplint" takes about 6.5 seconds for him, against about 111 seconds for the whole test suite, so over 5 percent of the run, and it is more noticeable because it all happens before any output.

King noted that chainlint uses similar CPU time because the two share a parser, but chainlint runs in parallel, so the grep lint could probably do the same. He also said it seems like a lot of processing to detect one type of lint error, and that spreading the parsing cost across other lint checks, or chainlint itself, might be more palatable. He posted a patch that he says reduces the cost by about 50 percent.