-
Notifications
You must be signed in to change notification settings - Fork 293
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
Freshly compiled Shim-15.7 (x86_64) cannot load grubx64.efi #624
Comments
Here is some additional information: Therefore, I believe that this is the cause of this problem. But why does second_stage lose its value? The value "\grubx64.efi" is set earlier, before the execution of init_grub()... |
The solution was found. Please have a look here: https://github.com/rhboot/shim/pull/625 |
@Jurij-Ivastsuk did you manage to understand what is replacing |
@AndrewSav My PR 625 was rejected, and that is correct. The first attempt was pretty quick but not a good solution for everyone. But pointing out the weakness of this solution helped me move forward. I think I have actually localized the problem. I still need to do a lot of testing to be able to say that this would actually be a solution for everyone. |
@AndrewSav We have localized the problem. The overwriting of the value for second_stage takes place in the function parse_load_options() in the file load-options.c Because the function split_load_options() returns a non-printable ascii character, the originally set value \grubx64.efi is overwritten by this character. You can view the problem description and the solution here: |
After some research I found a similar solution. It starts at exactly the same point as I did and checks whether the value of this variable represents a valid path before overwriting the variable "second_stage": Various checks are implemented there, but the check whether the first character contains a non-printable ASCII character is omitted. If you are looking for a general solution to this problem, perhaps a combination of both solutions: mine and the one just mentioned would be a better solution that takes several eventualities into account. But in my opinion, one should make a fundamental consideration whether the function parse_load_options() has any justification at all. |
It's usually not good practice to post comments twice - as you're ofc aware, your issue is discussed at both places you've posted, and probably other people reading this who are more or less up to speed on the issue are aware of that too. (So basically, people who care much get your message twice - and have to scroll through it twice in future, if scrolling through both threads - and only people who don't care much see it maybe once or never!) Thx. (Feel free to just delete one, if on reflection you feel this comment is justified - and I'll delete this! :-) ) |
@mikebeaton Thanks for the tip. According to my consideration, there are different readers: some who only participate in discussions and others like the reviewers who need more basic information to judge whether the proposed solution is good or not. To inform both groups I posted the information on both channels. Only in the latter case the text is identical. |
It does not annoy me personally, if it is posted twice. I can skip if I have read it before. I agree that the audiences might not cross over in parts. As long as it is not every single message duplicated it's fine IMO. |
Of course it got rejected. Because people are completely stupid. |
@PC-Doctor666 Hello, sorry, but your comments are unfortunately not very constructive. |
Freshly compiled Shim-15.7 (x86_64) cannot load grubx64.efi, only after "falling back to default loader" grubx64.efi can be loaded.
Does anyone know the cause? How can this problem be solved?
Thanks in advance!
Jurij
The text was updated successfully, but these errors were encountered: