lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 1 Sep 2014 18:21:48 +0000
From:	Conrad Kostecki <ck@...rad-kostecki.de>
To:	"Linux (Kernel) Mailingliste (linux-kernel@...r.kernel.org)" 
	<linux-kernel@...r.kernel.org>
Subject: AW: Early microcode not being loaded

> Hi!
> I'am trying to use the feature of loading early an intel microcode.
> According to the documentation (early-microcode.txt) that should be possible.
>
> I am currently using my own initrd, so I've created a second one, as the docs specified and merged it with my own.
>
> Galactica linux # file /tmp/ucode.cpio
> /tmp/ucode.cpio: ASCII cpio archive (SVR4 with no CRC)
>
> Galactica linux # file /tmp/my_own_initrd.cpio
> /tmp/my_own_initrd.cpio: ASCII cpio archive (SVR4 with no CRC)
>
> Galactica linux #  cpio -itv < /tmp/ucode.cpio
> drwxr-xr-x   3 root     root            0 Jul 18 17:01 .
> drwxr-xr-x   3 root     root            0 Jul 18 17:01 kernel
> drwxr-xr-x   3 root     root            0 Jul 18 17:01 kernel/x86
> drwxr-xr-x   2 root     root            0 Jul 18 17:01 kernel/x86/microcode
> -rw-r--r--   1 root     root      1857432 Jul 18 17:01 kernel/x86/microcode/GenuineIntel.bin
>
> Galactica tmp # cpio -itv < /tmp/my_own_initrd.cpio
> drwxr-xr-x  11 root     root            0 Jul 18 22:33 .
> drwxr-xr-x   3 root     root            0 Jul 18 22:33 mnt
> drwxr-xr-x   2 root     root            0 Jul 18 22:33 mnt/root
> drwxr-xr-x   2 root     root            0 Jul 18 22:33 lib64
> drwxr-xr-x   2 root     root            0 Jul 18 22:33 etc
> drwxr-xr-x   2 root     root            0 Jul 18 22:33 sys
> drwxr-xr-x   2 root     root            0 Jul 18 22:33 bin
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 bin/ash -> /bin/busybox
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 bin/cat -> /bin/busybox
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 bin/loadkmap -> /bin/busybox
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 bin/cut -> /bin/busybox
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 bin/setfont -> /bin/busybox
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 bin/kbd_mode -> /bin/busybox
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 bin/echo -> /bin/busybox
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 bin/umount -> /bin/busybox
> -rwxr-xr-x   1 root     root      2638208 Jul 18 22:33 bin/busybox
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 bin/mount -> /bin/busybox
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 bin/mdev -> /bin/busybox
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 bin/sleep -> /bin/busybox
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 bin/printf -> /bin/busybox
> drwxr-xr-x   3 root     root            0 Jul 18 22:33 usr
> drwxr-xr-x   2 root     root            0 Jul 18 22:33 usr/bin
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 usr/bin/setfont -> /bin/busybox
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 usr/bin/kbd_mode -> /bin/busybox
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 usr/bin/printf -> /bin/busybox
> drwxr-xr-x   3 root     root            0 Jul 18 22:33 dev
> crw-r--r--   1 root     root       5,   1 Jul 18 22:33 dev/console
> crw-r--r--   1 root     root       4,  64 Jul 18 22:33 dev/ttyS0
> crw-r--r--   1 root     root       1,   3 Jul 18 22:33 dev/null
> crw-r--r--   1 root     root       1,   5 Jul 18 22:33 dev/zero
> drwxr-xr-x   2 root     root            0 Jul 18 22:33 proc
> -rwxr-xr-x   1 root     root         5707 Jul 18 22:33 init
> lrwxrwxrwx   1 root     root            5 Jul 18 22:33 lib -> lib64
> drwxr-xr-x   2 root     root            0 Jul 18 22:33 sbin
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 sbin/loadkmap -> /bin/busybox
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 sbin/switch_root -> /bin/busybox
> lrwxrwxrwx   1 root     root           12 Jul 18 22:33 sbin/mdev -> /bin/busybox
> 5174 blocks
>
> Then I merged them, as the docs say:
> cat /tmp/ucode.cpio /tmp/my_own_initrd.cpio > /boot/initramfs-3.15.5.img
>
> Booting works fine with this combined initrd, but there is no new microcode applied.
>
> [    1.058641] microcode: CPU0 sig=0x20661, pf=0x2, revision=0x104
> [    1.063259] microcode: CPU1 sig=0x20661, pf=0x2, revision=0x104
> [    1.068011] microcode: Microcode Update Driver: v2.00 <tigran@...azian.fsnet.co.uk>, Peter Oruba
>
> It's only applied much later, when my microcode_ctl runs as a service.
>
> [   15.764517] microcode: CPU0 sig=0x20661, pf=0x2, revision=0x104
> [   15.764979] microcode: CPU0 updated to revision 0x105, date = 2011-07-18
> [   15.765970] microcode: CPU1 sig=0x20661, pf=0x2, revision=0x104
> [   15.766430] microcode: CPU1 updated to revision 0x105, date = 2011-07-18
>
> Where is the problem? Why is the microcode not being loaded early?
>
> Cheers
> Conrad

Does anybody has some idea, why this is not working for me?

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ