Skip to content

Commit

Permalink
bpfloader: use non-overwriting rename am: e15229f
Browse files Browse the repository at this point in the history
Original change: https://android-review.googlesource.com/c/platform/system/bpf/+/2540010

Change-Id: Id6768f2e546107f62fe16cf4d8d5192d15c428dd
Signed-off-by: Automerger Merge Worker <[email protected]>
  • Loading branch information
zenczykowski authored and android-build-merge-worker-robot committed Apr 17, 2023
2 parents cd8dbf8 + e15229f commit cbe811c
Showing 1 changed file with 5 additions and 2 deletions.
7 changes: 5 additions & 2 deletions libbpf_android/Loader.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
#define LOG_TAG "LibBpfLoader"

#include <errno.h>
#include <fcntl.h>
#include <linux/bpf.h>
#include <linux/elf.h>
#include <log/log.h>
Expand Down Expand Up @@ -901,7 +902,8 @@ static int createMaps(const char* elfPath, ifstream& elfFile, vector<unique_fd>&
ALOGE("create %s -> %d [%d:%s]", createLoc.c_str(), ret, err, strerror(err));
return -err;
}
ret = rename(createLoc.c_str(), mapPinLoc.c_str());
ret = renameat2(AT_FDCWD, createLoc.c_str(),
AT_FDCWD, mapPinLoc.c_str(), RENAME_NOREPLACE);
if (ret) {
int err = errno;
ALOGE("rename %s %s -> %d [%d:%s]", createLoc.c_str(), mapPinLoc.c_str(), ret,
Expand Down Expand Up @@ -1153,7 +1155,8 @@ static int loadCodeSections(const char* elfPath, vector<codeSection>& cs, const
ALOGE("create %s -> %d [%d:%s]", createLoc.c_str(), ret, err, strerror(err));
return -err;
}
ret = rename(createLoc.c_str(), progPinLoc.c_str());
ret = renameat2(AT_FDCWD, createLoc.c_str(),
AT_FDCWD, progPinLoc.c_str(), RENAME_NOREPLACE);
if (ret) {
int err = errno;
ALOGE("rename %s %s -> %d [%d:%s]", createLoc.c_str(), progPinLoc.c_str(), ret,
Expand Down

0 comments on commit cbe811c

Please sign in to comment.