Adding --use-good-revision
See original GitHub issueI’m opening this to get general feedback on the concept before I go through and implement the option.
There are times where the LLVM tree may be in a broken state (build error or runtime failure). Given that this script is more aimed at kernel developers wanting to try new LLVM/Clang features but having to bother with debugging/triaging unrelated LLVM/Clang issues, it might be nice to have an option like --use-good-revision
that will automatically checkout a known good working revision of LLVM that builds and works properly for the kernel’s sake. This revision should be as close to tip of tree as possible so that the user is always getting the latest fixes.
Ideally, this option won’t have to be used that often. The only problem that I can potentially foresee is a user cloning the script, never updating the script, and always using this option but I don’t necessarily see that as a bad thing. If they ever run into a problem that we fixed in a newer version, we can just tell them to update the script to get that new revision.
Before bumping the revision, the user should run the kernel/build.sh
script to qualify the revision being tested, ideally with --allyesconfig
if #29 gets accepted to get the most coverage. I envision this revision bump happening every week or so.
Let me know if there are any potential issues I am not seeing. I am totally fine with not implementing this if people feel it is not a good idea but I think it would be beneficial to users who just want something that works.
Issue Analytics
- State:
- Created 4 years ago
- Comments:9 (9 by maintainers)
Top GitHub Comments
From my workflow I jump on the desired
GIT_BRANCH
and do if needed agit reset {--hard} GIT_HASH
.[1] https://github.com/llvm/llvm-project/commits/release/9.x [2] https://github.com/llvm/llvm-project/commit/2cf681a11aea
@dileks I think implementing that will be rather convoluted (we’d have to add another parameter or some heuristic to giving both a branch and a hash). If you want to manually manage the repository like that, you should just pass
--no-pull
to the script (maybe should rename the option). I’d also argue that is an antipattern, you should ideally be using and testing the latest version of the software.