# git rev-parse -q --verify f5ae2ea6347a308cfe91f53b53682ce635497d0d^{commit} f5ae2ea6347a308cfe91f53b53682ce635497d0d already have revision, skipping fetch # git checkout -q -f -B kisskb f5ae2ea6347a308cfe91f53b53682ce635497d0d # git clean -qxdf # < git log -1 # commit f5ae2ea6347a308cfe91f53b53682ce635497d0d # Author: Jari Ruusu # Date: Sun Jan 12 15:00:53 2020 +0200 # # Fix built-in early-load Intel microcode alignment # # Intel Software Developer's Manual, volume 3, chapter 9.11.6 says: # # "Note that the microcode update must be aligned on a 16-byte boundary # and the size of the microcode update must be 1-KByte granular" # # When early-load Intel microcode is loaded from initramfs, userspace tool # 'iucode_tool' has already 16-byte aligned those microcode bits in that # initramfs image. Image that was created something like this: # # iucode_tool --write-earlyfw=FOO.cpio microcode-files... # # However, when early-load Intel microcode is loaded from built-in # firmware BLOB using CONFIG_EXTRA_FIRMWARE= kernel config option, that # 16-byte alignment is not guaranteed. # # Fix this by forcing all built-in firmware BLOBs to 16-byte alignment. # # [ If we end up having other firmware with much bigger alignment # requirements, we might need to introduce some method for the firmware # to specify it, this is the minimal "just increase the alignment a bit # to account for this one special case" patch - Linus ] # # Signed-off-by: Jari Ruusu # Cc: Borislav Petkov # Cc: Fenghua Yu # Cc: Luis Chamberlain # Cc: stable@kernel.org # Signed-off-by: Linus Torvalds # < /opt/cross/kisskb/gcc-4.6.3-nolibc/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-gcc --version # < /opt/cross/kisskb/gcc-4.6.3-nolibc/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-ld --version # < git log --format=%s --max-count=1 f5ae2ea6347a308cfe91f53b53682ce635497d0d # < make -s -j 24 ARCH=arm O=/kisskb/build/linus_neponset_defconfig_arm CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi- neponset_defconfig # make -s -j 24 ARCH=arm O=/kisskb/build/linus_neponset_defconfig_arm CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi- /kisskb/src/kernel/printk/printk.c: In function 'devkmsg_sysctl_set_loglvl': /kisskb/src/kernel/printk/printk.c:204:16: warning: 'old' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/fs/proc/inode.c: In function 'proc_reg_open': /kisskb/src/include/linux/list.h:65:12: warning: 'pdeo' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/fs/proc/inode.c:338:21: note: 'pdeo' was declared here /kisskb/src/drivers/usb/core/devio.c: In function 'async_completed': /kisskb/src/drivers/usb/core/devio.c:625:23: warning: 'errno' may be used uninitialized in this function [-Wuninitialized] WARNING: vmlinux.o(.text.unlikely+0x79c): Section mismatch in reference from the function free_memmap() to the function .meminit.text:memblock_free() The function free_memmap() references the function __meminit memblock_free(). This is often because free_memmap lacks a __meminit annotation or the annotation of memblock_free is wrong. Completed OK # rm -rf /kisskb/build/linus_neponset_defconfig_arm # Build took: 0:00:41.047566