[llvm] ee8a5e4 - Fix chrome os failure after 021de7cf80268091cf13485a538b611b37d0b33e.

Roman Lebedev via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 12 06:00:16 PDT 2021


On Mon, Apr 12, 2021 at 3:56 PM Alexey Lapshin <a.v.lapshin at mail.ru> wrote:
>
> It is hard to create a test for this patch, since tested functionality
> requires root access. Is there some approach which might be used in that
> case(requesting root access for the test)?
I see. This should have been in the commit msg.

> Ok, I would create a more meaningful commit message next time.
>
> Thank you, Alexey.
>
> On 12.04.2021 15:35, Roman Lebedev wrote:
> > test?
> > Commit subject could be a bit more useful.
> >
> > On Mon, Apr 12, 2021 at 3:32 PM Alexey Lapshin via llvm-commits
> > <llvm-commits at lists.llvm.org> wrote:
> >>
> >> Author: Alexey Lapshin
> >> Date: 2021-04-12T15:28:32+03:00
> >> New Revision: ee8a5e4bc2c986b8e6c07e81fb58dc1e5a5c2d17
> >>
> >> URL: https://github.com/llvm/llvm-project/commit/ee8a5e4bc2c986b8e6c07e81fb58dc1e5a5c2d17
> >> DIFF: https://github.com/llvm/llvm-project/commit/ee8a5e4bc2c986b8e6c07e81fb58dc1e5a5c2d17.diff
> >>
> >> LOG: Fix chrome os failure after 021de7cf80268091cf13485a538b611b37d0b33e.
> >>
> >> chrome os build failed after D98511:
> >> https://bugs.chromium.org/p/chromium/issues/detail?id=1197970
> >>
> >> This patch fixes permission issue appeared after D98511.
> >>
> >> Added:
> >>
> >>
> >> Modified:
> >>      llvm/tools/llvm-objcopy/llvm-objcopy.cpp
> >>
> >> Removed:
> >>
> >>
> >>
> >> ################################################################################
> >> diff  --git a/llvm/tools/llvm-objcopy/llvm-objcopy.cpp b/llvm/tools/llvm-objcopy/llvm-objcopy.cpp
> >> index 6c6b26b3c32f9..d3cc94782bedd 100644
> >> --- a/llvm/tools/llvm-objcopy/llvm-objcopy.cpp
> >> +++ b/llvm/tools/llvm-objcopy/llvm-objcopy.cpp
> >> @@ -259,6 +259,12 @@ static Error restoreStatOnFile(StringRef Filename,
> >>     if (std::error_code EC = sys::fs::status(FD, OStat))
> >>       return createFileError(Filename, EC);
> >>     if (OStat.type() == sys::fs::file_type::regular_file) {
> >> +#ifndef _WIN32
> >> +    // Keep ownership if llvm-objcopy is called under root.
> >> +    if (Config.InputFilename == Config.OutputFilename && OStat.getUser() == 0)
> >> +      sys::fs::changeFileOwnership(FD, Stat.getUser(), Stat.getGroup());
> >> +#endif
> >> +
> >>       sys::fs::perms Perm = Stat.permissions();
> >>       if (Config.InputFilename != Config.OutputFilename)
> >>         Perm = static_cast<sys::fs::perms>(Perm & ~sys::fs::getUmask() & ~06000);
> >> @@ -268,12 +274,6 @@ static Error restoreStatOnFile(StringRef Filename,
> >>       if (auto EC = sys::fs::setPermissions(FD, Perm))
> >>   #endif
> >>         return createFileError(Filename, EC);
> >> -
> >> -#ifndef _WIN32
> >> -    // Keep ownership if llvm-objcopy is called under root.
> >> -    if (Config.InputFilename == Config.OutputFilename && OStat.getUser() == 0)
> >> -      sys::fs::changeFileOwnership(FD, Stat.getUser(), Stat.getGroup());
> >> -#endif
> >>     }
> >>
> >>     if (auto EC = sys::Process::SafelyCloseFileDescriptor(FD))
> >>
> >>
> >>
> >> _______________________________________________
> >> llvm-commits mailing list
> >> llvm-commits at lists.llvm.org
> >> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits


More information about the llvm-commits mailing list