live-bootstrap/sysa/linux-4.9.10/patches/bad-asm.patch

19 lines
569 B
Diff
Raw Normal View History

Update the linux kernel for sysb/c to 4.9.10. - We do not use latest 4.9.x because it relies on a new version of binutils, while older versions do not. (Note: we should be able to go a bit newer but I didn't bother testing >50 versions to figure this out). - We do not use newer kernel versions because they require one or more of (new perl, new binutils, new make, new gcc, new bison, new tar). - sysb and sysc are updated to use the SATA (libata) subsystem (aka sda) instead of IDE-emulating SATA subsystem (aka hda) which is now available to us. - While theoretically according to docs 4.9 should work OOTB with our version of binutils this is not the case, so we have to do a bit of (interesting) patching. But this does not break anything. - Thankfully serial support in 4.9 is not screwed over like it is in 2.6 so we can revert to that. - 4.9 has the linux-libre project at our disposal, instead of gNewSense. So we use this. Unfortunatley that takes forever because we have to use sed because our version of gawk is too old/buggy. :( I plan to introduce very shortly 1. parallelism 2. 'sysc snapshot' which will start from sysc to avoid this. I do not want to use linux-libre tarballs because they make modificiations directly from this script (aka not easily verifiable, use the source!) and this script allows for much greater flexibility. - We compile the initramfs ahead-of-build using the in-tree cpio generator instead of also building cpio to use less packages. We do NOT build the initramfs into the kernel like 2.6 (unsupported). - Oh and fix a kexec-tools checksum.
2021-08-04 03:56:07 +01:00
SPDX-FileCopyrightText: 2021 fosslinux <fosslinux@aussies.space>
SPDX-License-Identifier: GPL-2.0-only
Remove the 68() which I'm not really sure what it does but still works and
breaks our version of binutils.
--- arch/x86/boot/bioscall.S 2021-07-31 17:50:09.519480274 +1000
+++ arch/x86/boot/bioscall.S 2021-07-31 18:21:32.086972277 +1000
@@ -65,7 +65,7 @@
movw %ax, %es
/* Copy output state from stack frame */
- movw 68(%esp), %di /* Original %cx == 3rd argument */
+ movw %sp, %di /* Original %cx == 3rd argument */
andw %di, %di
jz 4f
movw %sp, %si