-
Notifications
You must be signed in to change notification settings - Fork 14.3k
[sanitizer_common][test] Remove second SanitizerCommon.ReportFile tem… #126509
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[sanitizer_common][test] Remove second SanitizerCommon.ReportFile tem… #126509
Conversation
…p file The SanitizerCommon.ReportFile leaves a temp file behind on every run. While this is not a problem for manual builds, on buildbots those file accumulate over time, interfering with other bots on the same system. The files in question are named like `sanitizer_common.reportfile.tmp.XXXXXX.<pid>`. The issue can be seen in Solaris `truss` output: ``` 22633: fstatat64(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja", 0xFEFFBAD0, AT_SYMLINK_NOFOLLOW) Err#2 ENOENT 22633: openat64(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja", O_RDWR|O_CREAT|O_EXCL, 0600) = 3 22633: openat64(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja.22633", O_WRONLY|O_CREAT|O_TRUNC, 0660) = 4 22633: unlinkat(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja", 0) = 0 ``` The first temp file, created by `temp_file_name`, is removed at the end of the test, the second one, created in `ReportFile::GetReportPath` using `OpenFile`, is not. This patch fixes this, simply removing the file. Tested on `amd64-pc-solaris2.11` and `x86_64-pc-linux-gnu`.
@llvm/pr-subscribers-compiler-rt-sanitizer Author: Rainer Orth (rorth) Changes…p file The The files in question are named like
The first temp file, created by This patch fixes this, simply removing the file. Tested on Full diff: https://github.com/llvm/llvm-project/pull/126509.diff 1 Files Affected:
diff --git a/compiler-rt/lib/sanitizer_common/tests/sanitizer_libc_test.cpp b/compiler-rt/lib/sanitizer_common/tests/sanitizer_libc_test.cpp
index 272520fa51f01e2..1bec83be4c80bd6 100644
--- a/compiler-rt/lib/sanitizer_common/tests/sanitizer_libc_test.cpp
+++ b/compiler-rt/lib/sanitizer_common/tests/sanitizer_libc_test.cpp
@@ -352,6 +352,7 @@ TEST(SanitizerCommon, ReportFile) {
// This will close tmpfile.
report_file.SetReportPath("stderr");
Unlink(tmpfile);
+ Unlink(path);
}
TEST(SanitizerCommon, FileExists) {
|
llvm#126509) …p file The `SanitizerCommon.ReportFile` test leaves a temp file behind on every run. While this is not a problem for manual builds, on buildbots those files accumulate over time, interfering with other bots on the same system. The files in question are named like `sanitizer_common.reportfile.tmp.XXXXXX.<pid>`. The issue can be seen in Solaris `truss` output: ``` 22633: fstatat64(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja", 0xFEFFBAD0, AT_SYMLINK_NOFOLLOW) Err#2 ENOENT 22633: openat64(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja", O_RDWR|O_CREAT|O_EXCL, 0600) = 3 22633: openat64(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja.22633", O_WRONLY|O_CREAT|O_TRUNC, 0660) = 4 22633: unlinkat(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja", 0) = 0 ``` The first temp file, created by `temp_file_name`, is removed at the end of the test, the second one, created in `ReportFile::GetReportPath` using `OpenFile`, is not. This patch fixes this, simply removing the file. Tested on `amd64-pc-solaris2.11` and `x86_64-pc-linux-gnu`.
llvm#126509) …p file The `SanitizerCommon.ReportFile` test leaves a temp file behind on every run. While this is not a problem for manual builds, on buildbots those files accumulate over time, interfering with other bots on the same system. The files in question are named like `sanitizer_common.reportfile.tmp.XXXXXX.<pid>`. The issue can be seen in Solaris `truss` output: ``` 22633: fstatat64(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja", 0xFEFFBAD0, AT_SYMLINK_NOFOLLOW) Err#2 ENOENT 22633: openat64(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja", O_RDWR|O_CREAT|O_EXCL, 0600) = 3 22633: openat64(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja.22633", O_WRONLY|O_CREAT|O_TRUNC, 0660) = 4 22633: unlinkat(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja", 0) = 0 ``` The first temp file, created by `temp_file_name`, is removed at the end of the test, the second one, created in `ReportFile::GetReportPath` using `OpenFile`, is not. This patch fixes this, simply removing the file. Tested on `amd64-pc-solaris2.11` and `x86_64-pc-linux-gnu`.
llvm#126509) …p file The `SanitizerCommon.ReportFile` test leaves a temp file behind on every run. While this is not a problem for manual builds, on buildbots those files accumulate over time, interfering with other bots on the same system. The files in question are named like `sanitizer_common.reportfile.tmp.XXXXXX.<pid>`. The issue can be seen in Solaris `truss` output: ``` 22633: fstatat64(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja", 0xFEFFBAD0, AT_SYMLINK_NOFOLLOW) Err#2 ENOENT 22633: openat64(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja", O_RDWR|O_CREAT|O_EXCL, 0600) = 3 22633: openat64(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja.22633", O_WRONLY|O_CREAT|O_TRUNC, 0660) = 4 22633: unlinkat(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja", 0) = 0 ``` The first temp file, created by `temp_file_name`, is removed at the end of the test, the second one, created in `ReportFile::GetReportPath` using `OpenFile`, is not. This patch fixes this, simply removing the file. Tested on `amd64-pc-solaris2.11` and `x86_64-pc-linux-gnu`.
…p file
The
SanitizerCommon.ReportFile
test leaves a temp file behind on every run. While this is not a problem for manual builds, on buildbots those files accumulate over time, interfering with other bots on the same system.The files in question are named like
sanitizer_common.reportfile.tmp.XXXXXX.<pid>
. The issue can be seen in Solaristruss
output:The first temp file, created by
temp_file_name
, is removed at the end of the test, the second one, created inReportFile::GetReportPath
usingOpenFile
, is not.This patch fixes this, simply removing the file.
Tested on
amd64-pc-solaris2.11
andx86_64-pc-linux-gnu
.