From 98ea0a4c2e1fb3c27fecdfbee1c148fb7ddc2af4 Mon Sep 17 00:00:00 2001 From: fosslinux Date: Tue, 12 Oct 2021 10:43:58 +1100 Subject: [PATCH] Don't use deblob-check Generally, this is bad, because reduces featureset of kernel. However, we don't use any blobbed features anyway. 1. This allows much lower RAM usage. 2. Speeds up deblobbing from hours -> seconds. This nukes blobbed files instead of replacing blobs. --- sysa.py | 3 +- sysa/linux-4.9.10/files/config | 63 +------------------- sysa/linux-4.9.10/linux-4.9.10.sh | 9 +-- sysa/linux-4.9.10/patches/use-less-ram.patch | 22 ------- 4 files changed, 7 insertions(+), 90 deletions(-) delete mode 100644 sysa/linux-4.9.10/patches/use-less-ram.patch diff --git a/sysa.py b/sysa.py index 97ff60d..65c2209 100755 --- a/sysa.py +++ b/sysa.py @@ -280,5 +280,4 @@ class SysA(SysGeneral): # linux kernel 2.6.16.62 self.get_file(["https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.9.10.tar.gz", - "https://linux-libre.fsfla.org/pub/linux-libre/releases/old/gen6/4.9.10-gnu/deblob-4.9", - "https://linux-libre.fsfla.org/pub/linux-libre/releases/old/gen6/4.9.10-gnu/deblob-check"]) + "https://linux-libre.fsfla.org/pub/linux-libre/releases/old/gen6/4.9.10-gnu/deblob-4.9"]) diff --git a/sysa/linux-4.9.10/files/config b/sysa/linux-4.9.10/files/config index 408a4e7..7405801 100644 --- a/sysa/linux-4.9.10/files/config +++ b/sysa/linux-4.9.10/files/config @@ -178,8 +178,6 @@ CONFIG_SCHED_AUTOGROUP=y CONFIG_RELAY=y CONFIG_BLK_DEV_INITRD=y CONFIG_INITRAMFS_SOURCE="" -CONFIG_INITRAMFS_ROOT_UID=0 -CONFIG_INITRAMFS_ROOT_GID=0 CONFIG_RD_GZIP=y CONFIG_RD_BZIP2=y CONFIG_RD_LZMA=y @@ -1145,7 +1143,6 @@ CONFIG_BLK_DEV_NVME_SCSI=y # CONFIG_TI_DAC7512 is not set # CONFIG_PCH_PHUB is not set # CONFIG_USB_SWITCH_FSA9480 is not set -# CONFIG_LATTICE_ECP3_CONFIG is not set CONFIG_SRAM=y # CONFIG_C2PORT is not set @@ -1163,7 +1160,6 @@ CONFIG_SRAM=y # # Texas Instruments shared transport line discipline # -# CONFIG_TI_ST is not set # CONFIG_SENSORS_LIS3_I2C is not set # @@ -1400,13 +1396,10 @@ CONFIG_TUN_VNET_CROSS_LE=y CONFIG_ETHERNET=y CONFIG_NET_VENDOR_3COM=y # CONFIG_VORTEX is not set -# CONFIG_TYPHOON is not set CONFIG_NET_VENDOR_ADAPTEC=y -# CONFIG_ADAPTEC_STARFIRE is not set CONFIG_NET_VENDOR_AGERE=y # CONFIG_ET131X is not set CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_ACENIC is not set # CONFIG_ALTERA_TSE is not set CONFIG_NET_VENDOR_AMAZON=y # CONFIG_ENA_ETHERNET is not set @@ -1427,18 +1420,12 @@ CONFIG_NET_CADENCE=y CONFIG_NET_VENDOR_BROADCOM=y # CONFIG_B44 is not set # CONFIG_BCMGENET is not set -# CONFIG_BNX2 is not set # CONFIG_CNIC is not set -# CONFIG_TIGON3 is not set -# CONFIG_BNX2X is not set # CONFIG_BNXT is not set CONFIG_NET_VENDOR_BROCADE=y -# CONFIG_BNA is not set CONFIG_NET_VENDOR_CAVIUM=y CONFIG_NET_VENDOR_CHELSIO=y # CONFIG_CHELSIO_T1 is not set -# CONFIG_CHELSIO_T3 is not set -# CONFIG_CHELSIO_T4 is not set # CONFIG_CHELSIO_T4VF is not set CONFIG_NET_VENDOR_CISCO=y # CONFIG_ENIC is not set @@ -1460,11 +1447,9 @@ CONFIG_NET_VENDOR_EMULEX=y CONFIG_NET_VENDOR_EZCHIP=y CONFIG_NET_VENDOR_EXAR=y # CONFIG_S2IO is not set -# CONFIG_VXGE is not set CONFIG_NET_VENDOR_HP=y # CONFIG_HP100 is not set CONFIG_NET_VENDOR_INTEL=y -# CONFIG_E100 is not set CONFIG_E1000=y CONFIG_E1000E=y CONFIG_E1000E_HWTS=y @@ -1496,7 +1481,6 @@ CONFIG_NET_VENDOR_MICROCHIP=y # CONFIG_ENC28J60 is not set # CONFIG_ENCX24J600 is not set CONFIG_NET_VENDOR_MYRI=y -# CONFIG_MYRI10GE is not set # CONFIG_FEALNX is not set CONFIG_NET_VENDOR_NATSEMI=y # CONFIG_NATSEMI is not set @@ -1513,16 +1497,12 @@ CONFIG_NET_VENDOR_OKI=y # CONFIG_NET_PACKET_ENGINE is not set CONFIG_NET_VENDOR_QLOGIC=y # CONFIG_QLA3XXX is not set -# CONFIG_QLCNIC is not set # CONFIG_QLGE is not set -# CONFIG_NETXEN_NIC is not set -# CONFIG_QED is not set CONFIG_NET_VENDOR_QUALCOMM=y # CONFIG_QCOM_EMAC is not set CONFIG_NET_VENDOR_REALTEK=y # CONFIG_8139CP is not set # CONFIG_8139TOO is not set -# CONFIG_R8169 is not set CONFIG_NET_VENDOR_RENESAS=y CONFIG_NET_VENDOR_RDC=y # CONFIG_R6040 is not set @@ -1545,11 +1525,9 @@ CONFIG_NET_VENDOR_STMICRO=y CONFIG_NET_VENDOR_SUN=y # CONFIG_HAPPYMEAL is not set # CONFIG_SUNGEM is not set -# CONFIG_CASSINI is not set # CONFIG_NIU is not set CONFIG_NET_VENDOR_SYNOPSYS=y # CONFIG_NET_VENDOR_TEHUTI is not set -# CONFIG_TEHUTI is not set CONFIG_NET_VENDOR_TI=y # CONFIG_TI_CPSW_ALE is not set # CONFIG_TLAN is not set @@ -1615,7 +1593,6 @@ CONFIG_WLAN_VENDOR_CISCO=y CONFIG_WLAN_VENDOR_INTEL=y CONFIG_WLAN_VENDOR_INTERSIL=y # CONFIG_HOSTAP is not set -# CONFIG_PRISM54 is not set CONFIG_WLAN_VENDOR_MARVELL=y CONFIG_WLAN_VENDOR_MEDIATEK=y CONFIG_WLAN_VENDOR_RALINK=y @@ -1690,7 +1667,6 @@ CONFIG_MOUSE_SERIAL=y # CONFIG_MOUSE_APPLETOUCH is not set # CONFIG_MOUSE_BCM5974 is not set # CONFIG_MOUSE_CYAPA is not set -# CONFIG_MOUSE_ELAN_I2C is not set # CONFIG_MOUSE_VSXXXAA is not set # CONFIG_MOUSE_GPIO is not set # CONFIG_MOUSE_SYNAPTICS_I2C is not set @@ -1731,7 +1707,6 @@ CONFIG_TOUCHSCREEN_PROPERTIES=y # CONFIG_TOUCHSCREEN_ADS7846 is not set # CONFIG_TOUCHSCREEN_AD7877 is not set # CONFIG_TOUCHSCREEN_AD7879 is not set -# CONFIG_TOUCHSCREEN_ATMEL_MXT is not set # CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set # CONFIG_TOUCHSCREEN_BU21013 is not set # CONFIG_TOUCHSCREEN_CY8CTMG110 is not set @@ -1743,18 +1718,15 @@ CONFIG_TOUCHSCREEN_PROPERTIES=y # CONFIG_TOUCHSCREEN_EETI is not set # CONFIG_TOUCHSCREEN_EGALAX_SERIAL is not set # CONFIG_TOUCHSCREEN_FUJITSU is not set -# CONFIG_TOUCHSCREEN_GOODIX is not set # CONFIG_TOUCHSCREEN_ILI210X is not set # CONFIG_TOUCHSCREEN_GUNZE is not set # CONFIG_TOUCHSCREEN_EKTF2127 is not set -# CONFIG_TOUCHSCREEN_ELAN is not set # CONFIG_TOUCHSCREEN_ELO is not set # CONFIG_TOUCHSCREEN_WACOM_W8001 is not set # CONFIG_TOUCHSCREEN_WACOM_I2C is not set # CONFIG_TOUCHSCREEN_MAX11801 is not set # CONFIG_TOUCHSCREEN_MCS5000 is not set # CONFIG_TOUCHSCREEN_MMS114 is not set -# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set # CONFIG_TOUCHSCREEN_MTOUCH is not set # CONFIG_TOUCHSCREEN_INEXIO is not set # CONFIG_TOUCHSCREEN_MK712 is not set @@ -1763,7 +1735,6 @@ CONFIG_TOUCHSCREEN_PROPERTIES=y # CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set # CONFIG_TOUCHSCREEN_TOUCHWIN is not set # CONFIG_TOUCHSCREEN_PIXCIR is not set -# CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM831X is not set # CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set # CONFIG_TOUCHSCREEN_TOUCHIT213 is not set @@ -1772,15 +1743,12 @@ CONFIG_TOUCHSCREEN_PROPERTIES=y # CONFIG_TOUCHSCREEN_TSC2005 is not set # CONFIG_TOUCHSCREEN_TSC2007 is not set # CONFIG_TOUCHSCREEN_PCAP is not set -# CONFIG_TOUCHSCREEN_RM_TS is not set -# CONFIG_TOUCHSCREEN_SILEAD is not set # CONFIG_TOUCHSCREEN_SIS_I2C is not set # CONFIG_TOUCHSCREEN_ST1232 is not set # CONFIG_TOUCHSCREEN_SURFACE3_SPI is not set # CONFIG_TOUCHSCREEN_SX8654 is not set # CONFIG_TOUCHSCREEN_TPS6507X is not set # CONFIG_TOUCHSCREEN_ZFORCE is not set -# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set CONFIG_INPUT_MISC=y # CONFIG_INPUT_AD714X is not set # CONFIG_INPUT_BMA150 is not set @@ -1811,7 +1779,6 @@ CONFIG_INPUT_MISC=y # CONFIG_INPUT_WM831X_ON is not set # CONFIG_INPUT_PCAP is not set # CONFIG_INPUT_ADXL34X is not set -# CONFIG_INPUT_IMS_PCU is not set # CONFIG_INPUT_CMA3000 is not set # CONFIG_INPUT_IDEAPAD_SLIDEBAR is not set # CONFIG_INPUT_DRV260X_HAPTICS is not set @@ -1850,14 +1817,11 @@ CONFIG_UNIX98_PTYS=y # CONFIG_LEGACY_PTYS is not set CONFIG_SERIAL_NONSTANDARD=y # CONFIG_ROCKETPORT is not set -# CONFIG_CYCLADES is not set -# CONFIG_MOXA_INTELLIO is not set # CONFIG_MOXA_SMARTIO is not set # CONFIG_SYNCLINK is not set # CONFIG_SYNCLINKMP is not set # CONFIG_SYNCLINK_GT is not set # CONFIG_NOZOMI is not set -# CONFIG_ISI is not set # CONFIG_N_HDLC is not set # CONFIG_N_GSM is not set # CONFIG_TRACE_SINK is not set @@ -1907,7 +1871,6 @@ CONFIG_SERIAL_SCCNXP_CONSOLE=y # CONFIG_SERIAL_IFX6X60 is not set # CONFIG_SERIAL_PCH_UART is not set # CONFIG_SERIAL_ARC is not set -# CONFIG_SERIAL_RP2 is not set # CONFIG_SERIAL_FSL_LPUART is not set # CONFIG_TTY_PRINTK is not set # CONFIG_IPMI_HANDLER is not set @@ -2206,7 +2169,6 @@ CONFIG_WATCHDOG_SYSFS=y # CONFIG_WDAT_WDT is not set # CONFIG_WM831X_WATCHDOG is not set # CONFIG_XILINX_WATCHDOG is not set -# CONFIG_ZIIRAVE_WATCHDOG is not set # CONFIG_CADENCE_WATCHDOG is not set # CONFIG_DW_WATCHDOG is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2646,9 +2608,7 @@ CONFIG_USB_OTG_BLACKLIST_HUB=y # USB Host Controller Drivers # # CONFIG_USB_C67X00_HCD is not set -CONFIG_USB_XHCI_HCD=y -CONFIG_USB_XHCI_PCI=y -CONFIG_USB_XHCI_PLATFORM=y +# CONFIG_USB_XHCI_HCD is not set CONFIG_USB_EHCI_HCD=y CONFIG_USB_EHCI_ROOT_HUB_TT=y CONFIG_USB_EHCI_TT_NEWSCHED=y @@ -2705,7 +2665,6 @@ CONFIG_USB_SERIAL_AIRCABLE=y CONFIG_USB_SERIAL_ARK3116=y CONFIG_USB_SERIAL_BELKIN=y CONFIG_USB_SERIAL_CH341=y -# CONFIG_USB_SERIAL_WHITEHEAT is not set CONFIG_USB_SERIAL_DIGI_ACCELEPORT=y CONFIG_USB_SERIAL_CP210X=y CONFIG_USB_SERIAL_CYPRESS_M8=y @@ -2714,21 +2673,17 @@ CONFIG_USB_SERIAL_FTDI_SIO=y CONFIG_USB_SERIAL_VISOR=y CONFIG_USB_SERIAL_IPAQ=y CONFIG_USB_SERIAL_IR=y -# CONFIG_USB_SERIAL_EDGEPORT is not set -# CONFIG_USB_SERIAL_EDGEPORT_TI is not set CONFIG_USB_SERIAL_F81232=y CONFIG_USB_SERIAL_GARMIN=y CONFIG_USB_SERIAL_IPW=y CONFIG_USB_SERIAL_IUU=y # CONFIG_USB_SERIAL_KEYSPAN_PDA is not set -# CONFIG_USB_SERIAL_KEYSPAN is not set CONFIG_USB_SERIAL_KLSI=y CONFIG_USB_SERIAL_KOBIL_SCT=y CONFIG_USB_SERIAL_MCT_U232=y CONFIG_USB_SERIAL_METRO=y CONFIG_USB_SERIAL_MOS7720=y CONFIG_USB_SERIAL_MOS7840=y -# CONFIG_USB_SERIAL_MXUPORT is not set CONFIG_USB_SERIAL_NAVMAN=y CONFIG_USB_SERIAL_PL2303=y CONFIG_USB_SERIAL_OTI6858=y @@ -2739,7 +2694,6 @@ CONFIG_USB_SERIAL_SAFE=y CONFIG_USB_SERIAL_SAFE_PADDED=y CONFIG_USB_SERIAL_SIERRAWIRELESS=y CONFIG_USB_SERIAL_SYMBOL=y -# CONFIG_USB_SERIAL_TI is not set CONFIG_USB_SERIAL_CYBERJACK=y # CONFIG_USB_SERIAL_XIRCOM is not set CONFIG_USB_SERIAL_WWAN=y @@ -2755,8 +2709,6 @@ CONFIG_USB_SERIAL_QT2=y # # USB Miscellaneous drivers # -# CONFIG_USB_EMI62 is not set -# CONFIG_USB_EMI26 is not set # CONFIG_USB_ADUTUX is not set # CONFIG_USB_SEVSEG is not set # CONFIG_USB_RIO500 is not set @@ -2773,7 +2725,6 @@ CONFIG_USB_SERIAL_QT2=y # CONFIG_USB_IOWARRIOR is not set # CONFIG_USB_TEST is not set # CONFIG_USB_EHSET_TEST_FIXTURE is not set -# CONFIG_USB_ISIGHTFW is not set # CONFIG_USB_YUREX is not set # CONFIG_USB_EZUSB_FX2 is not set # CONFIG_USB_HSIC_USB3503 is not set @@ -2812,7 +2763,6 @@ CONFIG_SDIO_UART=y # CONFIG_MMC_TIFM_SD is not set # CONFIG_MMC_CB710 is not set # CONFIG_MMC_VIA_SDMMC is not set -# CONFIG_MMC_VUB300 is not set # CONFIG_MMC_USHC is not set # CONFIG_MMC_USDHI6ROL0 is not set # CONFIG_MMC_TOSHIBA_PCI is not set @@ -2831,8 +2781,6 @@ CONFIG_LEDS_CLASS=y # CONFIG_LEDS_GPIO is not set # CONFIG_LEDS_LP3944 is not set # CONFIG_LEDS_LP3952 is not set -# CONFIG_LEDS_LP5521 is not set -# CONFIG_LEDS_LP5523 is not set # CONFIG_LEDS_LP5562 is not set # CONFIG_LEDS_LP8501 is not set # CONFIG_LEDS_LP8860 is not set @@ -3024,11 +2972,7 @@ CONFIG_VIRT_DRIVERS=y # # CONFIG_HYPERV is not set CONFIG_STAGING=y -# CONFIG_SLICOSS is not set -# CONFIG_COMEDI is not set -# CONFIG_RTL8192U is not set # CONFIG_RTLLIB is not set -# CONFIG_R8712U is not set # CONFIG_RTS5208 is not set # CONFIG_FB_SM750 is not set # CONFIG_FB_XGI is not set @@ -3048,7 +2992,6 @@ CONFIG_STAGING_MEDIA=y # CONFIG_GS_FPGABOOT is not set # CONFIG_FB_TFT is not set # CONFIG_MOST is not set -# CONFIG_KS7010 is not set # CONFIG_GREYBUS is not set CONFIG_X86_PLATFORM_DEVICES=y # CONFIG_ACERHDF is not set @@ -3137,7 +3080,6 @@ CONFIG_INTEL_IOMMU_FLOPPY_WA=y # # Remoteproc drivers # -# CONFIG_STE_MODEM_RPROC is not set # # Rpmsg drivers @@ -3818,9 +3760,6 @@ CONFIG_CRYPTO_HW=y # CONFIG_CRYPTO_DEV_GEODE is not set CONFIG_CRYPTO_DEV_CCP=y # CONFIG_CRYPTO_DEV_CCP_DD is not set -# CONFIG_CRYPTO_DEV_QAT_DH895xCC is not set -# CONFIG_CRYPTO_DEV_QAT_C3XXX is not set -# CONFIG_CRYPTO_DEV_QAT_C62X is not set # CONFIG_CRYPTO_DEV_QAT_DH895xCCVF is not set # CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set # CONFIG_CRYPTO_DEV_QAT_C62XVF is not set diff --git a/sysa/linux-4.9.10/linux-4.9.10.sh b/sysa/linux-4.9.10/linux-4.9.10.sh index 47bf14f..ae424c3 100755 --- a/sysa/linux-4.9.10/linux-4.9.10.sh +++ b/sysa/linux-4.9.10/linux-4.9.10.sh @@ -5,7 +5,7 @@ src_unpack() { default || true # Predictable link errors - not a problem - cp ../src/deblob-4.9 ../src/deblob-check ${pkg}/ + cp ../src/deblob-4.9 ${pkg}/ # Clear up storage space rm -rf ../src @@ -32,9 +32,8 @@ src_prepare() { generate_autoconf_h # Deblob the kernel - chmod +x deblob-4.9 deblob-check - # Don't use gawk, use sed - AWK=dosentexist ./deblob-4.9 + chmod +x deblob-4.9 + ./deblob-4.9 --force # Remove shipped files find . -name "*_shipped*" -delete @@ -45,6 +44,8 @@ src_compile() { rm include/generated/autoconf.h generate_autoconf_h + # Allow use of patched initramfs_list.sh (which is required anyway) + export PATH=$PWD/usr:$PATH make ARCH=i386 prepare make ARCH=i386 } diff --git a/sysa/linux-4.9.10/patches/use-less-ram.patch b/sysa/linux-4.9.10/patches/use-less-ram.patch deleted file mode 100644 index a96ffbe..0000000 --- a/sysa/linux-4.9.10/patches/use-less-ram.patch +++ /dev/null @@ -1,22 +0,0 @@ -SPDX-FileCopyrightText: 2021 fosslinux - -SPDX-License-Identifier: GPL-2.0-only - -For some reason (old version of sed/bash?), this falsepos sed thing uses a -lot of RAM within bash and causes an overflow which is caught by bash -but prompts it to crash. As we are not using falsepos detection anyway it -is unused and hence can be set to an empty value. - ---- deblob-check 2021-07-30 09:28:09.324276561 +1000 -+++ deblob-check 2021-07-30 09:28:31.742449255 +1000 -@@ -7232,9 +7232,7 @@ - # $4 is the action for every complete input pattern. - - set_sed_main () { -- falsepos=`${SED-sed} -n 's,^[+]\^*,,p' < "$regex_name" | -- ${SED-sed} -n -e 's,[$]$,\\\\([\\\\n]\\\\|$\\\\),' \ -- -e '1h; 1!H; ${g;s,[\n],\\\\|,g;s,^\(..*\)$,\\\\(\1\\\\),;p;}'` -+ falsepos= - blobs=`${SED-sed} -n 's,^[-],,p' < "$regex_name" | - ${SED-sed} -n -e 's,[$]$,\\\\([\\\\n]\\\\|$\\\\),' \ - -e '1h; 1!H; ${g;s,[\n],\\\\|,g;s,^\(..*\)$,\\\\(\1\\\\),;p;}'`