Linux 6.16: elavult CPU mikrokód jelentése

Elavult CPU mikrokódot futtatni ritkán jó ötlet, ezért a Linux 6.16 ezt mint „sebezhetőség” jelenteni is fogja.

Tux ikon
Tux ikon

Elavult CPU mikrokódot futtatni ritkán jó ötlet, ezért a Linux 6.16 ezt mint „sebezhetőség” jelenteni is fogja.

Persze a sebezhetőségként való jelentés nem teljesen korrekt, hiszen egy mikrokód verzió lehet, hogy „csak” egy belső hibát (instabilitás vagy funkcióbeli dolog) javít. Ettől függetlenül ez az új funkció felhívja az üzemeltető figyelmét, hogy dolga van.

A változással a régi mikrokód jelenléte a /sys/devices/system/cpu/vulnerabilities/old_microcode fájlban lesz jelentve (ugyanebben a könyvtárban van a többi CPU sebezhetőség is), így valószínűleg a különböző eszközök – pl. lscpu – látni és jelenteni fogják.

Egyelőre csak Intel processzorokkal működik ez a funkció, de nem lepődnék meg, ha hamarosan az AMD is behozná a maga megoldását.

Mi az a processzor mikrokód és miért van rá szükség?

A mikrokód egy program, ami a processzorban fut, lényegében a processzor operációs rendszere, ami gépiről „belső” gépire fordítja az utasításokat. A számunkra atominak tűnő gépi utasításokat (pl. összeadás aka ADD) a mikrokód tovább bontja úgynevezett mikro-utasítás(ok)ra vagy más néven micro-ops-okra. Ezek azok a hardverspecifikus utasítások, amik ténylegesen vezérlik a processzor áramköreit.

Ez a köztes szerep lehetőséget ad arra, hogy bizonyos hardveres hibákat a gyártó szoftveresen javítson. A processzorokban rengeteg ismert hiba van, a gyártók minden processzorcsaládhoz kiadnak egy hibalistát. Inkább ne nézd meg, nem éri meg, de a lényeg, hogy ezeket javítgatják a gyártók.

Hogyan frissíthetem a processzoron futó mikrokódot?

Az esetek nagy többségében nincs vele dolgod. A modern Linux disztribúciók (pl. Ubuntu) automatikusan megteszik helyetted, a rendszerrel települnek a megfelelő csomagok. Magad is ellenőrizheted:

~$ apt-cache policy intel-microcode
intel-microcode:
  Telepítve: 3.20250211.0ubuntu0.22.04.1
  Jelölt:    3.20250211.0ubuntu0.22.04.1

~$ apt-cache policy amd64-microcode
amd64-microcode:
  Telepítve: 3.20191218.1ubuntu2.3
  Jelölt:    3.20191218.1ubuntu2.3

Forrás: https://www.phoronix.com/news/Linux-6.16-x86-Core