[arch-releng] [PATCH 1/1] concatenate initramfs images for early microcode update
Christian Hesse
list at eworm.de
Wed Oct 29 15:18:09 UTC 2014
Gerardo Exequiel Pozzi <vmlinuz386 at gmail.com> on Wed, 2014/10/29 12:05:
> On 10/29/2014 11:56 AM, Christian Hesse wrote:
> > Gerardo Exequiel Pozzi <vmlinuz386 at gmail.com> on Wed, 2014/10/29 11:35:
> >> On 10/29/2014 11:02 AM, list at eworm.de wrote:
> >>> From: Christian Hesse <mail at eworm.de>
> >>>
> >>> https://www.kernel.org/doc/Documentation/x86/early-microcode.txt
> >>> ---
> >>> configs/releng/build.sh | 2 +-
> >>> 1 file changed, 1 insertion(+), 1 deletion(-)
> >>>
> >>> diff --git a/configs/releng/build.sh b/configs/releng/build.sh
> >>> index 07ff911..8b6beee 100755
> >>> --- a/configs/releng/build.sh
> >>> +++ b/configs/releng/build.sh
> >>> @@ -90,7 +90,7 @@ make_customize_airootfs() {
> >>> # Prepare kernel/initramfs ${install_dir}/boot/
> >>> make_boot() {
> >>> mkdir -p ${work_dir}/iso/${install_dir}/boot/${arch}
> >>> - cp ${work_dir}/${arch}/airootfs/boot/archiso.img
> >>> ${work_dir}/iso/${install_dir}/boot/${arch}/archiso.img
> >>> + cat ${work_dir}/${arch}/airootfs/boot/intel-ucode.img
> >>> ${work_dir}/${arch}/airootfs/boot/archiso.img >
> >>> ${work_dir}/iso/${install_dir}/boot/${arch}/archiso.img
> >>
> >> This does not look good. archiso.img is compressed, while
> >> intel-ucode.img is uncompressed.
> >
> > Both of these are cpio archives. So what's wrong?
> >
> > # file initramfs-linux.img intel-ucode.img
> > initramfs-linux.img: ASCII cpio archive (SVR4 with no CRC)
> > intel-ucode.img: ASCII cpio archive (SVR4 with no CRC)
>
> Looks like you are you working with uncompressed initcpio images (ie you
> made a change to the default mkinitcpio.conf provided by archiso.)
Oops, my fault. In fact I used the files from my working system, which
already contained a concatenated image.
# ls -l initramfs-linux.img intel-ucode.img intel-ucode-initramfs-linux.img
-rw-r--r-- 1 root root 5839896 Oct 29 16:12 initramfs-linux.img
-rw-r--r-- 1 root root 648704 Oct 12 14:05 intel-ucode.img
-rw-r--r-- 1 root root 6488600 Oct 27 11:00 intel-ucode-initramfs-linux.img
# file initramfs-linux.img intel-ucode.img intel-ucode-initramfs-linux.img
initramfs-linux.img: XZ compressed data
intel-ucode.img: ASCII cpio archive (SVR4 with no CRC)
intel-ucode-initramfs-linux.img: ASCII cpio archive (SVR4 with no CRC)
Booting intel-ucode-initramfs-linux.img works perfectly fine, including
microcode update.
> If prefer this way:
>
> --- archiso_intel_ucode ---
> #!/bin/bash
>
> build() {
> cd /tmp
> bsdcpio -i -d < /boot/intel-ucode.bin
> add_file /tmp/kernel/x86/microcode/GenuineIntel.bin
> /kernel/x86/microcode/GenuineIntel.bin
> }
>
> help() {
> cat <<HELPEOF
> This hook adds intel microcode updates to the early boot stage.
> HELPEOF
> }
>
> # vim: set ft=sh ts=4 sw=4 et:
> ----------------------------
As said before... This does not work. Please prove me wrong!
--
main(a){char*c=/* Schoene Gruesse */"B?IJj;MEH"
"CX:;",b;for(a/* Chris get my mail address: */=0;b=c[a++];)
putchar(b-1/(/* gcc -o sig sig.c && ./sig */b/42*2-3)*42);}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 473 bytes
Desc: OpenPGP digital signature
URL: <https://lists.archlinux.org/pipermail/arch-releng/attachments/20141029/6d471506/attachment.bin>
More information about the arch-releng
mailing list