1.1 |
| 18-Jan-2025 |
rillig | tests/gcov: demonstrate wrong coverage report after vfork/exec
Discovered in usr.bin/make, function Cmd_Exec.
The coverage test I ran on 2024-07-13 was still good. I don't remember the exact version of NetBSD-current I was running back then.
With NetBSD-current from 2025-01-17, gcov does not report full coverage data after a vfork/exec call. Running the test program inside ktrace shows that after a vfork call, the child process writes its coverage data back, probably right before the exec call, but the parent process doesn't.
Running a child process through system(3) is not affected; there, posix_spawn is used instead of vfork/exec.
|