On Fri, Aug 5, 2022 at 9:17 PM Thomas Munro <thomas.mu...@gmail.com> wrote: > Hmm, POSIX says st_link should contain the length of a symlink's > target path, so I suppose we should probably set that even though we > never consult it. Here's a version that does that. I also removed > the rest of the now redundant #ifdef S_ISLNK conditions.
Pushed. Hmm, this stuff could *really* use a little test framework that's run by check-world, that exercises these various replacement operations. But I also suspect that problems in this area are likely to be due to concurrency. It's hard to make a simple test that simulates the case where a file is unlinked between system calls within stat() and hits the STATUS_DELETE_PENDING case. That check is code I cargo-culted in this patch. So much of the stuff we've had in the tree relating to that area has been wrong in the past...