-
Notifications
You must be signed in to change notification settings - Fork 15.2k
Reapply "[NFC] Fix CodeQL violations in compiler-rt. (#157793)" (#157… #159097
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
Conversation
…lvm#157913) Fix below buildbot failure. ``` /var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/compiler-rt/lib/fuzzer/FuzzerDriver.cpp:172:42: error: use of undeclared identifier 'uint' 172 | Printf("Flag: %s %u\n", Name, (uint)Val); ``` Replace uint with uint32_t cast. This reverts commit 8062b16.
@llvm/pr-subscribers-compiler-rt-sanitizer Author: Amit Kumar Pandey (ampandey-1995) Changes…913) Fix below buildbot failure.
Replace uint with uint32_t cast. This reverts commit 8062b16. Full diff: https://github.com/llvm/llvm-project/pull/159097.diff 5 Files Affected:
diff --git a/compiler-rt/lib/dfsan/dfsan.cpp b/compiler-rt/lib/dfsan/dfsan.cpp
index d09a9a70fd83b..524422a9f9388 100644
--- a/compiler-rt/lib/dfsan/dfsan.cpp
+++ b/compiler-rt/lib/dfsan/dfsan.cpp
@@ -1128,7 +1128,8 @@ static bool CheckMemoryRangeAvailability(uptr beg, uptr size, bool verbose) {
uptr end = beg + size - 1;
if (!MemoryRangeIsAvailable(beg, end)) {
if (verbose)
- Printf("FATAL: Memory range %p - %p is not available.\n", beg, end);
+ Printf("FATAL: Memory range %p - %p is not available.\n", (void*)beg,
+ (void*)end);
return false;
}
}
@@ -1150,8 +1151,8 @@ static bool ProtectMemoryRange(uptr beg, uptr size, const char *name) {
}
if ((uptr)addr != beg) {
uptr end = beg + size - 1;
- Printf("FATAL: Cannot protect memory range %p - %p (%s).\n", beg, end,
- name);
+ Printf("FATAL: Cannot protect memory range %p - %p (%s).\n", (void*)beg,
+ (void*)end, name);
return false;
}
}
@@ -1172,7 +1173,7 @@ static bool InitShadow(bool init_origins, bool dry_run) {
if (!MEM_IS_APP(&__dfsan::dfsan_init)) {
if (!dry_run)
Printf("FATAL: Code %p is out of application range. Non-PIE build?\n",
- (uptr)&__dfsan::dfsan_init);
+ (void*)&__dfsan::dfsan_init);
return false;
}
diff --git a/compiler-rt/lib/fuzzer/FuzzerCorpus.h b/compiler-rt/lib/fuzzer/FuzzerCorpus.h
index 48b5a2cff02e2..12a75fea24fba 100644
--- a/compiler-rt/lib/fuzzer/FuzzerCorpus.h
+++ b/compiler-rt/lib/fuzzer/FuzzerCorpus.h
@@ -336,7 +336,8 @@ class InputCorpus {
void PrintFeatureSet() {
for (size_t i = 0; i < kFeatureSetSize; i++) {
if(size_t Sz = GetFeature(i))
- Printf("[%zd: id %zd sz%zd] ", i, SmallestElementPerFeature[i], Sz);
+ Printf("[%zd: id %zd sz%zd] ", i, (size_t)SmallestElementPerFeature[i],
+ Sz);
}
Printf("\n\t");
for (size_t i = 0; i < Inputs.size(); i++)
diff --git a/compiler-rt/lib/fuzzer/FuzzerDriver.cpp b/compiler-rt/lib/fuzzer/FuzzerDriver.cpp
index af9c260537e2f..6b25aa9942d2e 100644
--- a/compiler-rt/lib/fuzzer/FuzzerDriver.cpp
+++ b/compiler-rt/lib/fuzzer/FuzzerDriver.cpp
@@ -163,13 +163,13 @@ static bool ParseOneFlag(const char *Param) {
auto Val = MyStol(Str);
*FlagDescriptions[F].IntFlag = static_cast<int>(Val);
if (Flags.verbosity >= 2)
- Printf("Flag: %s %d\n", Name, Val);
+ Printf("Flag: %s %d\n", Name, (int)Val);
return true;
} else if (FlagDescriptions[F].UIntFlag) {
auto Val = std::stoul(Str);
*FlagDescriptions[F].UIntFlag = static_cast<unsigned int>(Val);
if (Flags.verbosity >= 2)
- Printf("Flag: %s %u\n", Name, Val);
+ Printf("Flag: %s %u\n", Name, (uint32_t)Val);
return true;
} else if (FlagDescriptions[F].StrFlag) {
*FlagDescriptions[F].StrFlag = Str;
diff --git a/compiler-rt/lib/fuzzer/FuzzerLoop.cpp b/compiler-rt/lib/fuzzer/FuzzerLoop.cpp
index 6f415dd5763ac..75c2fb71eb070 100644
--- a/compiler-rt/lib/fuzzer/FuzzerLoop.cpp
+++ b/compiler-rt/lib/fuzzer/FuzzerLoop.cpp
@@ -125,8 +125,8 @@ void FreeHook(const volatile void *ptr) {
void Fuzzer::HandleMalloc(size_t Size) {
if (!Options.MallocLimitMb || (Size >> 20) < (size_t)Options.MallocLimitMb)
return;
- Printf("==%d== ERROR: libFuzzer: out-of-memory (malloc(%zd))\n", GetPid(),
- Size);
+ Printf("==%d== ERROR: libFuzzer: out-of-memory (malloc(%zd))\n",
+ (int)GetPid(), Size);
Printf(" To change the out-of-memory limit use -rss_limit_mb=<N>\n\n");
PrintStackTrace();
DumpCurrentUnit("oom-");
@@ -568,7 +568,7 @@ size_t Fuzzer::GetCurrentUnitInFuzzingThead(const uint8_t **Data) const {
void Fuzzer::CrashOnOverwrittenData() {
Printf("==%d== ERROR: libFuzzer: fuzz target overwrites its const input\n",
- GetPid());
+ (int)GetPid());
PrintStackTrace();
Printf("SUMMARY: libFuzzer: overwrites-const-input\n");
DumpCurrentUnit("crash-");
diff --git a/compiler-rt/lib/hwasan/hwasan_report.cpp b/compiler-rt/lib/hwasan/hwasan_report.cpp
index 6eafcf9163afa..871aa74f99c4e 100644
--- a/compiler-rt/lib/hwasan/hwasan_report.cpp
+++ b/compiler-rt/lib/hwasan/hwasan_report.cpp
@@ -738,9 +738,9 @@ void BaseReport::PrintHeapOrGlobalCandidate() const {
Printf("%s", d.Default());
Printf("%s", d.Location());
Printf("%p is located %zd bytes %s a %zd-byte region [%p,%p)\n",
- untagged_addr, offset, whence,
+ (void*)untagged_addr, offset, whence,
candidate.heap.end - candidate.heap.begin,
- (void *)candidate.heap.begin, (void *)candidate.heap.end);
+ (void*)candidate.heap.begin, (void*)candidate.heap.end);
Printf("%s", d.Allocation());
Printf("allocated by thread T%u here:\n", candidate.heap.thread_id);
Printf("%s", d.Default());
@@ -775,14 +775,14 @@ void BaseReport::PrintHeapOrGlobalCandidate() const {
Printf(
"%p is located %s a global variable in "
"\n #0 0x%x (%s+0x%x)\n",
- (void *)untagged_addr, candidate.after ? "after" : "before",
- (void *)candidate.untagged_addr, module_name, (u32)module_address);
+ (void*)untagged_addr, candidate.after ? "after" : "before",
+ (u32)candidate.untagged_addr, module_name, (u32)module_address);
else
Printf(
"%p is located %s a %zd-byte global variable in "
"\n #0 0x%x (%s+0x%x)\n",
- (void *)untagged_addr, candidate.after ? "after" : "before", size,
- (void *)candidate.untagged_addr, module_name, (u32)module_address);
+ (void*)untagged_addr, candidate.after ? "after" : "before", size,
+ (u32)candidate.untagged_addr, module_name, (u32)module_address);
}
Printf("%s", d.Default());
}
@@ -843,9 +843,9 @@ void BaseReport::PrintAddressDescription() const {
Printf("\nCause: use-after-free\n");
Printf("%s", d.Location());
Printf("%p is located %zd bytes inside a %zd-byte region [%p,%p)\n",
- (void *)untagged_addr, untagged_addr - UntagAddr(har.tagged_addr),
- (ssize)har.requested_size, UntagAddr(har.tagged_addr),
- (void *)(UntagAddr(har.tagged_addr) + har.requested_size));
+ (void*)untagged_addr, untagged_addr - UntagAddr(har.tagged_addr),
+ (ssize)har.requested_size, (void*)UntagAddr(har.tagged_addr),
+ (void*)(UntagAddr(har.tagged_addr) + har.requested_size));
Printf("%s", d.Allocation());
Printf("freed by thread T%u here:\n", ha.free_thread_id);
Printf("%s", d.Default());
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the fix!
For reapply pull requests, please put two commits in the pull request: one commit that cleanly reapplies the reverted patch, and then a second commit with the fix; that would make it much easier to review than one squashed commit.
Thanks for approval and merging.
Sure. I agree. There are some pending violations in compiler-rt which still need to be addressed. I have opened the github issue for those cases as it required some more understanding regarding that codebase. |
…913)
Fix below buildbot failure.
Replace uint with uint32_t cast.
This reverts commit 8062b16.