memory-leaks

Still reachable: lots of words in many pages.
git clone https://git.kevinlegouguec.net/memory-leaks
Log | Files | Refs | README | LICENSE

maintenance.org (11551B)


      1 * Assembly
      2 Lots of impedance mismatches between "documentation" and actual
      3 hardware:
      4 - CPU cooler (fan) has spring screws; diagrams show retention clips.
      5   Had to dig into the [[https://www.amd.com/en/support/kb/faq/cpu-7][AMD knowledge base]] to find that some
      6   motherboards come with "speculative" clips, which must be unscrewed
      7   and removed in order to install the spring-screw cooler.
      8 - Diagrams say to add thermal paste, but the fan already comes with a
      9   pre-applied layer.
     10 - Documentation shows RAM clips for both ends of the sticks; the
     11   motherboard seems to only have clips for one end.
     12 - =SYS_FAN1= header has 4 pins; front fan plug has 3 holes.  The
     13   Internet says it's fine ([[https://old.reddit.com/r/buildapc/comments/4139k8/3_pin_sys_fan2_vs_4_pin_sys_fan1/][[1]​]], [[https://forums.tomshardware.com/threads/sys_fan1-and-sys_fan2.3195778/][[2]​]]).
     14 - Motherboard has [[https://www.msi.com/Motherboard/B550M-A-PRO/Specification]["8 mounting holes"]] but covers only 6 of the case's
     15   standoffs; none of the diagrams in the case's manual match the
     16   format of the motherboard.
     17 - The diagram for inserting the power supply unit leaves a lot to the
     18   imagination.
     19 - The [[https://www.snia.org/forums/cmsi/knowledge/formfactors#U2][SSD dimension nomenclature]] is weird as hell.  The SSD's user
     20   manual seems to imply that I have a 2.5″ model, but my measuring
     21   tape says the drive is 2.75″×3.875″ (diagonal 4.625″).
     22 - The link to the LDLC guide for mounting the SSD is dead; the page is
     23   [[https://web.archive.org/web/20170901191800/http://www.ldlc.com/guides/AL00000817/comment-installer-un-ssd-dans-un-pc/][archived]], and merely contains a link to a [[https://www.youtube.com/watch?v=t1dHVb6VuWU][video]].  No matter though,
     24   since it does not describe how to mount the drive on a 2.5″ bay.
     25 - The case user manual says to use specific screws for the SSD drive;
     26   the SSD comes with its own set of screws.  Are they meant for the
     27   3.5″ adapter?  🤷
     28 
     29 For novices, some steps range from "not very reassuring" to "downright
     30 hostile":
     31 - The amount of force needed to connect the CPU fan's first two
     32   diagonal screws is terrifying.
     33 - The fan's case is asymmetric: one side has a small bump featuring
     34   the maker's brand.  If one does not attention when mounting the fan,
     35   there is a 50% chance that this bump will get in the way of a RAM
     36   stick.
     37 - No instruction on [[https://www.youtube.com/watch?v=XAWNzd-gc3Q&t=74s][how to force that I/O shield in]].
     38 - No instruction on how to snap the motherboard into the I/O shield.
     39 - Holy =$DEITY= that power supply unit has a *lot* of cables.  And of
     40   course I enthusiastically passed most of the small-headed ones
     41   through the designated case hole, and had to pass them back out
     42   because there was no room left to pass the 20-pin ATX connector.
     43 - Power supply user manual was taped to the bubble wrap, so part of
     44   the "warnings" section got torn off.
     45 * Front panel
     46 The case's manual has a terse illustration with two arrows to pull the
     47 front panel "away and up" from the rest of the case.
     48 
     49 Here too, the amount of force required to do that is terrifying.
     50 Notice how [[https://www.youtube.com/watch?v=nUD0HyzVpLg][our friend here]] cuts abruptly at 8:17; that's because the
     51 levels of violence required to tear that panel off are too graphic for
     52 YouTube.
     53 * Front fan
     54 Remember that fan from earlier, the one with only 3 holes for the
     55 motherboard's 4 pins?  Turns out
     56 
     57 1. that last "optional" pin is supposed to allow speed control;
     58    without it, the fan always spins at full speed;
     59 2. the fan itself (ZA1225ASL) is [[https://www.youtube.com/watch?v=pd6gDY7LPlU][complete and utter crap]]: it cannot be
     60    disassembled, so no cleaning off the dirt, no greasing.
     61 
     62 So the thing is loud, it always spins at full speed, and if one day it
     63 decides to become even louder than usual, you're SOL.
     64 * Motherboard
     65 ** Firmware updates
     66 *** Prologue
     67 Quoth ~fwupdmgr get-devices~:
     68 
     69 #+begin_example
     70 WARNING: UEFI capsule updates not available or enabled in firmware setup
     71 See https://github.com/fwupd/fwupd/wiki/PluginFlag:capsules-unsupported for more information.
     72 #+end_example
     73 
     74 Quoth the wiki:
     75 
     76 #+begin_quote
     77 Most typically entering the firmware setup screen and enabling capsule
     78 updates will cause this warning to disappear, and also make firmware
     79 updates possible. The relevant option may be poorly labelled, for
     80 example "allow Windows UEFI updates".
     81 #+end_quote
     82 
     83 Not seeing any such option in the boot menu.
     84 
     85 #+begin_quote
     86 It is possible, but unlikely, that flashing the latest vendor BIOS,
     87 using either Windows or a LiveCD, will add support for [the thing that
     88 correlates with capsule updates being enabled].
     89 #+end_quote
     90 
     91 Well then.  [[https://www.msi.com/Motherboard/B550M-A-PRO/support#bios][Vendor says]] "put this on a stick; reboot; ask the menu to
     92 flash from the stick".  Putting some feelers out first:
     93 
     94 #+begin_quote
     95 If you execute a UEFI update, this update might delete the existing
     96 UEFI boot entries
     97 
     98 — [[https://wiki.archlinux.org/title/GRUB#Installation][ArchWiki]], 2024
     99 #+end_quote
    100 
    101 #+begin_quote
    102 Like others in this forum, I too suffered from a reformatted EFI
    103 partition following a BIOS update on my desktop pc.  I had no idea
    104 that the MSI BIOS team doesn’t care about Linux installs, so to my
    105 surprise, following the update, my system booted straight to windows.
    106 
    107 […]
    108 
    109 Ultimately, I completely wiped and recreated the EFI partition with
    110 gparted (fat32), changed the structure to GPT with gdisk, and then
    111 mounted that partition in the /mnt/efi location, and then proceeded to
    112 generate a new fstab with genfstab.  After arch-chroot’ing into my
    113 endeavoros install, I ran bootctl install (which complained about boot
    114 loader not setting esp information) and then reinstall-kernels.  I
    115 updated the loader.conf with the correct default boot ID, and set the
    116 recommended options.  That got me back into my system after quite a
    117 bit of trial and error.
    118 
    119 — [[https://forum.endeavouros.com/t/endeavoros-efi-partition-wiped-by-msi-bios-update/54740][EndeavorOS forums]], May 2024
    120 #+end_quote
    121 
    122 #+begin_quote
    123 when updating the bios, it cleared all my settings.  Apparently, this
    124 includes clearing the list of boot loaders, which it set back to the
    125 default of just Windows.  Sadly this bios does not provide the tools
    126 to add boot entries as, apparently, some do.  To fix it, I managed to
    127 boot to a Linux live USB and add the missing entry using the efiboomgr
    128 command line tool.
    129 
    130 — [[https://forum-en.msi.com/index.php?threads/updating-to-bios-7a32v1q1-wont-see-linux-uefi-boot.388109/][MSI AMD forums]], August 2023
    131 #+end_quote
    132 
    133 Welp.
    134 
    135 OT1H, I could dedicate a couple of week-ends learning the joys and
    136 wonders of efibootmgr, gdisk & friends.  OTOH I sort of like keeping
    137 my desktop station… not bricked?
    138 
    139 Pity, because otherwise I've had smooth and incident-free firmware
    140 updates on other stations with ~fwupdmgr~ 🤷
    141 *** But then
    142 {{{narrator(waves vaguely toward [[file:killing-time.org][that whole debacle]])}}}
    143 *** Our protagonist sets forth
    144 Put the =.2G1= file on the USB stick, rebooted into UEFI, rebooted
    145 into "M-Flash", did the thing, rebooted.
    146 
    147 Predictably:
    148 #+begin_example
    149 Entering rescue mode...
    150 grub rescue> help
    151 Unknown command `help'.
    152 grub rescue>
    153 #+end_example
    154 
    155 =ls='d and =set='d around, browsed a couple of online posts from
    156 similarly marooned comrades[fn:: Not sure why I did not think of
    157 consulting [[info:grub2#GRUB only offers a rescue shell][the fine manual]].].  Luckily my patience for QWERTY drained
    158 out before I could damage things further; disabled Secure Boot on a
    159 whim and lo!  It Booteþ Again!
    160 *** But doþ it fwupdate þough?
    161 #+begin_example
    162 $ fwupdmgr update
    163 WARNING: UEFI capsule updates not available or enabled in firmware setup
    164 See https://github.com/fwupd/fwupd/wiki/PluginFlag:capsules-unsupported for more information.
    165 #+end_example
    166 😾
    167 
    168 {{{ad(But wait\, there's more!)}}}
    169 
    170 #+begin_example
    171 ╔══════════════════════════════════════════════════════════════════════════════╗
    172 ║ Upgrade UEFI dbx from 20230501 to 20241101?                                  ║
    173 ╠══════════════════════════════════════════════════════════════════════════════╣
    174 ║ This updates the list of forbidden signatures (the "dbx") to the latest      ║
    175 ║ release from Microsoft.                                                      ║
    176 ║                                                                              ║
    177 ║ An insecure version of Howyar's SysReturn software was added, due to a       ║
    178 ║ security vulnerability that allowed an attacker to bypass UEFI Secure Boot.  ║
    179 ║                                                                              ║
    180 ╚══════════════════════════════════════════════════════════════════════════════╝
    181 Perform operation? [Y|n]: n
    182 Devices with no available firmware updates:
    183  • SA400S37480G
    184  • SSD 980 500GB
    185 #+end_example
    186 
    187 Getting mixed signals here.
    188 *** Can I have Secure Boot back though?
    189 Off the top of my head:
    190 - that dbx update?
    191 - ~sudo blarney-grub2 --pretty -pls --with-sugar=top --with-sugar=top~?
    192 - dracut?
    193 
    194 dbx update: nope.
    195 
    196 ~efibootmgr~ only shows =opensuse=, not =opensuse-secure=.
    197 - After ~udpate-bootloader --install~, =opensuse-secure= shows up; no
    198   change though, enabling Secure Boot still lands me in =grub rescue=.
    199 - Change bootorder with =-o 0,1=?
    200 
    201   #+begin_example
    202   $ sudo udpate-bootloader --install
    203   $ sudo efibootmgr
    204   BootCurrent: 0001
    205   Timeout: 1 seconds
    206   BootOrder: 0001,0000
    207   Boot0000* opensuse-secureboot   HD(1,GPT,2ffd6bee-1b1e-4088-8fdf-0c9321c861a3,0x800,0x100000)/File(\EFI\OPENSUSE\SHIM.EFI)
    208   Boot0001* opensuse      HD(1,GPT,2ffd6bee-1b1e-4088-8fdf-0c9321c861a3,0x800,0x100000)/File(\EFI\OPENSUSE\GRUBX64.EFI)0000424f
    209   $ sudo efibootmgr -o 0,1
    210   BootCurrent: 0001
    211   Timeout: 1 seconds
    212   BootOrder: 0000,0001
    213   Boot0000* opensuse-secureboot   HD(1,GPT,2ffd6bee-1b1e-4088-8fdf-0c9321c861a3,0x800,0x100000)/File(\EFI\OPENSUSE\SHIM.EFI)
    214   Boot0001* opensuse      HD(1,GPT,2ffd6bee-1b1e-4088-8fdf-0c9321c861a3,0x800,0x100000)/File(\EFI\OPENSUSE\GRUBX64.EFI)0000424f
    215   #+end_example
    216 
    217   Does not seem to persist after reboot 🤷
    218 *** The Twist
    219 #+begin_example
    220 $ sudo journalctl --grep 'secure boot .*abled'
    221 Nov 28 20:37:13 localhost kernel: secureboot: Secure boot disabled
    222 [… an so on, for every boot until today …]
    223 #+end_example
    224 
    225 … I'm an idiot; I never had Secure Boot enabled on that machine,
    226 apparently.  I guess the BIOS update just turned it on silently.
    227 *** Can I have Secure Boot at all though?
    228 Personal takeaways from [[https://github.com/Foxboron/sbctl/issues/181][Foxboron/sbctl#181]]: maybe, but it involves so
    229 much futzing around and has such a high chance of [[https://github.com/Foxboron/sbctl/issues/181#issuecomment-1354247722][false positives]],
    230 that I will tentatively conclude "not worth it".
    231 * SSD
    232 LDLC's off-brand SSD died, fortunately within the warranty period.
    233 Replaced it, and… I guess I should shoehorn a joke about "a descent
    234 into hell" or "the beginning of a nightmare", but that just twists
    235 [[./killing-time.org][the knife]] ☹️