Експертът по x86 Кристиан Лудлоф детайлизира нови префикси за инструкцията WBINVD, използвана за записване в кеша и негова инвалидация, в списъка на Linux kernel. Разкритието идва от „корпоративна структура, различна от Intel или AMD“ и детайлизира подсказки за прескачане за различни нива на кеша. Идентичността на структурата остава неизвестна, въпреки че спекулациите я свързват с RosaicLabs.
Новите подсказки за прескачане позволяват на инструкцията WBINVD да заобикаля специфични нива на кеша по време на процесите на записване и инвалидация. По-конкретно, подсказките позволяват прескачане на кешовете L0i/L1i, L0d/L1d, инвалидациите и LLC (Last Level Cache). Освен това са дефинирани шест специфични за имплементацията подсказки, предлагащи до 64 потенциални поведения в зависимост от процесора.
Разкритите префикси са както следва: 0x67 за прескачане на кеша L0i/L1i, 0x66 за прескачане на кеша L0d/L1d, 0xF3 за прескачане на инвалидациите и 0xF2 за прескачане на LLC кеша. Те могат да бъдат комбинирани с шест специфични за имплементацията подсказки – 0x26, 0x2E, 0x36, 0x3E, 0x64 и 0x65 – потенциално създавайки инструкции до 12 байта дълги. Целта на тези подсказки може да бъде насочване към различни видове съхранения (код, данни, поточно предаване) или да позволи програмируемо поведение на различни нива на кеша.
Това не е първото разкритие от тази неидентифицирана структура. Предишни съобщения в списъка на Linux kernel, започнали през октомври миналата година и детайлизирани през юли, засягаха разпределенията на x86 opcode/CPUID/MSR и имплементациите на AMX. Времето на тези разкрития съвпада с доклади за достъпа на RosaicLabs до дизайни на процесори Intel Atom, което води до спекулации за тяхното потенциално участие.
Прочетете оригиналното отразяване
💬 Коментари
📜 Правила за коментари