The Linux kernel
25e04032c6
There are references to 330 unused Kconfig symbols in the tree. These symbols are unused because, while they are valid, they do not end up in the final .config files that the kernel's build system generates. This happens because their dependencies aren't set. Since these symbols do not end up in the final .config files they have no effect on the build. Remove them. These symbols are: CONFIG_3C515 CONFIG_4KSTACKS CONFIG_AB3100_CORE CONFIG_AB3100_OTP CONFIG_AD5686 CONFIG_ADM8211 CONFIG_AIC79XX_BUILD_FIRMWARE CONFIG_AIC7XXX_BUILD_FIRMWARE CONFIG_AIRO CONFIG_AIRO_CS CONFIG_AMIGAONE CONFIG_AMX3_PM CONFIG_APM_POWER CONFIG_ARCH_HI3xxx CONFIG_ARM_ERRATA_326103 CONFIG_ARM_ERRATA_411920 CONFIG_ARM_ERRATA_458693 CONFIG_ARM_ERRATA_460075 CONFIG_ARM_ERRATA_742230 CONFIG_ARM_ERRATA_742231 CONFIG_ARM_ERRATA_743622 CONFIG_ARM_ERRATA_751472 CONFIG_AT76C50X_USB CONFIG_ATM_AMBASSADOR_DEBUG CONFIG_ATMEL CONFIG_ATM_FORE200E_DEBUG CONFIG_ATM_FORE200E_TX_RETRY CONFIG_ATM_FORE200E_USE_TASKLET CONFIG_ATM_HORIZON_DEBUG CONFIG_ATM_IA_DEBUG CONFIG_ATM_IDT77252_DEBUG CONFIG_ATM_IDT77252_RCV_ALL CONFIG_ATM_ZATM_DEBUG CONFIG_BACKLIGHT_TPS65217 CONFIG_BACKLIGHT_WM831X CONFIG_BCM63XX_PHY CONFIG_BCM7038_WDT CONFIG_BCM_FLEXRM_MBOX CONFIG_BCM_PDC_MBOX CONFIG_BLK_DEV_AMD74XX CONFIG_BLK_DEV_CMD640 CONFIG_BLK_DEV_CS5520 CONFIG_BLK_DEV_CS5530 CONFIG_BLK_DEV_CS5535 CONFIG_BLK_DEV_IT8172 CONFIG_BLK_DEV_PLATFORM CONFIG_BLK_DEV_RZ1000 CONFIG_BLK_DEV_TRIFLEX CONFIG_CACHE_FEROCEON_L2_WRITETHROUGH CONFIG_CAN_LEDS CONFIG_CAN_MPC5XXX CONFIG_CAN_TSCAN1 CONFIG_CELL_CPU CONFIG_CHARGER_PCF50633 CONFIG_CHARGER_TPS65217 CONFIG_CHECK_STACK CONFIG_CIFS_NFSD_EXPORT CONFIG_CMDLINE_FROM_BOOTLOADER CONFIG_CONSISTENT_SIZE_BOOL CONFIG_CPU_DCACHE_DISABLE CONFIG_CRYPTO_DEV_CCP_CRYPTO CONFIG_CRYPTO_DEV_NX_COMPRESS CONFIG_CRYPTO_DEV_NX_COMPRESS_POWERNV CONFIG_CRYPTO_DEV_NX_COMPRESS_PSERIES CONFIG_CRYPTO_DEV_NX_ENCRYPT CONFIG_CRYPTO_DEV_PICOXCELL CONFIG_CS89x0 CONFIG_DEBUG_SLAB CONFIG_DEFXX CONFIG_DISCONTIGMEM_MANUAL CONFIG_DMA_CACHE_RWFO CONFIG_DPM_WATCHDOG CONFIG_DRM_EXYNOS_G2D CONFIG_DRM_I810 CONFIG_DRM_I915_DEBUG_VBLANK_EVADE CONFIG_DVB_B2C2_FLEXCOP_DEBUG CONFIG_DVB_RTL2832_SDR CONFIG_EDAC_AMD8111 CONFIG_EDAC_AMD8131 CONFIG_EDAC_MPC85XX CONFIG_EDAC_MV64X60 CONFIG_EFI_PCDP CONFIG_EHEA CONFIG_ENC28J60 CONFIG_EXOFS_DEBUG CONFIG_EZNPS_GIC CONFIG_FB_ATY128_BACKLIGHT CONFIG_FB_ATY_BACKLIGHT CONFIG_FB_ATY_CT CONFIG_FB_ATY_GX CONFIG_FB_BROADSHEET CONFIG_FB_CONTROL CONFIG_FB_CT65550 CONFIG_FB_HECUBA CONFIG_FB_MB862XX_I2C CONFIG_FB_MB862XX_LIME CONFIG_FB_MB862XX_PCI_GDC CONFIG_FB_MX3 CONFIG_FB_NVIDIA_BACKLIGHT CONFIG_FB_NVIDIA_DEBUG CONFIG_FB_NVIDIA_I2C CONFIG_FB_PLATINUM CONFIG_FB_PM2_FIFO_DISCONNECT CONFIG_FB_PRE_INIT_FB CONFIG_FB_RADEON_BACKLIGHT CONFIG_FB_RADEON_DEBUG CONFIG_FB_RADEON_I2C CONFIG_FB_RIVA_BACKLIGHT CONFIG_FB_RIVA_DEBUG CONFIG_FB_RIVA_I2C CONFIG_FB_S3C CONFIG_FB_VALKYRIE CONFIG_FB_VIA_DIRECT_PROCFS CONFIG_FHCI_DEBUG CONFIG_FS_ENET CONFIG_FSL_DMA CONFIG_FSL_MC_BUS CONFIG_FW_LOADER_USER_HELPER_FALLBACK CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF_ALL CONFIG_GCC_PLUGIN_STRUCTLEAK_VERBOSE CONFIG_GEF_PPC9A CONFIG_GEF_SBC310 CONFIG_GEF_SBC610 CONFIG_GPIO_104_DIO_48E CONFIG_GPIO_104_IDI_48 CONFIG_GPIO_104_IDIO_16 CONFIG_GPIO_BT8XX CONFIG_GPIO_INTEL_MID CONFIG_GPIO_TS5500 CONFIG_GPIO_UCB1400 CONFIG_GPIO_WM831X CONFIG_HSU_DMA_PCI CONFIG_HW_RANDOM_MXC_RNGA CONFIG_I2C_CPM CONFIG_IBMEBUS CONFIG_IBM_EMAC CONFIG_IDEPCI_PCIBUS_ORDER CONFIG_IMA_APPRAISE_BOOTPARAM CONFIG_IMA_BLACKLIST_KEYRING CONFIG_IMA_LOAD_X509 CONFIG_IMA_TRUSTED_KEYRING CONFIG_INPUT_ARIZONA_HAPTICS CONFIG_INPUT_PCF50633_PMU CONFIG_INPUT_RETU_PWRBUTTON CONFIG_INPUT_WM831X_ON CONFIG_INTEL_SCU_IPC CONFIG_IOMMU_DEBUG CONFIG_IP_DCCP_CCID2_DEBUG CONFIG_IP_DCCP_CCID3 CONFIG_IP_DCCP_CCID3_DEBUG CONFIG_IP_DCCP_DEBUG CONFIG_IRQ_CROSSBAR CONFIG_IRQSTACKS CONFIG_ISDN_DRV_LOOP CONFIG_IWLWIFI_PCIE_RTPM CONFIG_JFFS2_LZO CONFIG_JFFS2_RUBIN CONFIG_JUMP_LABEL_FEATURE_CHECK_DEBUG CONFIG_KEYBOARD_SH_KEYSC CONFIG_KVM_EXIT_TIMING CONFIG_LANCE CONFIG_LEDS_GPIO_REGISTER CONFIG_LEDS_LOCOMO CONFIG_LEDS_LP55XX_COMMON CONFIG_LEDS_NET48XX CONFIG_LEDS_S3C24XX CONFIG_LEDS_WM831X_STATUS CONFIG_LEDS_WM8350 CONFIG_MCU_MPC8349EMITX CONFIG_MEDIA_TUNER_MSI001 CONFIG_MFD_ARIZONA CONFIG_MFD_WM831X CONFIG_MFD_WM8350 CONFIG_MGCOGE CONFIG_MLX5_EN_IPSEC CONFIG_MOUSE_ATIXL CONFIG_MPC5121_ADS CONFIG_MPL115 CONFIG_MSCC_OCELOT_SWITCH CONFIG_MTD_CFI_I4 CONFIG_MTD_CFI_I8 CONFIG_MTD_CK804XROM CONFIG_MTD_ESB2ROM CONFIG_MTD_MAP_BANK_WIDTH_16 CONFIG_MTD_MAP_BANK_WIDTH_32 CONFIG_MTD_MAP_BANK_WIDTH_8 CONFIG_MTD_NAND_DENALI CONFIG_MTD_NAND_FSL_ELBC CONFIG_MTD_NAND_FSMC CONFIG_MTD_NAND_HISI504 CONFIG_MTD_NAND_MTK CONFIG_MTD_NAND_OXNAS CONFIG_MTD_ONENAND_OMAP2 CONFIG_MTD_TS5500 CONFIG_MX3_IPU_IRQS CONFIG_MXC_DEBUG_BOARD CONFIG_NET_DSA_MV88E6060 CONFIG_NET_VENDOR_PASEMI CONFIG_NET_VENDOR_TOSHIBA CONFIG_NFC_MRVL_SPI CONFIG_NFC_ST_NCI CONFIG_NF_CT_NETLINK_HELPER CONFIG_NF_CT_NETLINK_TIMEOUT CONFIG_NI65 CONFIG_NTP_PPS CONFIG_OMAP2_DSS_COLLECT_IRQ_STATS CONFIG_OMAP2_VRFB CONFIG_OMAP_PACKAGE_CBB CONFIG_OMAP_PACKAGE_CUS CONFIG_PATA_ARASAN_CF CONFIG_PC104 CONFIG_PCF50633_ADC CONFIG_PCF50633_GPIO CONFIG_PCI_CNB20LE_QUIRK CONFIG_PCI_DRA7XX CONFIG_PCI_DRA7XX_EP CONFIG_PCI_DRA7XX_HOST CONFIG_PCI_EXYNOS CONFIG_PCMCIA_DEBUG CONFIG_PCMCIA_FMVJ18X CONFIG_PHY_ST_SPEAR1310_MIPHY CONFIG_PHY_ST_SPEAR1340_MIPHY CONFIG_PINCTRL_SPRD CONFIG_PINCTRL_SPRD_SC9860 CONFIG_POWER5_CPU CONFIG_POWER6_CPU CONFIG_PPC_82xx CONFIG_PPC_83xx CONFIG_PPC_86xx CONFIG_PPC_CELL CONFIG_PPC_IBM_CELL_BLADE CONFIG_PPC_MAPLE CONFIG_PPC_MPC5200_LPBFIFO CONFIG_PPC_PASEMI CONFIG_PPC_PMAC CONFIG_PPC_PMAC64 CONFIG_PREEMPT_TRACER CONFIG_QCA7000 CONFIG_RADIO_AZTECH CONFIG_RADIO_CADET CONFIG_RADIO_GEMTEK CONFIG_RADIO_MIROPCM20 CONFIG_RADIO_RTRACK CONFIG_RADIO_RTRACK2 CONFIG_RADIO_SF16FMI CONFIG_RADIO_SF16FMR2 CONFIG_RADIO_TERRATEC CONFIG_RADIO_TRUST CONFIG_RADIO_TYPHOON CONFIG_RADIO_ZOLTRIX CONFIG_RCU_FANOUT CONFIG_RCU_FANOUT_LEAF CONFIG_RCU_FAST_NO_HZ CONFIG_REGULATOR_TPS65217 CONFIG_RTC CONFIG_RTC_DRV_AB3100 CONFIG_RTC_DRV_EP93XX CONFIG_RTC_DRV_MOXART CONFIG_RTC_DRV_PCF50633 CONFIG_RTC_DRV_TWL92330 CONFIG_RTC_DRV_WM831X CONFIG_RTC_DRV_WM8350 CONFIG_SAMSUNG_PM_CHECK CONFIG_SAMSUNG_PM_DEBUG CONFIG_SC520_WDT CONFIG_SCSI_AHA1542 CONFIG_SCSI_IZIP_EPP16 CONFIG_SCSI_IZIP_SLOW_CTR CONFIG_SENSORS_HMC5843 CONFIG_SENSORS_WM831X CONFIG_SENSORS_WM8350 CONFIG_SERIAL_8250_INGENIC CONFIG_SERIAL_CPM CONFIG_SERIAL_GRLIB_GAISLER_APBUART CONFIG_SERIAL_MPS2_UART CONFIG_SERIAL_QE CONFIG_SERIAL_SAMSUNG_DEBUG CONFIG_SH_ETH CONFIG_SKFP CONFIG_SLICOSS CONFIG_SND_SOC_ALL_CODECS CONFIG_SND_SOC_CS4271 CONFIG_SND_SOC_INTEL_BAYTRAIL CONFIG_SND_SOC_INTEL_BYT_MAX98090_MACH CONFIG_SND_SOC_INTEL_BYT_RT5640_MACH CONFIG_SND_SOC_PCM179X CONFIG_SOC_ZTE CONFIG_SPI_MXS CONFIG_SSB_HOST_SOC CONFIG_STA2X11 CONFIG_STACK_GUARD CONFIG_STM_DUMMY CONFIG_STM_SOURCE_CONSOLE CONFIG_SYSFS_DEPRECATED_V2 CONFIG_TCG_TIS_ST33ZP24 CONFIG_TIMB_DMA CONFIG_TOUCHSCREEN_AD7879_I2C CONFIG_TOUCHSCREEN_UCB1400 CONFIG_TOUCHSCREEN_W90X900 CONFIG_TRACE_BRANCH_PROFILING CONFIG_UBSAN_ALIGNMENT CONFIG_UBSAN_SANITIZE_ALL CONFIG_UCC_GETH CONFIG_USB_CDC_PHONET CONFIG_USB_FHCI_HCD CONFIG_USB_ISP1362_HCD CONFIG_USB_OHCI_HCD_SSB CONFIG_USB_ZERO_HNPTEST CONFIG_VIDEO_ADP1653 CONFIG_VIDEO_DM355_CCDC CONFIG_VIDEO_DM6446_CCDC CONFIG_VIDEO_M5MOLS CONFIG_VIDEO_NOON010PC30 CONFIG_VIDEO_OMAP2_VOUT CONFIG_VIDEO_PCI_SKELETON CONFIG_VIDEO_QCOM_CAMSS CONFIG_VIDEO_SH_MOBILE_CEU CONFIG_VIDEO_SR030PC30 CONFIG_VIDEO_VIA_CAMERA CONFIG_VIDEO_VIVID CONFIG_WINDFARM CONFIG_WKUP_M3_IPC CONFIG_WM831X_POWER CONFIG_WM831X_WATCHDOG CONFIG_WM8350_POWER CONFIG_WM8350_WATCHDOG CONFIG_XEN_STUB CONFIG_XILINX_LL_TEMAC CONFIG_XIP_KERNEL CONFIG_XPS_USB_HCD_XILINX Signed-off-by: Paul Bolle <pebolle@tiscali.nl> |
||
---|---|---|
configs | ||
scripts | ||
tests | ||
.gitignore | ||
0001-iio-Use-event-header-from-kernel-tree.patch | ||
0001-Make-get_cert_list-not-complain-about-cert-lists-tha.patch | ||
0002-Add-efi_status_to_str-and-rework-efi_status_to_err.patch | ||
0003-Make-get_cert_list-use-efi_status_to_str-to-print-er.patch | ||
ACPI-irq-Workaround-firmware-issue-on-X-Gene-based-m400.patch | ||
ACPI-scan-Fix-regression-related-to-X-Gene-UARTs.patch | ||
Add-option-to-automatically-enforce-module-signature.patch | ||
Allwinner-A64-timer-workaround.patch | ||
arm64-Add-option-of-13-for-FORCE_MAX_ZONEORDER.patch | ||
ARM-dts-bcm283x-Several-DTS-improvements.patch | ||
arm-sdhci-esdhc-imx-fixes.patch | ||
ARM-tegra-usb-no-reset.patch | ||
ath9k-rx-dma-stop-check.patch | ||
bcm2835-cpufreq-add-CPU-frequency-control-driver.patch | ||
bcm2835-mmc-sdhci-iproc-handle-mmc_of_parse-errors-during-probe.patch | ||
bcm2837-dts-add-Raspberry-Pi-3-A.patch | ||
build_configs.sh | ||
check_configs.awk | ||
config_generation | ||
crash-driver.patch | ||
CVE-2019-3701.patch | ||
die-floppy-die.patch | ||
disable-i8042-check-on-apple-mac.patch | ||
drm-i915-hush-check-crtc-state.patch | ||
efi-Add-EFI_SECURE_BOOT-bit.patch | ||
efi-Disable-secure-boot-if-shim-is-in-insecure-mode.patch | ||
efi-lockdown.patch | ||
efi-secureboot.patch | ||
efi-use-32-bit-alignment-for-efi_guid_t.patch | ||
filter-aarch64.sh | ||
filter-armv7hl.sh | ||
filter-i686.sh | ||
filter-modules.sh | ||
filter-ppc64le.sh | ||
filter-s390x.sh | ||
filter-x86_64.sh | ||
firmware-Drop-WARN-from-usermodehelper_read_trylock-.patch | ||
generate_all_configs.sh | ||
generate_bls_conf.sh | ||
generate_debug_configs.sh | ||
gitrev | ||
input-kill-stupid-messages.patch | ||
input-rmi4-remove-the-need-for-artifical-IRQ.patch | ||
Input-synaptics-pin-3-touches-when-the-firmware-repo.patch | ||
Kbuild-Add-an-option-to-enable-GCC-VTA.patch | ||
kernel-aarch64-debug.config | ||
kernel-aarch64.config | ||
kernel-armv7hl-debug.config | ||
kernel-armv7hl-lpae-debug.config | ||
kernel-armv7hl-lpae.config | ||
kernel-armv7hl.config | ||
kernel-i686-debug.config | ||
kernel-i686.config | ||
kernel-local | ||
kernel-ppc64le-debug.config | ||
kernel-ppc64le.config | ||
kernel-s390x-debug.config | ||
kernel-s390x.config | ||
kernel-x86_64-debug.config | ||
kernel-x86_64.config | ||
kernel.spec | ||
KEYS-Allow-unrestricted-boot-time-addition-of-keys-t.patch | ||
lib-cpumask-Make-CPUMASK_OFFSTACK-usable-without-deb.patch | ||
lis3-improve-handling-of-null-rate.patch | ||
Makefile | ||
merge.pl | ||
mod-extra.list | ||
mod-extra.sh | ||
mod-sign.sh | ||
namespaces-no-expert.patch | ||
no-pcspkr-modalias.patch | ||
PatchList.txt | ||
process_configs.sh | ||
qcom-msm89xx-fixes.patch | ||
README.txt | ||
rebase-notes.txt | ||
remove-binary-diff.pl | ||
scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch | ||
silence-fbcon-logo.patch | ||
sources | ||
TODO | ||
usb-phy-tegra-Add-38.4MHz-clock-table-entry.patch | ||
x509.genkey | ||
xen-pciback-Don-t-disable-PCI_COMMAND-on-PCI-device-.patch |
Kernel package tips & tricks. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The kernel is one of the more complicated packages in the distro, and for the newcomer, some of the voodoo in the spec file can be somewhat scary. This file attempts to document some of the magic. Speeding up make prep --------------------- The kernel is nearly 500MB of source code, and as such, 'make prep' takes a while. The spec file employs some trickery so that repeated invocations of make prep don't take as long. Ordinarily the %prep phase of a package will delete the tree it is about to untar/patch. The kernel %prep keeps around an unpatched version of the tree, and makes a symlink tree clone of that clean tree and than applies the patches listed in the spec to the symlink tree. This makes a huge difference if you're doing multiple make preps a day. As an added bonus, doing a diff between the clean tree and the symlink tree is slightly faster than it would be doing two proper copies of the tree. Build logs. ----------- There's a convenience helper script in scripts/grab-logs.sh that will grab the build logs from koji for the kernel version reported by make verrel Config hierarchy. ----------------- Instead of having to maintain a config file for every arch variant we build on, the kernel spec uses a nested system of configs. Each option CONFIG_FOO is represented by a single file named CONFIG_FOO which contains the state (=y, =m, =n). These options are collected in the folder base-generic. Architecture specific options are set in nested folders. An option set in a nested folder will override the same option set in one of the higher levels. The individual CONFIG_FOO files only exist in the pkg-git repository. The RPM contains kernel-foo.config files which are the result of combining all the CONFIG_FOO files. The files are combined by running build_configs.sh. This script _must_ be run each time one of the options is changed. Example flow: # Enable the option CONFIG_ABC123 as a module for all arches echo "CONFIG_ABC123=m" > configs/base-generic/CONFIG_ABC1234 # enable the option CONFIG_XYZ321 for only x86 echo "# CONFIG_XYZ321 is not set" > configs/base-generic/CONFIG_XYZ321 echo "CONFIG_XYZ321=m" > configs/base-generic/x86/CONFIG_XYZ321 # regenerate the combined config files ./build_configs.sh The file config_generation gives a listing of what folders go into each config file generated. Debug options. -------------- This is a little complicated, as the purpose & meaning of this changes depending on where we are in the release cycle. If we are building for a current stable release, 'make release' has typically been run already, which sets up the following.. - Two builds occur, a 'kernel' and a 'kernel-debug' flavor. - kernel-debug will get various heavyweight debugging options like lockdep etc turned on. If we are building for rawhide, 'make debug' has been run, which changes the status quo to: - We only build one kernel 'kernel' - The debug options are always turned on. This is done to increase coverage testing, as not many people actually run kernel-debug. The debug options are managed in a separate heierarchy under base-debug. This works in a similar manner to base-generic. More deeply nested folders, again, override options. The file config_generation gives a listing of what folders go into each config file generated.