On Sun, Nov 20, 2016 at 06:03:29PM +0300, Vladimir Stavrinov wrote: >On Sat, Nov 19, 2016 at 09:03:17PM +0000, Steve McIntyre wrote: > >> That's not a guarantee - a simple update of the EFI variables (e.g. by > >Guarantee what? > >> afterwards. There have been known bugs in some firmware > >Again: this problem is result of Debian upgrade.That is, software was >changed and no changes was made in hardware. Do You think if Linux >doesn't work on that hardware, then hardware is wrong? In this case >I am wonder how do Linux are working for few decades all over the >hardware.
Based on experience of UEFI, I'm trying to explain where the problem is likely to be. But you're continuing to disagree with me. >> >From experience with other Lenovo machines, you *may* be able to fix >> this by re-flashing the firmware/BIOS - this typically resets the EFI >> variable storage space. > >Why it is about storage space again? Nothing changed there. Moreover, >this "buggy" firmware successfully booted from other media, such as >flash drive or usb hard drive. But there no efibootmgr command was >used. Nothing was written into variable space in this case - efi >loader was found by firmware without any record being made into that >space. > >Could You assume that there are some sort of software bug? Let me explain again. This code is working absolutely fine on lots of machines every day. It worked fine on your machine until recently. There have not been major changes in what the software does. There are known example of UEFI firmware in the wild that have demonstrated a problem with managing EFI variable space when writing new variables. I believe that's what your problem is, and I've not seen anything new in what you've demonstrated that suggest any different. Over time, things *have* changed in terms of storage space on your machine - *every* time that grub-install calls efibootmgr to update the registered boot path, that will cause a write to the variable storage space. Merely booting from that path, or from any other media, does not involve writing any changes. efibootmgr itself is not at fault here as far as I can see - it's simply reporting an error when trying to write a new EFI variable. If you want to confirm that, you try booting an old version of Debian (or another OS) and see if different versions of the UEFI software stack report the same issue. -- Steve McIntyre, Cambridge, UK. [email protected] "I used to be the first kid on the block wanting a cranial implant, now I want to be the first with a cranial firewall. " -- Charlie Stross

