forked from rpms/kernel
RHEL 9.0.0 Alpha bootstrap
The content of this branch was automatically imported from Fedora ELN with the following as its source: https://src.fedoraproject.org/rpms/kernel#351b480089e439ed4f8da85787b1b002d1b53a62
This commit is contained in:
parent
bedf6c3e17
commit
6a4fc7e052
2
.gitignore
vendored
2
.gitignore
vendored
@ -0,0 +1,2 @@
|
||||
*.xz
|
||||
*.bz2
|
45
Makefile.rhelver
Normal file
45
Makefile.rhelver
Normal file
@ -0,0 +1,45 @@
|
||||
RHEL_MAJOR = 8
|
||||
RHEL_MINOR = 99
|
||||
|
||||
#
|
||||
# RHEL_RELEASE
|
||||
# -------------
|
||||
#
|
||||
# Represents build number in 'release' part of RPM's name-version-release.
|
||||
# name is <package_name>, e.g. kernel
|
||||
# version is upstream kernel version this kernel is based on, e.g. 4.18.0
|
||||
# release is <RHEL_RELEASE>.<dist_tag>[<buildid>], e.g. 100.el8
|
||||
#
|
||||
# Use this spot to avoid future merge conflicts.
|
||||
# Do not trim this comment.
|
||||
RHEL_RELEASE = 41
|
||||
|
||||
#
|
||||
# Early y+1 numbering
|
||||
# --------------------
|
||||
#
|
||||
# In early y+1 process, RHEL_RELEASE consists of 2 numbers: x.y
|
||||
# First is RHEL_RELEASE inherited/merged from y as-is, second number
|
||||
# is incremented with each build starting from 1. After merge from y,
|
||||
# it resets back to 1. This way y+1 nvr reflects status of last merge.
|
||||
#
|
||||
# Example:
|
||||
#
|
||||
# rhel8.0 rhel-8.1
|
||||
# kernel-4.18.0-58.el8 --> kernel-4.18.0-58.1.el8
|
||||
# kernel-4.18.0-58.2.el8
|
||||
# kernel-4.18.0-59.el8 kernel-4.18.0-59.1.el8
|
||||
# kernel-4.18.0-60.el8
|
||||
# kernel-4.18.0-61.el8 --> kernel-4.18.0-61.1.el8
|
||||
#
|
||||
#
|
||||
# Use this spot to avoid future merge conflicts.
|
||||
# Do not trim this comment.
|
||||
EARLY_YSTREAM ?= no
|
||||
EARLY_YBUILD:=
|
||||
EARLY_YRELEASE:=
|
||||
ifneq ("$(ZSTREAM)", "yes")
|
||||
ifeq ("$(EARLY_YSTREAM)","yes")
|
||||
RHEL_RELEASE:=$(RHEL_RELEASE).$(EARLY_YRELEASE)
|
||||
endif
|
||||
endif
|
0
Module.kabi_aarch64
Normal file
0
Module.kabi_aarch64
Normal file
0
Module.kabi_dup_aarch64
Normal file
0
Module.kabi_dup_aarch64
Normal file
0
Module.kabi_dup_ppc64le
Normal file
0
Module.kabi_dup_ppc64le
Normal file
0
Module.kabi_dup_s390x
Normal file
0
Module.kabi_dup_s390x
Normal file
0
Module.kabi_dup_x86_64
Normal file
0
Module.kabi_dup_x86_64
Normal file
0
Module.kabi_ppc64le
Normal file
0
Module.kabi_ppc64le
Normal file
0
Module.kabi_s390x
Normal file
0
Module.kabi_s390x
Normal file
0
Module.kabi_x86_64
Normal file
0
Module.kabi_x86_64
Normal file
219
Patchlist.changelog
Normal file
219
Patchlist.changelog
Normal file
@ -0,0 +1,219 @@
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/514c3a2c3adc4a97d99c39c8e91327740a54807c
|
||||
514c3a2c3adc4a97d99c39c8e91327740a54807c Filter out LTO build options from the perl ccopts
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/7638e86597c1d8e311a2934d4fc8d1baf86cc248
|
||||
7638e86597c1d8e311a2934d4fc8d1baf86cc248 Work around for gcc bug https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96377
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/17b0f7f1d49df30661b517d668715ff5ee1bab09
|
||||
17b0f7f1d49df30661b517d668715ff5ee1bab09 Fixes "acpi: prefer booting with ACPI over DTS" to be RHEL only
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/e7c009cd91ababdbb5f726ef592c7800f0682d3a
|
||||
e7c009cd91ababdbb5f726ef592c7800f0682d3a arch/x86: Remove vendor specific CPU ID checks
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/7120b2a26fc4c7954fd0395973dc6739c110e091
|
||||
7120b2a26fc4c7954fd0395973dc6739c110e091 redhat: Replace hardware.redhat.com link in Unsupported message
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/7a28e2fde653a161913abb8eee943cdacb5ff2ae
|
||||
7a28e2fde653a161913abb8eee943cdacb5ff2ae x86: Fix compile issues with rh_check_supported()
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/45f64c1a24e73af7987cffec3ea941e29364f87f
|
||||
45f64c1a24e73af7987cffec3ea941e29364f87f e1000e: bump up timeout to wait when ME un-configure ULP mode
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/6c14763b1ce98698949ff45135c15e333aa6416d
|
||||
6c14763b1ce98698949ff45135c15e333aa6416d drm/sun4i: sun6i_mipi_dsi: fix horizontal timing calculation
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/67a19b16012b12cffba0b515c6503e5f8cdbb798
|
||||
67a19b16012b12cffba0b515c6503e5f8cdbb798 drm: panel: add Xingbangda XBD599 panel
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/d220dbf98cef820367b5a2a2eeaacebee958bdd4
|
||||
d220dbf98cef820367b5a2a2eeaacebee958bdd4 dt-bindings: panel: add binding for Xingbangda XBD599 panel
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/80660062260dec4bdca9540922577542c16145e8
|
||||
80660062260dec4bdca9540922577542c16145e8 ARM: fix __get_user_check() in case uaccess_* calls are not inlined
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/24d8743613b2a6a585fc68cfe95078d9a3d5b389
|
||||
24d8743613b2a6a585fc68cfe95078d9a3d5b389 mm/kmemleak: skip late_init if not skip disable
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/b697ff5e26974fee8fcd31a1e221e9dd41515efc
|
||||
b697ff5e26974fee8fcd31a1e221e9dd41515efc KEYS: Make use of platform keyring for module signature verify
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/081d2185e22479b449586c4e9843602ca0d49806
|
||||
081d2185e22479b449586c4e9843602ca0d49806 Drop that for now
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/5ef51389cf6673a0e9e004909c7be1dc785050b2
|
||||
5ef51389cf6673a0e9e004909c7be1dc785050b2 Input: rmi4 - remove the need for artificial IRQ in case of HID
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/c1788012ebf8de46e9dc80d18051ed0c77c811b6
|
||||
c1788012ebf8de46e9dc80d18051ed0c77c811b6 ARM: tegra: usb no reset
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/577365feaa909db4c0949eabfcda7e4a972b8e54
|
||||
577365feaa909db4c0949eabfcda7e4a972b8e54 arm: make CONFIG_HIGHPTE optional without CONFIG_EXPERT
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/331be9c5a436057ee852075c102d9d90a9046a30
|
||||
331be9c5a436057ee852075c102d9d90a9046a30 redhat: rh_kabi: deduplication friendly structs
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/34d79fbfb327f732ebf3ece4db21a14f81fedf03
|
||||
34d79fbfb327f732ebf3ece4db21a14f81fedf03 redhat: rh_kabi add a comment with warning about RH_KABI_EXCLUDE usage
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/93a4b5f12d5a1c2d62cf1d7c440b31d9847eab07
|
||||
93a4b5f12d5a1c2d62cf1d7c440b31d9847eab07 redhat: rh_kabi: introduce RH_KABI_EXTEND_WITH_SIZE
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/8e5c06356457f5351289e9f687b991189d163dae
|
||||
8e5c06356457f5351289e9f687b991189d163dae redhat: rh_kabi: Indirect EXTEND macros so nesting of other macros will resolve.
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/212cbccda77cc81fcb60123907eabdac8ad5adb7
|
||||
212cbccda77cc81fcb60123907eabdac8ad5adb7 redhat: rh_kabi: Fix RH_KABI_SET_SIZE to use dereference operator
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/6f7744b412e1fb86a67d8761e64df69cf891b4ad
|
||||
6f7744b412e1fb86a67d8761e64df69cf891b4ad redhat: rh_kabi: Add macros to size and extend structs
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/049623d33998be30d79692c69b34acb502c496e3
|
||||
049623d33998be30d79692c69b34acb502c496e3 Removing Obsolete hba pci-ids from rhel8
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/43ef1d631ecfe84084db3572c9ed1bedbdceb0f8
|
||||
43ef1d631ecfe84084db3572c9ed1bedbdceb0f8 mptsas: pci-id table changes
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/e5726695109dd1a73da92487b75de6a51d54c015
|
||||
e5726695109dd1a73da92487b75de6a51d54c015 mptsas: Taint kernel if mptsas is loaded
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/ee4dcd6f04ca76ad35ab0f38c436ab2f7de53f16
|
||||
ee4dcd6f04ca76ad35ab0f38c436ab2f7de53f16 mptspi: pci-id table changes
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/bd305f716d8b64be1926bc7aebe02468ac6bf599
|
||||
bd305f716d8b64be1926bc7aebe02468ac6bf599 qla2xxx: Remove PCI IDs of deprecated adapter
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/803ff9a2c660c094e14d246ef05019bf6008d503
|
||||
803ff9a2c660c094e14d246ef05019bf6008d503 be2iscsi: remove unsupported device IDs
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/2cb24399321f555f18b0804d3fe02cf53949fba1
|
||||
2cb24399321f555f18b0804d3fe02cf53949fba1 mptspi: Taint kernel if mptspi is loaded
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/ad1740551ff4af49f1ef10a130783d9369e955a0
|
||||
ad1740551ff4af49f1ef10a130783d9369e955a0 hpsa: remove old cciss-based smartarray pci ids
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/4197ba3e766656eea9175c11ed05903620d98a28
|
||||
4197ba3e766656eea9175c11ed05903620d98a28 qla4xxx: Remove deprecated PCI IDs from RHEL 8
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/7e285aec22ab1213639afda877902db363473cb0
|
||||
7e285aec22ab1213639afda877902db363473cb0 aacraid: Remove depreciated device and vendor PCI id's
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/846109a16be92155e69731c36dde48761d375153
|
||||
846109a16be92155e69731c36dde48761d375153 megaraid_sas: remove deprecated pci-ids
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/6fd2019d01cee7ff36dc047d3ecdb504b968f222
|
||||
6fd2019d01cee7ff36dc047d3ecdb504b968f222 mpt*: remove certain deprecated pci-ids
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/dddcd5c1129b275ff160324036a662739db51fc3
|
||||
dddcd5c1129b275ff160324036a662739db51fc3 kernel: add SUPPORT_REMOVED kernel taint
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/08d77161dba915d1ed0d9fede658085440ab4474
|
||||
08d77161dba915d1ed0d9fede658085440ab4474 Rename RH_DISABLE_DEPRECATED to RHEL_DIFFERENCES
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/e2dc2ca6a25a445bf22ceb6a8e38e02706605341
|
||||
e2dc2ca6a25a445bf22ceb6a8e38e02706605341 Add option of 13 for FORCE_MAX_ZONEORDER
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/2384646bf71d8c282cf49bb20321fdf802c61cce
|
||||
2384646bf71d8c282cf49bb20321fdf802c61cce s390: Lock down the kernel when the IPL secure flag is set
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/5850c93175b9d2e1081873f4bbe08dead202cb08
|
||||
5850c93175b9d2e1081873f4bbe08dead202cb08 efi: Lock down the kernel if booted in secure boot mode
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/53250b991f841be025fa4d264850dadc0fae2861
|
||||
53250b991f841be025fa4d264850dadc0fae2861 efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/72223fd1241cc5c70b96a491db14d54c83beadd8
|
||||
72223fd1241cc5c70b96a491db14d54c83beadd8 security: lockdown: expose a hook to lock the kernel down
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/7ba28f03674fa9346610c3fea7fc93bc58f06d2a
|
||||
7ba28f03674fa9346610c3fea7fc93bc58f06d2a Make get_cert_list() use efi_status_to_str() to print error messages.
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/2ae9082db0b54d831a9b3782c049d9917e37d89f
|
||||
2ae9082db0b54d831a9b3782c049d9917e37d89f Add efi_status_to_str() and rework efi_status_to_err().
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/cee1461ada1b7e4b92cd154e7ec241119afcd644
|
||||
cee1461ada1b7e4b92cd154e7ec241119afcd644 Add support for deprecating processors
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/2420149f8f5fa9dd1e2dc793765b498022922a81
|
||||
2420149f8f5fa9dd1e2dc793765b498022922a81 arm: aarch64: Drop the EXPERT setting from ARM64_FORCE_52BIT
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/1d69b30b98b60aff639351f5788d20a3b17f6e27
|
||||
1d69b30b98b60aff639351f5788d20a3b17f6e27 iommu/arm-smmu: workaround DMA mode issues
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/6b2e73e508e7a117b1db91596097c00e5570f64a
|
||||
6b2e73e508e7a117b1db91596097c00e5570f64a rh_kabi: introduce RH_KABI_EXCLUDE
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/ecb9206bce179eb600c52642a6753012a69ce4a2
|
||||
ecb9206bce179eb600c52642a6753012a69ce4a2 ipmi: do not configure ipmi for HPE m400
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/473be59fe72afa9969cf8d10609ef3f14f594631
|
||||
473be59fe72afa9969cf8d10609ef3f14f594631 IB/rxe: Mark Soft-RoCE Transport driver as tech-preview
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/b94117795261f9c074a7addca2252238871b5081
|
||||
b94117795261f9c074a7addca2252238871b5081 scsi: smartpqi: add inspur advantech ids
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/cae871558c333880c1687cab6f2a71accf40d105
|
||||
cae871558c333880c1687cab6f2a71accf40d105 ice: mark driver as tech-preview
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/7d9cb007404211ea6638bde4a28dd0fbe8d95de0
|
||||
7d9cb007404211ea6638bde4a28dd0fbe8d95de0 kABI: Add generic kABI macros to use for kABI workarounds
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/bd353e9aae8877dd490e6c92b67849e0dcfbab25
|
||||
bd353e9aae8877dd490e6c92b67849e0dcfbab25 add pci_hw_vendor_status()
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/41a259999969bbdfe9f556ce71f2c3c07d7454f4
|
||||
41a259999969bbdfe9f556ce71f2c3c07d7454f4 ahci: thunderx2: Fix for errata that affects stop engine
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/2a107343529ce648c11bff62e9f72bbeec738f3f
|
||||
2a107343529ce648c11bff62e9f72bbeec738f3f Vulcan: AHCI PCI bar fix for Broadcom Vulcan early silicon
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/03e48a48f400a51a182a1254cf22ff0c08706d76
|
||||
03e48a48f400a51a182a1254cf22ff0c08706d76 bpf: Add tech preview taint for syscall
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/607f0e89af7ef5682f79f2eea0a99638a1bc0c4f
|
||||
607f0e89af7ef5682f79f2eea0a99638a1bc0c4f bpf: set unprivileged_bpf_disabled to 1 by default, add a boot parameter
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/31da227877eb734ddb484bc519aae85ce200802e
|
||||
31da227877eb734ddb484bc519aae85ce200802e add Red Hat-specific taint flags
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/7a2e2c83be0230667756cccb5bc3687419dfbb8b
|
||||
7a2e2c83be0230667756cccb5bc3687419dfbb8b kdump: fix a grammar issue in a kernel message
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/d345d54d33e7d496c9d845e4723550dd37cb3f88
|
||||
d345d54d33e7d496c9d845e4723550dd37cb3f88 tags.sh: Ignore redhat/rpm
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/5c67dc1eb0783a5c4ca4eb5c545ff6fe05facff0
|
||||
5c67dc1eb0783a5c4ca4eb5c545ff6fe05facff0 put RHEL info into generated headers
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/ce12884c009ec3bed11100c9d19f6d97628cf8ae
|
||||
ce12884c009ec3bed11100c9d19f6d97628cf8ae kdump: add support for crashkernel=auto
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/18fb1389afccdc5535977a10669b49a37829b55a
|
||||
18fb1389afccdc5535977a10669b49a37829b55a kdump: round up the total memory size to 128M for crashkernel reservation
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/5fb9821441cc0b77101ad9c0dfaa747957a4cce4
|
||||
5fb9821441cc0b77101ad9c0dfaa747957a4cce4 acpi: prefer booting with ACPI over DTS
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/0cf21a40db6fca5d89cf3d65808117c8c14e524e
|
||||
0cf21a40db6fca5d89cf3d65808117c8c14e524e aarch64: acpi scan: Fix regression related to X-Gene UARTs
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/de13e14cc2388478d9a2c68c5d90affd92098f11
|
||||
de13e14cc2388478d9a2c68c5d90affd92098f11 ACPI / irq: Workaround firmware issue on X-Gene based m400
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/71c098f4afa38a15a95495c14f71fb087ab27308
|
||||
71c098f4afa38a15a95495c14f71fb087ab27308 modules: add rhelversion MODULE_INFO tag
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/3247f9c838f4aa91aa5d08c152b385d61554d4b5
|
||||
3247f9c838f4aa91aa5d08c152b385d61554d4b5 ACPI: APEI: arm64: Ignore broken HPE moonshot APEI support
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/e80982feaa68226ff60d2f83dace2016c35270d3
|
||||
e80982feaa68226ff60d2f83dace2016c35270d3 Add Red Hat tainting
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/2987f9a606df106f5bdfa4113eb55356a21085a6
|
||||
2987f9a606df106f5bdfa4113eb55356a21085a6 Introduce CONFIG_RH_DISABLE_DEPRECATED
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/a99885a5e77af594dfdce586cc83e5911d8401ce
|
||||
a99885a5e77af594dfdce586cc83e5911d8401ce Pull the RHEL version defines out of the Makefile
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/cd3a5d30570279538623ea8a1255db0ee4b728f7
|
||||
cd3a5d30570279538623ea8a1255db0ee4b728f7 [initial commit] Add Red Hat variables in the top level makefile
|
||||
|
25
README.rst
Normal file
25
README.rst
Normal file
@ -0,0 +1,25 @@
|
||||
===================
|
||||
The Kernel dist-git
|
||||
===================
|
||||
|
||||
The kernel is maintained in a `source tree`_ rather than directly in dist-git.
|
||||
The specfile is maintained as a `template`_ in the source tree along with a set
|
||||
of build scripts to generate configurations, (S)RPMs, and to populate the
|
||||
dist-git repository.
|
||||
|
||||
The `documentation`_ for the source tree covers how to contribute and maintain
|
||||
the tree.
|
||||
|
||||
If you're looking for the downstream patch set it's available in the source
|
||||
tree with "git log master..ark-patches" or
|
||||
`online`_.
|
||||
|
||||
Each release in dist-git is tagged in the source repository so you can easily
|
||||
check out the source tree for a build. The tags are in the format
|
||||
name-version-release, but note release doesn't contain the dist tag since the
|
||||
source can be built in different build roots (Fedora, CentOS, etc.)
|
||||
|
||||
.. _source tree: https://gitlab.com/cki-project/kernel-ark.git
|
||||
.. _template: https://gitlab.com/cki-project/kernel-ark/-/blob/os-build/redhat/kernel.spec.template
|
||||
.. _documentation: https://gitlab.com/cki-project/kernel-ark/-/wikis/home
|
||||
.. _online: https://gitlab.com/cki-project/kernel-ark/-/commits/ark-patches
|
149
check-kabi
Executable file
149
check-kabi
Executable file
@ -0,0 +1,149 @@
|
||||
#!/usr/bin/python3
|
||||
#
|
||||
# check-kabi - Red Hat kABI reference checking tool
|
||||
#
|
||||
# We use this script to check against reference Module.kabi files.
|
||||
#
|
||||
# Author: Jon Masters <jcm@redhat.com>
|
||||
# Copyright (C) 2007-2009 Red Hat, Inc.
|
||||
#
|
||||
# This software may be freely redistributed under the terms of the GNU
|
||||
# General Public License (GPL).
|
||||
|
||||
# Changelog:
|
||||
#
|
||||
# 2018/06/01 - Update for python3 by Petr Oros.
|
||||
# 2009/08/15 - Updated for use in RHEL6.
|
||||
# 2007/06/13 - Initial rewrite in python by Jon Masters.
|
||||
|
||||
__author__ = "Jon Masters <jcm@redhat.com>"
|
||||
__version__ = "2.0"
|
||||
__date__ = "2009/08/15"
|
||||
__copyright__ = "Copyright (C) 2007-2009 Red Hat, Inc"
|
||||
__license__ = "GPL"
|
||||
|
||||
import getopt
|
||||
import string
|
||||
import sys
|
||||
|
||||
true = 1
|
||||
false = 0
|
||||
|
||||
|
||||
def load_symvers(symvers, filename):
|
||||
"""Load a Module.symvers file."""
|
||||
|
||||
symvers_file = open(filename, "r")
|
||||
|
||||
while true:
|
||||
in_line = symvers_file.readline()
|
||||
if in_line == "":
|
||||
break
|
||||
if in_line == "\n":
|
||||
continue
|
||||
checksum, symbol, directory, type = in_line.split()
|
||||
|
||||
symvers[symbol] = in_line[0:-1]
|
||||
|
||||
|
||||
def load_kabi(kabi, filename):
|
||||
"""Load a Module.kabi file."""
|
||||
|
||||
kabi_file = open(filename, "r")
|
||||
|
||||
while true:
|
||||
in_line = kabi_file.readline()
|
||||
if in_line == "":
|
||||
break
|
||||
if in_line == "\n":
|
||||
continue
|
||||
checksum, symbol, directory, type = in_line.split()
|
||||
|
||||
kabi[symbol] = in_line[0:-1]
|
||||
|
||||
|
||||
def check_kabi(symvers, kabi):
|
||||
"""Check Module.kabi and Module.symvers files."""
|
||||
|
||||
fail = 0
|
||||
warn = 0
|
||||
changed_symbols = []
|
||||
moved_symbols = []
|
||||
|
||||
for symbol in kabi:
|
||||
abi_hash, abi_sym, abi_dir, abi_type = kabi[symbol].split()
|
||||
if symbol in symvers:
|
||||
sym_hash, sym_sym, sym_dir, sym_type = symvers[symbol].split()
|
||||
if abi_hash != sym_hash:
|
||||
fail = 1
|
||||
changed_symbols.append(symbol)
|
||||
|
||||
if abi_dir != sym_dir:
|
||||
warn = 1
|
||||
moved_symbols.append(symbol)
|
||||
else:
|
||||
fail = 1
|
||||
changed_symbols.append(symbol)
|
||||
|
||||
if fail:
|
||||
print("*** ERROR - ABI BREAKAGE WAS DETECTED ***")
|
||||
print("")
|
||||
print("The following symbols have been changed (this will cause an ABI breakage):")
|
||||
print("")
|
||||
for symbol in changed_symbols:
|
||||
print(symbol)
|
||||
print("")
|
||||
|
||||
if warn:
|
||||
print("*** WARNING - ABI SYMBOLS MOVED ***")
|
||||
print("")
|
||||
print("The following symbols moved (typically caused by moving a symbol from being")
|
||||
print("provided by the kernel vmlinux out to a loadable module):")
|
||||
print("")
|
||||
for symbol in moved_symbols:
|
||||
print(symbol)
|
||||
print("")
|
||||
|
||||
"""Halt the build, if we got errors and/or warnings. In either case,
|
||||
double-checkig is required to avoid introducing / concealing
|
||||
KABI inconsistencies."""
|
||||
if fail or warn:
|
||||
sys.exit(1)
|
||||
sys.exit(0)
|
||||
|
||||
|
||||
def usage():
|
||||
print("""
|
||||
check-kabi: check Module.kabi and Module.symvers files.
|
||||
|
||||
check-kabi [ -k Module.kabi ] [ -s Module.symvers ]
|
||||
|
||||
""")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
symvers_file = ""
|
||||
kabi_file = ""
|
||||
|
||||
opts, args = getopt.getopt(sys.argv[1:], 'hk:s:')
|
||||
|
||||
for o, v in opts:
|
||||
if o == "-s":
|
||||
symvers_file = v
|
||||
if o == "-h":
|
||||
usage()
|
||||
sys.exit(0)
|
||||
if o == "-k":
|
||||
kabi_file = v
|
||||
|
||||
if (symvers_file == "") or (kabi_file == ""):
|
||||
usage()
|
||||
sys.exit(1)
|
||||
|
||||
symvers = {}
|
||||
kabi = {}
|
||||
|
||||
load_symvers(symvers, symvers_file)
|
||||
load_kabi(kabi, kabi_file)
|
||||
check_kabi(symvers, kabi)
|
3
cpupower.config
Normal file
3
cpupower.config
Normal file
@ -0,0 +1,3 @@
|
||||
# See 'cpupower help' and cpupower(1) for more info
|
||||
CPUPOWER_START_OPTS="frequency-set -g performance"
|
||||
CPUPOWER_STOP_OPTS="frequency-set -g ondemand"
|
13
cpupower.service
Normal file
13
cpupower.service
Normal file
@ -0,0 +1,13 @@
|
||||
[Unit]
|
||||
Description=Configure CPU power related settings
|
||||
After=syslog.target
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
RemainAfterExit=yes
|
||||
EnvironmentFile=/etc/sysconfig/cpupower
|
||||
ExecStart=/usr/bin/cpupower $CPUPOWER_START_OPTS
|
||||
ExecStop=/usr/bin/cpupower $CPUPOWER_STOP_OPTS
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
18
filter-aarch64.sh.fedora
Normal file
18
filter-aarch64.sh.fedora
Normal file
@ -0,0 +1,18 @@
|
||||
#! /bin/bash
|
||||
|
||||
# This is the aarch64 override file for the core/drivers package split. The
|
||||
# module directories listed here and in the generic list in filter-modules.sh
|
||||
# will be moved to the resulting kernel-modules package for this arch.
|
||||
# Anything not listed in those files will be in the kernel-core package.
|
||||
#
|
||||
# Please review the default list in filter-modules.sh before making
|
||||
# modifications to the overrides below. If something should be removed across
|
||||
# all arches, remove it in the default instead of per-arch.
|
||||
|
||||
driverdirs="atm auxdisplay bcma bluetooth firewire fmc fpga infiniband isdn leds media memstick message mmc mtd nfc ntb pcmcia power ssb soundwire staging tty uio uwb w1"
|
||||
|
||||
ethdrvs="3com adaptec arc alteon atheros broadcom cadence calxeda chelsio cisco dec dlink emulex icplus marvell micrel myricom neterion nvidia oki-semi packetengines qlogic rdc renesas sfc silan sis smsc stmicro sun tehuti ti via wiznet xircom"
|
||||
|
||||
drmdrvs="amd arm bridge ast exynos hisilicon i2c imx mgag200 meson msm nouveau panel pl111 radeon rockchip tegra sun4i sun4i-drm-hdmi tinydrm vc4"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject target_core_user sbp_target cxgbit iw_cxgb3 iw_cxgb4 cxgb3i cxgb3i cxgb3i_ddp cxgb4i chcr chtls rnbd-client rnbd-server mlx5_vdpa"
|
18
filter-aarch64.sh.rhel
Normal file
18
filter-aarch64.sh.rhel
Normal file
@ -0,0 +1,18 @@
|
||||
#! /bin/bash
|
||||
|
||||
# This is the aarch64 override file for the core/drivers package split. The
|
||||
# module directories listed here and in the generic list in filter-modules.sh
|
||||
# will be moved to the resulting kernel-modules package for this arch.
|
||||
# Anything not listed in those files will be in the kernel-core package.
|
||||
#
|
||||
# Please review the default list in filter-modules.sh before making
|
||||
# modifications to the overrides below. If something should be removed across
|
||||
# all arches, remove it in the default instead of per-arch.
|
||||
|
||||
driverdirs="atm auxdisplay bcma bluetooth firewire fmc infiniband isdn leds media memstick message mmc mtd mwave nfc ntb pcmcia platform power ssb staging tty uio uwb w1"
|
||||
|
||||
ethdrvs="3com adaptec arc alteon atheros broadcom cadence calxeda chelsio cisco dec dlink emulex icplus marvell micrel myricom neterion nvidia oki-semi packetengines qlogic rdc renesas sfc silan sis smsc stmicro sun tehuti ti via wiznet xircom"
|
||||
|
||||
drmdrvs="amd arm bridge ast exynos hisilicon i2c imx mgag200 meson msm nouveau panel radeon rockchip tegra sun4i tinydrm vc4"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject target_core_user sbp_target cxgbit iw_cxgb3 iw_cxgb4 cxgb3i cxgb3i cxgb3i_ddp cxgb4i chcr chtls"
|
18
filter-armv7hl.sh.fedora
Normal file
18
filter-armv7hl.sh.fedora
Normal file
@ -0,0 +1,18 @@
|
||||
#! /bin/bash
|
||||
|
||||
# This is the armv7hl override file for the core/drivers package split. The
|
||||
# module directories listed here and in the generic list in filter-modules.sh
|
||||
# will be moved to the resulting kernel-modules package for this arch.
|
||||
# Anything not listed in those files will be in the kernel-core package.
|
||||
#
|
||||
# Please review the default list in filter-modules.sh before making
|
||||
# modifications to the overrides below. If something should be removed across
|
||||
# all arches, remove it in the default instead of per-arch.
|
||||
|
||||
driverdirs="atm auxdisplay bcma bluetooth firewire fmc fpga infiniband isdn media memstick message nfc ntb pcmcia ssb soundwire staging tty uio uwb w1"
|
||||
|
||||
ethdrvs="3com adaptec alteon altera amd atheros broadcom cadence chelsio cisco dec dlink emulex icplus mellanox micrel myricom natsemi neterion nvidia oki-semi packetengines qlogic rdc renesas sfc silan sis sun tehuti via wiznet xircom"
|
||||
|
||||
drmdrvs="amd arm armada bridge ast exynos etnaviv hisilicon i2c imx meson mgag200 msm nouveau omapdrm panel pl111 radeon rockchip sti stm sun4i sun4i-drm-hdmi tegra tilcdc tinydrm vc4"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject target_core_user sbp_target cxgbit iw_cxgb3 iw_cxgb4 cxgb3i cxgb3i cxgb3i_ddp cxgb4i chcr chtls bq27xxx_battery_hdq mlx5_vdpa"
|
0
filter-armv7hl.sh.rhel
Normal file
0
filter-armv7hl.sh.rhel
Normal file
14
filter-i686.sh.fedora
Normal file
14
filter-i686.sh.fedora
Normal file
@ -0,0 +1,14 @@
|
||||
#! /bin/bash
|
||||
|
||||
# This is the i686 override file for the core/drivers package split. The
|
||||
# module directories listed here and in the generic list in filter-modules.sh
|
||||
# will be moved to the resulting kernel-modules package for this arch.
|
||||
# Anything not listed in those files will be in the kernel-core package.
|
||||
#
|
||||
# Please review the default list in filter-modules.sh before making
|
||||
# modifications to the overrides below. If something should be removed across
|
||||
# all arches, remove it in the default instead of per-arch.
|
||||
|
||||
driverdirs="atm auxdisplay bcma bluetooth firewire fmc fpga infiniband isdn leds media memstick mfd mmc mtd nfc ntb pcmcia platform power ssb soundwire staging tty uio uwb w1"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject hid-sensor-hub hid-sensor-magn-3d hid-sensor-incl-3d hid-sensor-gyro-3d hid-sensor-iio-common hid-sensor-accel-3d hid-sensor-trigger hid-sensor-als hid-sensor-rotation hid-sensor-temperature hid-sensor-humidity target_core_user sbp_target cxgbit iw_cxgb3 iw_cxgb4 cxgb3i cxgb3i cxgb3i_ddp cxgb4i chcr chtls parport_serial regmap-sdw hid-asus"
|
0
filter-i686.sh.rhel
Normal file
0
filter-i686.sh.rhel
Normal file
170
filter-modules.sh.fedora
Executable file
170
filter-modules.sh.fedora
Executable file
@ -0,0 +1,170 @@
|
||||
#! /bin/bash
|
||||
#
|
||||
# Called as filter-modules.sh list-of-modules Arch
|
||||
|
||||
# This script filters the modules into the kernel-core and kernel-modules
|
||||
# subpackages. We list out subsystems/subdirs to prune from the installed
|
||||
# module directory. What is left is put into the kernel-core package. What is
|
||||
# pruned is contained in the kernel-modules package.
|
||||
#
|
||||
# This file contains the default subsys/subdirs to prune from all architectures.
|
||||
# If an architecture needs to differ, we source a per-arch filter-<arch>.sh file
|
||||
# that contains the set of override lists to be used instead. If a module or
|
||||
# subsys should be in kernel-modules on all arches, please change the defaults
|
||||
# listed here.
|
||||
|
||||
# Overrides is individual modules which need to remain in kernel-core due to deps.
|
||||
overrides="cec"
|
||||
|
||||
# Set the default dirs/modules to filter out
|
||||
driverdirs="atm auxdisplay bcma bluetooth firewire fmc fpga infiniband isdn leds media memstick mfd mmc mtd nfc ntb pcmcia platform power ssb soundwire staging tty uio uwb w1"
|
||||
|
||||
chardrvs="mwave pcmcia"
|
||||
|
||||
netdrvs="appletalk can dsa hamradio ieee802154 irda ppp slip usb wireless"
|
||||
|
||||
ethdrvs="3com adaptec alteon amd aquantia atheros broadcom cadence calxeda chelsio cisco dec dlink emulex icplus marvell mellanox neterion nvidia oki-semi packetengines qlogic rdc renesas sfc silan sis smsc stmicro sun tehuti ti wiznet xircom"
|
||||
|
||||
inputdrvs="gameport tablet touchscreen"
|
||||
|
||||
scsidrvs="aacraid advansys aic7xxx aic94xx be2iscsi bfa bnx2i bnx2fc csiostor cxgbi esas2r fcoe fnic isci libsas lpfc megaraid mpt2sas mpt3sas mvsas pm8001 qla2xxx qla4xxx sym53c8xx_2 ufs qedf wd719x"
|
||||
|
||||
usbdrvs="atm image misc serial wusbcore"
|
||||
|
||||
fsdrvs="affs befs coda cramfs dlm ecryptfs hfs hfsplus jfs jffs2 minix ncpfs nilfs2 ocfs2 reiserfs romfs squashfs sysv ubifs ufs"
|
||||
|
||||
netprots="6lowpan appletalk atm ax25 batman-adv bluetooth can dccp dsa ieee802154 irda l2tp mac80211 mac802154 mpls netrom nfc rds rfkill rose sctp smc wireless"
|
||||
|
||||
drmdrvs="amd ast bridge gma500 i2c i915 mgag200 nouveau panel radeon"
|
||||
|
||||
iiodrvs="accel adc afe common dac gyro health humidity light magnetometer multiplexer orientation potentiometer potentiostat pressure temperature"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject target_core_user sbp_target cxgbit iw_cxgb3 iw_cxgb4 cxgb3i cxgb3i cxgb3i_ddp cxgb4i chcr chtls parport_serial regmap-sdw hid-asus iTCO_wdt rnbd-client rnbd-server mlx5_vdpa"
|
||||
|
||||
# Grab the arch-specific filter list overrides
|
||||
source ./filter-$2.sh
|
||||
|
||||
filter_dir() {
|
||||
filelist=$1
|
||||
dir=$2
|
||||
|
||||
grep -v -e "${dir}/" ${filelist} > ${filelist}.tmp
|
||||
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
echo "Couldn't remove ${dir}. Skipping."
|
||||
else
|
||||
grep -e "${dir}/" ${filelist} >> k-d.list
|
||||
mv ${filelist}.tmp $filelist
|
||||
fi
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
filter_ko() {
|
||||
filelist=$1
|
||||
mod=$2
|
||||
|
||||
grep -v -e "${mod}.ko" ${filelist} > ${filelist}.tmp
|
||||
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
echo "Couldn't remove ${mod}.ko Skipping."
|
||||
else
|
||||
grep -e "${mod}.ko" ${filelist} >> k-d.list
|
||||
mv ${filelist}.tmp $filelist
|
||||
fi
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
# Filter the drivers/ subsystems
|
||||
for subsys in ${driverdirs}
|
||||
do
|
||||
filter_dir $1 drivers/${subsys}
|
||||
done
|
||||
|
||||
# Filter the networking drivers
|
||||
for netdrv in ${netdrvs}
|
||||
do
|
||||
filter_dir $1 drivers/net/${netdrv}
|
||||
done
|
||||
|
||||
# Filter the char drivers
|
||||
for char in ${chardrvs}
|
||||
do
|
||||
filter_dir $1 drivers/char/${input}
|
||||
done
|
||||
|
||||
# Filter the ethernet drivers
|
||||
for eth in ${ethdrvs}
|
||||
do
|
||||
filter_dir $1 drivers/net/ethernet/${eth}
|
||||
done
|
||||
|
||||
# SCSI
|
||||
for scsi in ${scsidrvs}
|
||||
do
|
||||
filter_dir $1 drivers/scsi/${scsi}
|
||||
done
|
||||
|
||||
# Input
|
||||
for input in ${inputdrvs}
|
||||
do
|
||||
filter_dir $1 drivers/input/${input}
|
||||
done
|
||||
|
||||
# USB
|
||||
for usb in ${usbdrvs}
|
||||
do
|
||||
filter_dir $1 drivers/usb/${usb}
|
||||
done
|
||||
|
||||
# Filesystems
|
||||
for fs in ${fsdrvs}
|
||||
do
|
||||
filter_dir $1 fs/${fs}
|
||||
done
|
||||
|
||||
# Network protocols
|
||||
for prot in ${netprots}
|
||||
do
|
||||
filter_dir $1 kernel/net/${prot}
|
||||
done
|
||||
|
||||
# DRM
|
||||
for drm in ${drmdrvs}
|
||||
do
|
||||
filter_dir $1 drivers/gpu/drm/${drm}
|
||||
done
|
||||
|
||||
# Just kill sound.
|
||||
filter_dir $1 kernel/sound
|
||||
|
||||
# Now go through and filter any single .ko files that might have deps on the
|
||||
# things we filtered above
|
||||
for mod in ${singlemods}
|
||||
do
|
||||
filter_ko $1 ${mod}
|
||||
done
|
||||
|
||||
# Now process the override list to bring those modules back into core
|
||||
for mod in ${overrides}
|
||||
do
|
||||
grep -v -e "/${mod}.ko" k-d.list > k-d.list.tmp
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
echo "Couldn't save ${mod}.ko Skipping."
|
||||
else
|
||||
grep -e "/${mod}.ko" k-d.list >> $filelist
|
||||
mv k-d.list.tmp k-d.list
|
||||
fi
|
||||
|
||||
done
|
||||
|
||||
# Go through our generated drivers list and remove the .ko files. We'll
|
||||
# restore them later.
|
||||
for mod in `cat k-d.list`
|
||||
do
|
||||
rm -rf $mod
|
||||
done
|
168
filter-modules.sh.rhel
Executable file
168
filter-modules.sh.rhel
Executable file
@ -0,0 +1,168 @@
|
||||
#! /bin/bash
|
||||
#
|
||||
# Called as filter-modules.sh list-of-modules Arch
|
||||
|
||||
# This script filters the modules into the kernel-core and kernel-modules
|
||||
# subpackages. We list out subsystems/subdirs to prune from the installed
|
||||
# module directory. What is left is put into the kernel-core package. What is
|
||||
# pruned is contained in the kernel-modules package.
|
||||
#
|
||||
# This file contains the default subsys/subdirs to prune from all architectures.
|
||||
# If an architecture needs to differ, we source a per-arch filter-<arch>.sh file
|
||||
# that contains the set of override lists to be used instead. If a module or
|
||||
# subsys should be in kernel-modules on all arches, please change the defaults
|
||||
# listed here.
|
||||
|
||||
# Overrides is individual modules which need to remain in kernel-core due to deps.
|
||||
overrides="cec"
|
||||
|
||||
# Set the default dirs/modules to filter out
|
||||
driverdirs="atm auxdisplay bcma bluetooth firewire fmc iio infiniband isdn leds media memstick mfd mmc mtd nfc ntb pcmcia platform power ssb staging tty uio uwb w1"
|
||||
|
||||
chardrvs="mwave pcmcia"
|
||||
|
||||
netdrvs="appletalk can dsa hamradio ieee802154 irda ppp slip usb wireless"
|
||||
|
||||
ethdrvs="3com adaptec alteon amd aquantia atheros broadcom cadence calxeda chelsio cisco dec dlink emulex icplus marvell neterion nvidia oki-semi packetengines qlogic rdc renesas sfc silan sis smsc stmicro sun tehuti ti wiznet xircom"
|
||||
|
||||
inputdrvs="gameport tablet touchscreen"
|
||||
|
||||
scsidrvs="aacraid aic7xxx aic94xx be2iscsi bfa bnx2i bnx2fc csiostor cxgbi esas2r fcoe fnic hisi_sas isci libsas lpfc megaraid mpt2sas mpt3sas mvsas pm8001 qla2xxx qla4xxx sym53c8xx_2 ufs qedf"
|
||||
|
||||
usbdrvs="atm image misc serial wusbcore"
|
||||
|
||||
fsdrvs="affs befs coda cramfs ecryptfs hfs hfsplus jfs minix ncpfs nilfs2 ocfs2 reiserfs romfs squashfs sysv ubifs ufs"
|
||||
|
||||
netprots="6lowpan appletalk atm ax25 batman-adv bluetooth can dccp dsa ieee802154 irda l2tp mac80211 mac802154 mpls netrom nfc rds rfkill rose sctp smc wireless"
|
||||
|
||||
drmdrvs="amd ast gma500 i2c i915 mgag200 nouveau radeon via "
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject hid-sensor-hub target_core_user sbp_target cxgbit iw_cxgb3 iw_cxgb4 cxgb3i cxgb3i cxgb3i_ddp cxgb4i chcr chtls parport_serial ism hid-asus"
|
||||
|
||||
# Grab the arch-specific filter list overrides
|
||||
source ./filter-$2.sh
|
||||
|
||||
filter_dir() {
|
||||
filelist=$1
|
||||
dir=$2
|
||||
|
||||
grep -v -e "${dir}/" ${filelist} > ${filelist}.tmp
|
||||
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
echo "Couldn't remove ${dir}. Skipping."
|
||||
else
|
||||
grep -e "${dir}/" ${filelist} >> k-d.list
|
||||
mv ${filelist}.tmp $filelist
|
||||
fi
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
filter_ko() {
|
||||
filelist=$1
|
||||
mod=$2
|
||||
|
||||
grep -v -e "${mod}.ko" ${filelist} > ${filelist}.tmp
|
||||
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
echo "Couldn't remove ${mod}.ko Skipping."
|
||||
else
|
||||
grep -e "${mod}.ko" ${filelist} >> k-d.list
|
||||
mv ${filelist}.tmp $filelist
|
||||
fi
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
# Filter the drivers/ subsystems
|
||||
for subsys in ${driverdirs}
|
||||
do
|
||||
filter_dir $1 drivers/${subsys}
|
||||
done
|
||||
|
||||
# Filter the networking drivers
|
||||
for netdrv in ${netdrvs}
|
||||
do
|
||||
filter_dir $1 drivers/net/${netdrv}
|
||||
done
|
||||
|
||||
# Filter the char drivers
|
||||
for char in ${chardrvs}
|
||||
do
|
||||
filter_dir $1 drivers/char/${input}
|
||||
done
|
||||
|
||||
# Filter the ethernet drivers
|
||||
for eth in ${ethdrvs}
|
||||
do
|
||||
filter_dir $1 drivers/net/ethernet/${eth}
|
||||
done
|
||||
|
||||
# SCSI
|
||||
for scsi in ${scsidrvs}
|
||||
do
|
||||
filter_dir $1 drivers/scsi/${scsi}
|
||||
done
|
||||
|
||||
# Input
|
||||
for input in ${inputdrvs}
|
||||
do
|
||||
filter_dir $1 drivers/input/${input}
|
||||
done
|
||||
|
||||
# USB
|
||||
for usb in ${usbdrvs}
|
||||
do
|
||||
filter_dir $1 drivers/usb/${usb}
|
||||
done
|
||||
|
||||
# Filesystems
|
||||
for fs in ${fsdrvs}
|
||||
do
|
||||
filter_dir $1 fs/${fs}
|
||||
done
|
||||
|
||||
# Network protocols
|
||||
for prot in ${netprots}
|
||||
do
|
||||
filter_dir $1 kernel/net/${prot}
|
||||
done
|
||||
|
||||
# DRM
|
||||
for drm in ${drmdrvs}
|
||||
do
|
||||
filter_dir $1 drivers/gpu/drm/${drm}
|
||||
done
|
||||
|
||||
# Just kill sound.
|
||||
filter_dir $1 kernel/sound
|
||||
|
||||
# Now go through and filter any single .ko files that might have deps on the
|
||||
# things we filtered above
|
||||
for mod in ${singlemods}
|
||||
do
|
||||
filter_ko $1 ${mod}
|
||||
done
|
||||
|
||||
# Now process the override list to bring those modules back into core
|
||||
for mod in ${overrides}
|
||||
do
|
||||
grep -v -e "/${mod}.ko" k-d.list > k-d.list.tmp
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
echo "Couldn't save ${mod}.ko Skipping."
|
||||
else
|
||||
grep -e "/${mod}.ko" k-d.list >> $filelist
|
||||
mv k-d.list.tmp k-d.list
|
||||
fi
|
||||
|
||||
done
|
||||
|
||||
# Go through our generated drivers list and remove the .ko files. We'll
|
||||
# restore them later.
|
||||
for mod in `cat k-d.list`
|
||||
do
|
||||
rm -rf $mod
|
||||
done
|
14
filter-ppc64le.sh.fedora
Normal file
14
filter-ppc64le.sh.fedora
Normal file
@ -0,0 +1,14 @@
|
||||
#! /bin/bash
|
||||
|
||||
# This is the ppc64le override file for the core/drivers package split. The
|
||||
# module directories listed here and in the generic list in filter-modules.sh
|
||||
# will be moved to the resulting kernel-modules package for this arch.
|
||||
# Anything not listed in those files will be in the kernel-core package.
|
||||
#
|
||||
# Please review the default list in filter-modules.sh before making
|
||||
# modifications to the overrides below. If something should be removed across
|
||||
# all arches, remove it in the default instead of per-arch.
|
||||
|
||||
driverdirs="atm auxdisplay bcma bluetooth firewire fmc fpga infiniband isdn leds media memstick message mmc mtd nfc ntb pcmcia platform power ssb staging tty uio uwb w1"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject target_core_user sbp_target cxgbit iw_cxgb3 iw_cxgb4 cxgb3i cxgb3i cxgb3i_ddp cxgb4i chcr chtls rnbd-client rnbd-server mlx5_vdpa"
|
14
filter-ppc64le.sh.rhel
Normal file
14
filter-ppc64le.sh.rhel
Normal file
@ -0,0 +1,14 @@
|
||||
#! /bin/bash
|
||||
|
||||
# This is the ppc64le override file for the core/drivers package split. The
|
||||
# module directories listed here and in the generic list in filter-modules.sh
|
||||
# will be moved to the resulting kernel-modules package for this arch.
|
||||
# Anything not listed in those files will be in the kernel-core package.
|
||||
#
|
||||
# Please review the default list in filter-modules.sh before making
|
||||
# modifications to the overrides below. If something should be removed across
|
||||
# all arches, remove it in the default instead of per-arch.
|
||||
|
||||
driverdirs="atm auxdisplay bcma bluetooth firewire fmc infiniband isdn leds media memstick message mmc mtd mwave nfc ntb pcmcia platform power ssb staging tty uio uwb w1"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject target_core_user sbp_target cxgbit iw_cxgb3 iw_cxgb4 cxgb3i cxgb3i cxgb3i_ddp cxgb4i chcr chtls"
|
12
filter-s390x.sh.fedora
Normal file
12
filter-s390x.sh.fedora
Normal file
@ -0,0 +1,12 @@
|
||||
#! /bin/bash
|
||||
|
||||
# This is the s390x override file for the core/drivers package split. The
|
||||
# module directories listed here and in the generic list in filter-modules.sh
|
||||
# will be moved to the resulting kernel-modules package for this arch.
|
||||
# Anything not listed in those files will be in the kernel-core package.
|
||||
#
|
||||
# Please review the default list in filter-modules.sh before making
|
||||
# modifications to the overrides below. If something should be removed across
|
||||
# all arches, remove it in the default instead of per-arch.
|
||||
|
||||
# Defaults work so no need to override
|
12
filter-s390x.sh.rhel
Normal file
12
filter-s390x.sh.rhel
Normal file
@ -0,0 +1,12 @@
|
||||
#! /bin/bash
|
||||
|
||||
# This is the s390x override file for the core/drivers package split. The
|
||||
# module directories listed here and in the generic list in filter-modules.sh
|
||||
# will be moved to the resulting kernel-modules package for this arch.
|
||||
# Anything not listed in those files will be in the kernel-core package.
|
||||
#
|
||||
# Please review the default list in filter-modules.sh before making
|
||||
# modifications to the overrides below. If something should be removed across
|
||||
# all arches, remove it in the default instead of per-arch.
|
||||
|
||||
# Defaults work so no need to override
|
12
filter-x86_64.sh.fedora
Normal file
12
filter-x86_64.sh.fedora
Normal file
@ -0,0 +1,12 @@
|
||||
#! /bin/bash
|
||||
|
||||
# This is the x86_64 override file for the core/drivers package split. The
|
||||
# module directories listed here and in the generic list in filter-modules.sh
|
||||
# will be moved to the resulting kernel-modules package for this arch.
|
||||
# Anything not listed in those files will be in the kernel-core package.
|
||||
#
|
||||
# Please review the default list in filter-modules.sh before making
|
||||
# modifications to the overrides below. If something should be removed across
|
||||
# all arches, remove it in the default instead of per-arch.
|
||||
|
||||
# Defaults work so no need to override
|
12
filter-x86_64.sh.rhel
Normal file
12
filter-x86_64.sh.rhel
Normal file
@ -0,0 +1,12 @@
|
||||
#! /bin/bash
|
||||
|
||||
# This is the x86_64 override file for the core/drivers package split. The
|
||||
# module directories listed here and in the generic list in filter-modules.sh
|
||||
# will be moved to the resulting kernel-modules package for this arch.
|
||||
# Anything not listed in those files will be in the kernel-core package.
|
||||
#
|
||||
# Please review the default list in filter-modules.sh before making
|
||||
# modifications to the overrides below. If something should be removed across
|
||||
# all arches, remove it in the default instead of per-arch.
|
||||
|
||||
# Defaults work so no need to override
|
40
generate_all_configs.sh
Executable file
40
generate_all_configs.sh
Executable file
@ -0,0 +1,40 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Adjusts the configuration options to build the variants correctly
|
||||
#
|
||||
# arg1: configuration to go in the primary variant
|
||||
# arg2: are we only generating debug configs
|
||||
|
||||
|
||||
PRIMARY=$1
|
||||
DEBUGBUILDSENABLED=$2
|
||||
|
||||
if [ -z "$2" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$PRIMARY" ]; then
|
||||
PRIMARY=rhel
|
||||
fi
|
||||
|
||||
if [ "$PRIMARY" = "fedora" ]; then
|
||||
SECONDARY=rhel
|
||||
else
|
||||
SECONDARY=fedora
|
||||
fi
|
||||
|
||||
for i in kernel-*-"$PRIMARY".config; do
|
||||
NEW=kernel-"$VERSION"-$(echo "$i" | cut -d - -f2- | sed s/-"$PRIMARY"//)
|
||||
#echo $NEW
|
||||
mv "$i" "$NEW"
|
||||
done
|
||||
|
||||
rm -f kernel-*-"$SECONDARY".config
|
||||
|
||||
if [ "$DEBUGBUILDSENABLED" -eq 0 ]; then
|
||||
for i in kernel-*debug*.config; do
|
||||
base=$(echo "$i" | sed -r s/-?debug//g)
|
||||
NEW=kernel-$(echo "$base" | cut -d - -f2-)
|
||||
mv "$i" "$NEW"
|
||||
done
|
||||
fi
|
31
generate_bls_conf.sh
Executable file
31
generate_bls_conf.sh
Executable file
@ -0,0 +1,31 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
. /etc/os-release
|
||||
|
||||
kernelver=$1 && shift
|
||||
rootfs=$1 && shift
|
||||
variant=$1 && shift
|
||||
|
||||
output="${rootfs}/lib/modules/${kernelver}/bls.conf"
|
||||
date=$(date -u +%Y%m%d%H%M%S)
|
||||
|
||||
if [ "${variant:-5}" = "debug" ]; then
|
||||
debugname=" with debugging"
|
||||
debugid="-debug"
|
||||
else
|
||||
debugname=""
|
||||
debugid=""
|
||||
fi
|
||||
|
||||
cat >${output} <<EOF
|
||||
title ${NAME} (${kernelver}) ${VERSION}${debugname}
|
||||
version ${kernelver}${debugid}
|
||||
linux ${bootprefix}/vmlinuz-${kernelver}
|
||||
initrd ${bootprefix}/initramfs-${kernelver}.img
|
||||
options \$kernelopts
|
||||
id ${ID}-${date}-${kernelver}${debugid}
|
||||
grub_users \$grub_users
|
||||
grub_arg --unrestricted
|
||||
grub_class kernel${variant}
|
||||
EOF
|
8037
kernel-aarch64-debug-fedora.config
Normal file
8037
kernel-aarch64-debug-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
6330
kernel-aarch64-debug-rhel.config
Normal file
6330
kernel-aarch64-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
8015
kernel-aarch64-fedora.config
Normal file
8015
kernel-aarch64-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
6309
kernel-aarch64-rhel.config
Normal file
6309
kernel-aarch64-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
8334
kernel-armv7hl-debug-fedora.config
Normal file
8334
kernel-armv7hl-debug-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
8313
kernel-armv7hl-fedora.config
Normal file
8313
kernel-armv7hl-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
8059
kernel-armv7hl-lpae-debug-fedora.config
Normal file
8059
kernel-armv7hl-lpae-debug-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
8038
kernel-armv7hl-lpae-fedora.config
Normal file
8038
kernel-armv7hl-lpae-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
7360
kernel-i686-debug-fedora.config
Normal file
7360
kernel-i686-debug-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
7338
kernel-i686-fedora.config
Normal file
7338
kernel-i686-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
2
kernel-local
Normal file
2
kernel-local
Normal file
@ -0,0 +1,2 @@
|
||||
# This file is intentionally left empty in the stock kernel. Its a nicety
|
||||
# added for those wanting to do custom rebuilds with altered config opts.
|
6835
kernel-ppc64le-debug-fedora.config
Normal file
6835
kernel-ppc64le-debug-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
6179
kernel-ppc64le-debug-rhel.config
Normal file
6179
kernel-ppc64le-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
6812
kernel-ppc64le-fedora.config
Normal file
6812
kernel-ppc64le-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
6161
kernel-ppc64le-rhel.config
Normal file
6161
kernel-ppc64le-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
6776
kernel-s390x-debug-fedora.config
Normal file
6776
kernel-s390x-debug-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
6130
kernel-s390x-debug-rhel.config
Normal file
6130
kernel-s390x-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
6753
kernel-s390x-fedora.config
Normal file
6753
kernel-s390x-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
6112
kernel-s390x-rhel.config
Normal file
6112
kernel-s390x-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
6148
kernel-s390x-zfcpdump-rhel.config
Normal file
6148
kernel-s390x-zfcpdump-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
7412
kernel-x86_64-debug-fedora.config
Normal file
7412
kernel-x86_64-debug-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
6463
kernel-x86_64-debug-rhel.config
Normal file
6463
kernel-x86_64-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
7390
kernel-x86_64-fedora.config
Normal file
7390
kernel-x86_64-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
6443
kernel-x86_64-rhel.config
Normal file
6443
kernel-x86_64-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
4672
kernel.spec
Normal file
4672
kernel.spec
Normal file
File diff suppressed because it is too large
Load Diff
0
linux-kernel-test.patch
Normal file
0
linux-kernel-test.patch
Normal file
72
merge.pl
Executable file
72
merge.pl
Executable file
@ -0,0 +1,72 @@
|
||||
#! /usr/bin/perl
|
||||
|
||||
my @args=@ARGV;
|
||||
my %configvalues;
|
||||
my @configoptions;
|
||||
my $configcounter = 0;
|
||||
|
||||
# optionally print out the architecture as the first line of our output
|
||||
my $arch = $args[2];
|
||||
if (defined $arch) {
|
||||
print "# $arch\n";
|
||||
}
|
||||
|
||||
# first, read the override file
|
||||
|
||||
open (FILE,"$args[0]") || die "Could not open $args[0]";
|
||||
while (<FILE>) {
|
||||
my $str = $_;
|
||||
my $configname;
|
||||
|
||||
if (/\# ([\w]+) is not set/) {
|
||||
$configname = $1;
|
||||
} elsif (/^\#/) {
|
||||
# fall through on comments like 'avoid CONFIG_FOO=y'
|
||||
;
|
||||
} elsif (/([\w]+)=/) {
|
||||
$configname = $1;
|
||||
}
|
||||
|
||||
if (defined($configname) && !exists($configvalues{$configname})) {
|
||||
$configvalues{$configname} = $str;
|
||||
$configoptions[$configcounter] = $configname;
|
||||
$configcounter ++;
|
||||
}
|
||||
};
|
||||
|
||||
# now, read and output the entire configfile, except for the overridden
|
||||
# parts... for those the new value is printed.
|
||||
|
||||
open (FILE2,"$args[1]") || die "Could not open $args[1]";
|
||||
while (<FILE2>) {
|
||||
my $configname;
|
||||
|
||||
if (/\# ([\w]+) is not set/) {
|
||||
$configname = $1;
|
||||
} elsif (/^\#/) {
|
||||
# fall through on comments like 'avoid CONFIG_FOO=y'
|
||||
;
|
||||
} elsif (/([\w]+)=/) {
|
||||
$configname = $1;
|
||||
}
|
||||
|
||||
if (defined($configname) && exists($configvalues{$configname})) {
|
||||
print "$configvalues{$configname}";
|
||||
delete($configvalues{$configname});
|
||||
} else {
|
||||
print "$_";
|
||||
}
|
||||
}
|
||||
|
||||
# now print the new values from the overridden configfile
|
||||
my $counter = 0;
|
||||
|
||||
while ($counter < $configcounter) {
|
||||
my $configname = $configoptions[$counter];
|
||||
if (exists($configvalues{$configname})) {
|
||||
print "$configvalues{$configname}";
|
||||
}
|
||||
$counter++;
|
||||
}
|
||||
|
||||
1;
|
160
mod-blacklist.sh
Executable file
160
mod-blacklist.sh
Executable file
@ -0,0 +1,160 @@
|
||||
#! /bin/bash
|
||||
|
||||
RpmDir=$1
|
||||
ModDir=$2
|
||||
Dir="$1/$2"
|
||||
# Note the list filename must have the format mod-[PACKAGE].list, for example,
|
||||
# mod-internal.list or mod-extra.list. The PACKAGE is used to create a
|
||||
# override directory for the modules.
|
||||
List=$3
|
||||
Dest="$4"
|
||||
|
||||
blacklist()
|
||||
{
|
||||
cat > "$RpmDir/etc/modprobe.d/$1-blacklist.conf" <<-__EOF__
|
||||
# This kernel module can be automatically loaded by non-root users. To
|
||||
# enhance system security, the module is blacklisted by default to ensure
|
||||
# system administrators make the module available for use as needed.
|
||||
# See https://access.redhat.com/articles/3760101 for more details.
|
||||
#
|
||||
# Remove the blacklist by adding a comment # at the start of the line.
|
||||
blacklist $1
|
||||
__EOF__
|
||||
}
|
||||
|
||||
check_blacklist()
|
||||
{
|
||||
mod=$(find $RpmDir/$ModDir -name "$1")
|
||||
[ ! "$mod" ] && return 0
|
||||
if modinfo $mod | grep -q '^alias:\s\+net-'; then
|
||||
mod="${1##*/}"
|
||||
mod="${mod%.ko*}"
|
||||
echo "$mod has an alias that allows auto-loading. Blacklisting."
|
||||
blacklist "$mod"
|
||||
fi
|
||||
}
|
||||
|
||||
find_depends()
|
||||
{
|
||||
dep=$1
|
||||
depends=`modinfo $dep | sed -n -e "/^depends/ s/^depends:[ \t]*//p"`
|
||||
[ -z "$depends" ] && exit
|
||||
for mod in ${depends//,/ }
|
||||
do
|
||||
match=$(grep "^$mod.ko" "$ListName")
|
||||
[ -z "$match" ] && continue
|
||||
# check if the module we are looking at is in mod-* too.
|
||||
# if so we do not need to mark the dep as required.
|
||||
mod2=${dep##*/} # same as `basename $dep`, but faster
|
||||
match2=$(grep "^$mod2" "$ListName")
|
||||
if [ -n "$match2" ]
|
||||
then
|
||||
#echo $mod2 >> notreq.list
|
||||
continue
|
||||
fi
|
||||
echo $mod.ko >> req.list
|
||||
done
|
||||
}
|
||||
|
||||
foreachp()
|
||||
{
|
||||
P=$(nproc)
|
||||
bgcount=0
|
||||
while read mod; do
|
||||
$1 "$mod" &
|
||||
|
||||
bgcount=$((bgcount + 1))
|
||||
if [ $bgcount -eq $P ]; then
|
||||
wait -n
|
||||
bgcount=$((bgcount - 1))
|
||||
fi
|
||||
done
|
||||
|
||||
wait
|
||||
}
|
||||
|
||||
# Destination was specified on the command line
|
||||
test -n "$4" && echo "$0: Override Destination $Dest has been specified."
|
||||
|
||||
pushd $Dir
|
||||
|
||||
OverrideDir=$(basename $List)
|
||||
OverrideDir=${OverrideDir%.*}
|
||||
OverrideDir=${OverrideDir#*-}
|
||||
mkdir -p $OverrideDir
|
||||
|
||||
rm -rf modnames
|
||||
find . -name "*.ko" -type f > modnames
|
||||
# Look through all of the modules, and throw any that have a dependency in
|
||||
# our list into the list as well.
|
||||
rm -rf dep.list dep2.list
|
||||
rm -rf req.list req2.list
|
||||
touch dep.list req.list
|
||||
cp "$List" .
|
||||
|
||||
# This variable needs to be exported because it is used in sub-script
|
||||
# executed by xargs
|
||||
export ListName=$(basename "$List")
|
||||
|
||||
foreachp find_depends < modnames
|
||||
|
||||
sort -u req.list > req2.list
|
||||
sort -u "$ListName" > modules2.list
|
||||
join -v 1 modules2.list req2.list > modules3.list
|
||||
|
||||
for mod in $(cat modules3.list)
|
||||
do
|
||||
# get the path for the module
|
||||
modpath=`grep /$mod modnames`
|
||||
[ -z "$modpath" ] && continue
|
||||
echo $modpath >> dep.list
|
||||
done
|
||||
|
||||
sort -u dep.list > dep2.list
|
||||
|
||||
if [ -n "$Dest" ]; then
|
||||
# now move the modules into the $Dest directory
|
||||
for mod in `cat dep2.list`
|
||||
do
|
||||
newpath=`dirname $mod | sed -e "s/kernel\\//$Dest\//"`
|
||||
mkdir -p $newpath
|
||||
mv $mod $newpath
|
||||
echo $mod | sed -e "s/kernel\\//$Dest\//" | sed -e "s|^.|${ModDir}|g" >> $RpmDir/$ListName
|
||||
done
|
||||
fi
|
||||
|
||||
popd
|
||||
|
||||
# If we're signing modules, we can't leave the .mod files for the .ko files
|
||||
# we've moved in .tmp_versions/. Remove them so the Kbuild 'modules_sign'
|
||||
# target doesn't try to sign a non-existent file. This is kinda ugly, but
|
||||
# so are the modules-* packages.
|
||||
|
||||
for mod in `cat ${Dir}/dep2.list`
|
||||
do
|
||||
modfile=`basename $mod | sed -e 's/.ko/.mod/'`
|
||||
rm .tmp_versions/$modfile
|
||||
done
|
||||
|
||||
if [ ! -n "$Dest" ]; then
|
||||
sed -e "s|^.|${ModDir}|g" ${Dir}/dep2.list > $RpmDir/$ListName
|
||||
echo "./$RpmDir/$ListName created."
|
||||
[ -d "$RpmDir/etc/modprobe.d/" ] || mkdir -p "$RpmDir/etc/modprobe.d/"
|
||||
foreachp check_blacklist < $List
|
||||
fi
|
||||
|
||||
# Many BIOS-es export a PNP-id which causes the floppy driver to autoload
|
||||
# even though most modern systems don't have a 3.5" floppy driver anymore
|
||||
# this replaces the old die_floppy_die.patch which removed the PNP-id from
|
||||
# the module
|
||||
if [ -f $RpmDir/$ModDir/extra/drivers/block/floppy.ko* ]; then
|
||||
blacklist "floppy"
|
||||
fi
|
||||
|
||||
# avoid an empty kernel-extra package
|
||||
echo "$ModDir/$OverrideDir" >> $RpmDir/$ListName
|
||||
|
||||
pushd $Dir
|
||||
rm modnames dep.list dep2.list req.list req2.list
|
||||
rm "$ListName" modules2.list modules3.list
|
||||
popd
|
196
mod-extra.list.fedora
Normal file
196
mod-extra.list.fedora
Normal file
@ -0,0 +1,196 @@
|
||||
6pack.ko
|
||||
a3d.ko
|
||||
act200l-sir.ko
|
||||
actisys-sir.ko
|
||||
adi.ko
|
||||
aer_inject.ko
|
||||
af_802154.ko
|
||||
affs.ko
|
||||
ali-ircc.ko
|
||||
analog.ko
|
||||
appletalk.ko
|
||||
atm.ko
|
||||
avma1_cs.ko
|
||||
avm_cs.ko
|
||||
avmfritz.ko
|
||||
ax25.ko
|
||||
b1.ko
|
||||
bas_gigaset.ko
|
||||
batman-adv.ko
|
||||
baycom_par.ko
|
||||
baycom_ser_fdx.ko
|
||||
baycom_ser_hdx.ko
|
||||
befs.ko
|
||||
bpqether.ko
|
||||
br2684.ko
|
||||
capi.ko
|
||||
c_can.ko
|
||||
c_can_platform.ko
|
||||
clip.ko
|
||||
cobra.ko
|
||||
coda.ko
|
||||
cuse.ko
|
||||
db9.ko
|
||||
dccp_diag.ko
|
||||
dccp_ipv4.ko
|
||||
dccp_ipv6.ko
|
||||
dccp.ko
|
||||
dccp_probe.ko
|
||||
diva_idi.ko
|
||||
divas.ko
|
||||
dlm.ko
|
||||
ds1wm.ko
|
||||
ds2482.ko
|
||||
ds2490.ko
|
||||
dss1_divert.ko
|
||||
elsa_cs.ko
|
||||
ems_pci.ko
|
||||
ems_usb.ko
|
||||
esd_usb2.ko
|
||||
esi-sir.ko
|
||||
floppy.ko
|
||||
gamecon.ko
|
||||
gf2k.ko
|
||||
gfs2.ko
|
||||
gigaset.ko
|
||||
girbil-sir.ko
|
||||
grip.ko
|
||||
grip_mp.ko
|
||||
guillemot.ko
|
||||
hdlcdrv.ko
|
||||
hfc4s8s_l1.ko
|
||||
hfcmulti.ko
|
||||
hfcpci.ko
|
||||
hisax.ko
|
||||
hwa-rc.ko
|
||||
hysdn.ko
|
||||
i2400m.ko
|
||||
i2400m-sdio.ko
|
||||
i2400m-usb.ko
|
||||
ieee802154.ko
|
||||
iforce.ko
|
||||
interact.ko
|
||||
ipddp.ko
|
||||
ipx.ko
|
||||
isdn.ko
|
||||
joydump.ko
|
||||
kingsun-sir.ko
|
||||
ks959-sir.ko
|
||||
ksdazzle-sir.ko
|
||||
kvaser_pci.ko
|
||||
l2tp_core.ko
|
||||
l2tp_debugfs.ko
|
||||
l2tp_eth.ko
|
||||
l2tp_ip.ko
|
||||
l2tp_netlink.ko
|
||||
l2tp_ppp.ko
|
||||
lec.ko
|
||||
ma600-sir.ko
|
||||
magellan.ko
|
||||
mcp2120-sir.ko
|
||||
mISDN_core.ko
|
||||
mISDN_dsp.ko
|
||||
mkiss.ko
|
||||
mptbase.ko
|
||||
mptctl.ko
|
||||
mptfc.ko
|
||||
nci.ko
|
||||
ncpfs.ko
|
||||
netjet.ko
|
||||
netrom.ko
|
||||
nfc.ko
|
||||
nilfs2.ko
|
||||
ocfs2_dlmfs.ko
|
||||
ocfs2_dlm.ko
|
||||
ocfs2.ko
|
||||
ocfs2_nodemanager.ko
|
||||
ocfs2_stackglue.ko
|
||||
ocfs2_stack_o2cb.ko
|
||||
ocfs2_stack_user.ko
|
||||
old_belkin-sir.ko
|
||||
orinoco_cs.ko
|
||||
orinoco.ko
|
||||
orinoco_nortel.ko
|
||||
orinoco_pci.ko
|
||||
orinoco_plx.ko
|
||||
orinoco_usb.ko
|
||||
pcspkr.ko
|
||||
plx_pci.ko
|
||||
pn_pep.ko
|
||||
pppoatm.ko
|
||||
rds.ko
|
||||
rds_rdma.ko
|
||||
rds_tcp.ko
|
||||
rose.ko
|
||||
sch_atm.ko
|
||||
sch_cbq.ko
|
||||
sch_choke.ko
|
||||
sch_drr.ko
|
||||
sch_dsmark.ko
|
||||
sch_etf.ko
|
||||
sch_gred.ko
|
||||
sch_mqprio.ko
|
||||
sch_multiq.ko
|
||||
sch_netem.ko
|
||||
sch_qfq.ko
|
||||
sch_red.ko
|
||||
sch_sfb.ko
|
||||
sch_teql.ko
|
||||
sctp.ko
|
||||
sctp_probe.ko
|
||||
sidewinder.ko
|
||||
sja1000.ko
|
||||
sja1000_platform.ko
|
||||
slcan.ko
|
||||
slip.ko
|
||||
softing_cs.ko
|
||||
softing.ko
|
||||
spaceball.ko
|
||||
spaceorb.ko
|
||||
stinger.ko
|
||||
sysv.ko
|
||||
tcp_bic.ko
|
||||
tcp_highspeed.ko
|
||||
tcp_htcp.ko
|
||||
tcp_hybla.ko
|
||||
tcp_illinois.ko
|
||||
tcp_lp.ko
|
||||
tcp_scalable.ko
|
||||
tcp_vegas.ko
|
||||
tcp_veno.ko
|
||||
tcp_westwood.ko
|
||||
tcp_yeah.ko
|
||||
tekram-sir.ko
|
||||
tmdc.ko
|
||||
toim3232-sir.ko
|
||||
trancevibrator.ko
|
||||
turbografx.ko
|
||||
twidjoy.ko
|
||||
ubifs.ko
|
||||
ufs.ko
|
||||
umc.ko
|
||||
usbip-core.ko
|
||||
usbip-host.ko
|
||||
uwb.ko
|
||||
vcan.ko
|
||||
vhci-hcd.ko
|
||||
w1_bq27000.ko
|
||||
w1_ds2408.ko
|
||||
w1_ds2423.ko
|
||||
w1_ds2431.ko
|
||||
w1_ds2433.ko
|
||||
w1_ds2760.ko
|
||||
w1_ds2780.ko
|
||||
w1_ds2781.ko
|
||||
w1_ds28e04.ko
|
||||
w1_smem.ko
|
||||
w1_therm.ko
|
||||
w6692.ko
|
||||
walkera0701.ko
|
||||
wanrouter.ko
|
||||
warrior.ko
|
||||
whci.ko
|
||||
wire.ko
|
||||
xpad.ko
|
||||
yam.ko
|
||||
zhenhua.ko
|
191
mod-extra.list.rhel
Normal file
191
mod-extra.list.rhel
Normal file
@ -0,0 +1,191 @@
|
||||
6pack.ko
|
||||
a3d.ko
|
||||
act200l-sir.ko
|
||||
actisys-sir.ko
|
||||
adi.ko
|
||||
aer_inject.ko
|
||||
af_802154.ko
|
||||
affs.ko
|
||||
ali-ircc.ko
|
||||
analog.ko
|
||||
appletalk.ko
|
||||
atm.ko
|
||||
avma1_cs.ko
|
||||
avm_cs.ko
|
||||
avmfritz.ko
|
||||
ax25.ko
|
||||
b1.ko
|
||||
bas_gigaset.ko
|
||||
batman-adv.ko
|
||||
baycom_par.ko
|
||||
baycom_ser_fdx.ko
|
||||
baycom_ser_hdx.ko
|
||||
befs.ko
|
||||
bpqether.ko
|
||||
br2684.ko
|
||||
capi.ko
|
||||
c_can.ko
|
||||
c_can_platform.ko
|
||||
clip.ko
|
||||
cobra.ko
|
||||
coda.ko
|
||||
cuse.ko
|
||||
db9.ko
|
||||
dccp_diag.ko
|
||||
dccp_ipv4.ko
|
||||
dccp_ipv6.ko
|
||||
dccp.ko
|
||||
dccp_probe.ko
|
||||
diva_idi.ko
|
||||
divas.ko
|
||||
ds1wm.ko
|
||||
ds2482.ko
|
||||
ds2490.ko
|
||||
dss1_divert.ko
|
||||
elsa_cs.ko
|
||||
ems_pci.ko
|
||||
ems_usb.ko
|
||||
esd_usb2.ko
|
||||
esi-sir.ko
|
||||
gamecon.ko
|
||||
gf2k.ko
|
||||
gigaset.ko
|
||||
girbil-sir.ko
|
||||
grip.ko
|
||||
grip_mp.ko
|
||||
guillemot.ko
|
||||
hdlcdrv.ko
|
||||
hfc4s8s_l1.ko
|
||||
hfcmulti.ko
|
||||
hfcpci.ko
|
||||
hisax.ko
|
||||
hwa-rc.ko
|
||||
hysdn.ko
|
||||
i2400m.ko
|
||||
i2400m-sdio.ko
|
||||
i2400m-usb.ko
|
||||
ieee802154.ko
|
||||
iforce.ko
|
||||
interact.ko
|
||||
ipddp.ko
|
||||
ipx.ko
|
||||
isdn.ko
|
||||
joydump.ko
|
||||
kingsun-sir.ko
|
||||
ks959-sir.ko
|
||||
ksdazzle-sir.ko
|
||||
kvaser_pci.ko
|
||||
l2tp_core.ko
|
||||
l2tp_debugfs.ko
|
||||
l2tp_eth.ko
|
||||
l2tp_ip.ko
|
||||
l2tp_netlink.ko
|
||||
l2tp_ppp.ko
|
||||
lec.ko
|
||||
ma600-sir.ko
|
||||
magellan.ko
|
||||
mcp2120-sir.ko
|
||||
mISDN_core.ko
|
||||
mISDN_dsp.ko
|
||||
mkiss.ko
|
||||
mptbase.ko
|
||||
mptctl.ko
|
||||
mptfc.ko
|
||||
nci.ko
|
||||
ncpfs.ko
|
||||
netjet.ko
|
||||
netrom.ko
|
||||
nfc.ko
|
||||
nilfs2.ko
|
||||
ocfs2_dlmfs.ko
|
||||
ocfs2_dlm.ko
|
||||
ocfs2.ko
|
||||
ocfs2_nodemanager.ko
|
||||
ocfs2_stackglue.ko
|
||||
ocfs2_stack_o2cb.ko
|
||||
ocfs2_stack_user.ko
|
||||
old_belkin-sir.ko
|
||||
orinoco_cs.ko
|
||||
orinoco.ko
|
||||
orinoco_nortel.ko
|
||||
orinoco_pci.ko
|
||||
orinoco_plx.ko
|
||||
orinoco_usb.ko
|
||||
plx_pci.ko
|
||||
pn_pep.ko
|
||||
pppoatm.ko
|
||||
rds.ko
|
||||
rds_rdma.ko
|
||||
rds_tcp.ko
|
||||
rose.ko
|
||||
sch_atm.ko
|
||||
sch_cbq.ko
|
||||
sch_choke.ko
|
||||
sch_drr.ko
|
||||
sch_dsmark.ko
|
||||
sch_gred.ko
|
||||
sch_mqprio.ko
|
||||
sch_multiq.ko
|
||||
sch_netem.ko
|
||||
sch_qfq.ko
|
||||
sch_red.ko
|
||||
sch_sfb.ko
|
||||
sch_teql.ko
|
||||
sctp.ko
|
||||
sctp_probe.ko
|
||||
sidewinder.ko
|
||||
sja1000.ko
|
||||
sja1000_platform.ko
|
||||
slcan.ko
|
||||
slip.ko
|
||||
softing_cs.ko
|
||||
softing.ko
|
||||
spaceball.ko
|
||||
spaceorb.ko
|
||||
stinger.ko
|
||||
sysv.ko
|
||||
tcp_bic.ko
|
||||
tcp_highspeed.ko
|
||||
tcp_htcp.ko
|
||||
tcp_hybla.ko
|
||||
tcp_illinois.ko
|
||||
tcp_lp.ko
|
||||
tcp_scalable.ko
|
||||
tcp_vegas.ko
|
||||
tcp_veno.ko
|
||||
tcp_westwood.ko
|
||||
tcp_yeah.ko
|
||||
tekram-sir.ko
|
||||
tmdc.ko
|
||||
toim3232-sir.ko
|
||||
trancevibrator.ko
|
||||
turbografx.ko
|
||||
twidjoy.ko
|
||||
ubifs.ko
|
||||
ufs.ko
|
||||
umc.ko
|
||||
usbip-core.ko
|
||||
usbip-host.ko
|
||||
uwb.ko
|
||||
vcan.ko
|
||||
vhci-hcd.ko
|
||||
w1_bq27000.ko
|
||||
w1_ds2408.ko
|
||||
w1_ds2423.ko
|
||||
w1_ds2431.ko
|
||||
w1_ds2433.ko
|
||||
w1_ds2760.ko
|
||||
w1_ds2780.ko
|
||||
w1_ds2781.ko
|
||||
w1_ds28e04.ko
|
||||
w1_smem.ko
|
||||
w1_therm.ko
|
||||
w6692.ko
|
||||
walkera0701.ko
|
||||
wanrouter.ko
|
||||
warrior.ko
|
||||
whci.ko
|
||||
wire.ko
|
||||
xpad.ko
|
||||
yam.ko
|
||||
zhenhua.ko
|
4
mod-internal.list
Normal file
4
mod-internal.list
Normal file
@ -0,0 +1,4 @@
|
||||
mac80211_hwsim
|
||||
netdevsim
|
||||
pktgen
|
||||
rocker
|
37
mod-sign.sh
Executable file
37
mod-sign.sh
Executable file
@ -0,0 +1,37 @@
|
||||
#! /bin/bash
|
||||
|
||||
# The modules_sign target checks for corresponding .o files for every .ko that
|
||||
# is signed. This doesn't work for package builds which re-use the same build
|
||||
# directory for every flavour, and the .config may change between flavours.
|
||||
# So instead of using this script to just sign lib/modules/$KernelVer/extra,
|
||||
# sign all .ko in the buildroot.
|
||||
|
||||
# This essentially duplicates the 'modules_sign' Kbuild target and runs the
|
||||
# same commands for those modules.
|
||||
|
||||
MODSECKEY=$1
|
||||
MODPUBKEY=$2
|
||||
moddir=$3
|
||||
|
||||
modules=$(find "$moddir" -type f -name '*.ko')
|
||||
|
||||
NPROC=$(nproc)
|
||||
[ -z "$NPROC" ] && NPROC=1
|
||||
|
||||
# NB: this loop runs 2000+ iterations. Try to be fast.
|
||||
echo "$modules" | xargs -r -n16 -P $NPROC sh -c "
|
||||
for mod; do
|
||||
./scripts/sign-file sha256 $MODSECKEY $MODPUBKEY \$mod
|
||||
rm -f \$mod.sig \$mod.dig
|
||||
done
|
||||
" DUMMYARG0 # xargs appends ARG1 ARG2..., which go into $mod in for loop.
|
||||
|
||||
RANDOMMOD=$(echo "$modules" | sort -R | head -n 1)
|
||||
if [ "~Module signature appended~" != "$(tail -c 28 "$RANDOMMOD")" ]; then
|
||||
echo "*****************************"
|
||||
echo "*** Modules are unsigned! ***"
|
||||
echo "*****************************"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
exit 0
|
26
parallel_xz.sh
Executable file
26
parallel_xz.sh
Executable file
@ -0,0 +1,26 @@
|
||||
#!/bin/sh
|
||||
# Reads filenames on stdin, xz-compresses each in place.
|
||||
# Not optimal for "compress relatively few, large files" scenario!
|
||||
|
||||
# How many xz's to run in parallel:
|
||||
procgroup=""
|
||||
while test "$#" != 0; do
|
||||
# Get it from -jNUM
|
||||
N="${1#-j}"
|
||||
if test "$N" = "$1"; then
|
||||
# Not -j<something> - warn and ignore
|
||||
echo "parallel_xz: warning: unrecognized argument: '$1'"
|
||||
else
|
||||
procgroup="$N"
|
||||
fi
|
||||
shift
|
||||
done
|
||||
|
||||
# If told to use only one cpu:
|
||||
test "$procgroup" || exec xargs -r xz
|
||||
test "$procgroup" = 1 && exec xargs -r xz
|
||||
|
||||
# xz has some startup cost. If files are really small,
|
||||
# this cost might be significant. To combat this,
|
||||
# process several files (in sequence) by each xz process via -n 16:
|
||||
exec xargs -r -n 16 -P $procgroup xz
|
3121
patch-5.10.0-redhat.patch
Normal file
3121
patch-5.10.0-redhat.patch
Normal file
File diff suppressed because it is too large
Load Diff
346
process_configs.sh
Executable file
346
process_configs.sh
Executable file
@ -0,0 +1,346 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# This script takes the merged config files and processes them through oldconfig
|
||||
# and listnewconfig
|
||||
#
|
||||
# Globally disable suggestion of appending '|| exit' or '|| return' to cd/pushd/popd commands
|
||||
# shellcheck disable=SC2164
|
||||
|
||||
usage()
|
||||
{
|
||||
# alphabetical order please
|
||||
echo "process_configs.sh [ options ] package_name kernel_version"
|
||||
echo " -a: report all errors, equivalent to [-c -n -w -i]"
|
||||
echo " -c: error on mismatched config options"
|
||||
echo " -i: continue on error"
|
||||
echo " -n: error on unset config options"
|
||||
echo " -t: test run, do not overwrite original config"
|
||||
echo " -w: error on misconfigured config options"
|
||||
echo " -z: commit new configs to pending directory"
|
||||
echo ""
|
||||
echo " A special CONFIG file tag, process_configs_known_broken can be added as a"
|
||||
echo " comment to any CONFIG file. This tag indicates that there is no way to "
|
||||
echo " fix a CONFIG's entry. This tag should only be used in extreme cases"
|
||||
echo " and is not to be used as a workaround to solve CONFIG problems."
|
||||
exit 1
|
||||
}
|
||||
|
||||
die()
|
||||
{
|
||||
echo "$1"
|
||||
exit 1
|
||||
}
|
||||
|
||||
# stupid function to find top of tree to do kernel make configs
|
||||
switch_to_toplevel()
|
||||
{
|
||||
path="$(pwd)"
|
||||
while test -n "$path"
|
||||
do
|
||||
test -e "$path"/MAINTAINERS && \
|
||||
test -d "$path"/drivers && \
|
||||
break
|
||||
|
||||
path=$(dirname "$path")
|
||||
done
|
||||
|
||||
test -n "$path" || die "Can't find toplevel"
|
||||
echo "$path"
|
||||
}
|
||||
|
||||
checkoptions()
|
||||
{
|
||||
/usr/bin/awk '
|
||||
|
||||
/is not set/ {
|
||||
split ($0, a, "#");
|
||||
split(a[2], b);
|
||||
if (NR==FNR) {
|
||||
configs[b[1]]="is not set";
|
||||
} else {
|
||||
if (configs[b[1]] != "" && configs[b[1]] != "is not set")
|
||||
print "Found # "b[1] " is not set, after generation, had " b[1] " " configs[b[1]] " in Source tree";
|
||||
}
|
||||
}
|
||||
|
||||
/=/ {
|
||||
split ($0, a, "=");
|
||||
if (NR==FNR) {
|
||||
configs[a[1]]=a[2];
|
||||
} else {
|
||||
if (configs[a[1]] != "" && configs[a[1]] != a[2])
|
||||
print "Found "a[1]"="a[2]" after generation, had " a[1]"="configs[a[1]]" in Source tree";
|
||||
}
|
||||
}
|
||||
' "$1" "$2" > .mismatches
|
||||
|
||||
checkoptions_error=false
|
||||
if test -s .mismatches
|
||||
then
|
||||
while read -r LINE
|
||||
do
|
||||
if find ./ -name "$(echo "$LINE" | awk -F "=" ' { print $1 } ' | awk ' { print $2 }')" | xargs -0 grep ^ | grep -q "process_configs_known_broken"; then
|
||||
# This is a known broken config.
|
||||
# See script help warning.
|
||||
checkoptions_error=false
|
||||
else
|
||||
checkoptions_error=true
|
||||
break
|
||||
fi
|
||||
done < .mismatches
|
||||
|
||||
! $checkoptions_error && return
|
||||
|
||||
echo "Error: Mismatches found in configuration files"
|
||||
cat .mismatches
|
||||
RETURNCODE=1
|
||||
[ "$CONTINUEONERROR" ] || exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
parsenewconfigs()
|
||||
{
|
||||
tmpdir=$(mktemp -d)
|
||||
|
||||
# This awk script reads the output of make listnewconfig
|
||||
# and puts it into CONFIG_FOO files. Using the output of
|
||||
# listnewconfig is much easier to ensure we get the default
|
||||
# output.
|
||||
/usr/bin/awk -v BASE="$tmpdir" '
|
||||
/is not set/ {
|
||||
split ($0, a, "#");
|
||||
split(a[2], b);
|
||||
OUT_FILE=BASE"/"b[1];
|
||||
print $0 >> OUT_FILE;
|
||||
}
|
||||
|
||||
/=/ {
|
||||
split ($0, a, "=");
|
||||
OUT_FILE=BASE"/"a[1];
|
||||
if (a[2] == "n")
|
||||
print "# " a[1] " is not set" >> OUT_FILE;
|
||||
else
|
||||
print $0 >> OUT_FILE;
|
||||
}
|
||||
|
||||
' .newoptions
|
||||
|
||||
# This awk script parses the output of helpnewconfig.
|
||||
# Each option is separated between ----- markers
|
||||
# The goal is to put all the help text as a comment in
|
||||
# each CONFIG_FOO file. Because of how awk works
|
||||
# there's a lot of moving files around and catting to
|
||||
# get what we need.
|
||||
/usr/bin/awk -v BASE="$tmpdir" '
|
||||
BEGIN { inpatch=0;
|
||||
outfile="none";
|
||||
symbol="none"; }
|
||||
/^CONFIG_.*:$/ {
|
||||
split($0, a, ":");
|
||||
symbol=a[1];
|
||||
outfile=BASE "/fake_"symbol
|
||||
}
|
||||
/-----/ {
|
||||
if (inpatch == 0) {
|
||||
inpatch = 1;
|
||||
}
|
||||
else {
|
||||
if (symbol != "none") {
|
||||
system("cat " outfile " " BASE "/" symbol " > " BASE "/tmpf");
|
||||
system("mv " BASE "/tmpf " BASE "/" symbol);
|
||||
symbol="none"
|
||||
}
|
||||
outfile="none"
|
||||
inpatch = 0;
|
||||
}
|
||||
}
|
||||
!/-----/ {
|
||||
if (inpatch == 1 && outfile != "none") {
|
||||
print "# "$0 >> outfile;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
' .helpnewconfig
|
||||
|
||||
pushd "$tmpdir" &> /dev/null
|
||||
rm fake_*
|
||||
popd &> /dev/null
|
||||
for f in "$tmpdir"/*; do
|
||||
[[ -e "$f" ]] || break
|
||||
cp "$f" "$SCRIPT_DIR/pending$FLAVOR/generic/"
|
||||
done
|
||||
|
||||
rm -rf "$tmpdir"
|
||||
}
|
||||
|
||||
function commit_new_configs()
|
||||
{
|
||||
# assume we are in $source_tree/configs, need to get to top level
|
||||
pushd "$(switch_to_toplevel)" &>/dev/null
|
||||
|
||||
for cfg in "$SCRIPT_DIR/${PACKAGE_NAME}${KVERREL}${SUBARCH}"*.config
|
||||
do
|
||||
arch=$(head -1 "$cfg" | cut -b 3-)
|
||||
cfgtmp="${cfg}.tmp"
|
||||
cfgorig="${cfg}.orig"
|
||||
cat "$cfg" > "$cfgorig"
|
||||
|
||||
if [ "$arch" = "EMPTY" ]
|
||||
then
|
||||
# This arch is intentionally left blank
|
||||
continue
|
||||
fi
|
||||
echo -n "Checking for new configs in $cfg ... "
|
||||
|
||||
make ARCH="$arch" KCONFIG_CONFIG="$cfgorig" listnewconfig >& .listnewconfig
|
||||
grep -E 'CONFIG_' .listnewconfig > .newoptions
|
||||
if test -s .newoptions
|
||||
then
|
||||
make ARCH="$arch" KCONFIG_CONFIG="$cfgorig" helpnewconfig >& .helpnewconfig
|
||||
parsenewconfigs
|
||||
fi
|
||||
rm .newoptions
|
||||
echo "done"
|
||||
done
|
||||
|
||||
git add "$SCRIPT_DIR/pending$FLAVOR"
|
||||
git commit -m "[redhat] AUTOMATIC: New configs"
|
||||
}
|
||||
|
||||
function process_configs()
|
||||
{
|
||||
# assume we are in $source_tree/configs, need to get to top level
|
||||
pushd "$(switch_to_toplevel)" &>/dev/null
|
||||
|
||||
for cfg in "$SCRIPT_DIR/${PACKAGE_NAME}${KVERREL}${SUBARCH}"*.config
|
||||
do
|
||||
arch=$(head -1 "$cfg" | cut -b 3-)
|
||||
cfgtmp="${cfg}.tmp"
|
||||
cfgorig="${cfg}.orig"
|
||||
cat "$cfg" > "$cfgorig"
|
||||
|
||||
if [ "$arch" = "EMPTY" ]
|
||||
then
|
||||
# This arch is intentionally left blank
|
||||
continue
|
||||
fi
|
||||
echo -n "Processing $cfg ... "
|
||||
|
||||
make ARCH="$arch" KCONFIG_CONFIG="$cfgorig" listnewconfig >& .listnewconfig
|
||||
grep -E 'CONFIG_' .listnewconfig > .newoptions
|
||||
if test -n "$NEWOPTIONS" && test -s .newoptions
|
||||
then
|
||||
echo "Found unset config items, please set them to an appropriate value"
|
||||
cat .newoptions
|
||||
rm .newoptions
|
||||
RETURNCODE=1
|
||||
[ "$CONTINUEONERROR" ] || exit 1
|
||||
fi
|
||||
rm .newoptions
|
||||
|
||||
grep -E 'config.*warning' .listnewconfig > .warnings
|
||||
if test -n "$CHECKWARNINGS" && test -s .warnings
|
||||
then
|
||||
echo "Found misconfigured config items, please set them to an appropriate value"
|
||||
cat .warnings
|
||||
rm .warnings
|
||||
RETURNCODE=1
|
||||
[ "$CONTINUEONERROR" ] || exit 1
|
||||
fi
|
||||
rm .warnings
|
||||
|
||||
rm .listnewconfig
|
||||
|
||||
make ARCH="$arch" KCONFIG_CONFIG="$cfgorig" olddefconfig > /dev/null || exit 1
|
||||
echo "# $arch" > "$cfgtmp"
|
||||
cat "$cfgorig" >> "$cfgtmp"
|
||||
if test -n "$CHECKOPTIONS"
|
||||
then
|
||||
checkoptions "$cfg" "$cfgtmp"
|
||||
fi
|
||||
# if test run, don't overwrite original
|
||||
if test -n "$TESTRUN"
|
||||
then
|
||||
rm -f "$cfgtmp"
|
||||
else
|
||||
mv "$cfgtmp" "$cfg"
|
||||
fi
|
||||
rm -f "$cfgorig"
|
||||
echo "done"
|
||||
done
|
||||
rm "$SCRIPT_DIR"/*.config*.old
|
||||
popd > /dev/null
|
||||
|
||||
echo "Processed config files are in $SCRIPT_DIR"
|
||||
}
|
||||
|
||||
CHECKOPTIONS=""
|
||||
CONTINUEONERROR=""
|
||||
NEWOPTIONS=""
|
||||
TESTRUN=""
|
||||
CHECKWARNINGS=""
|
||||
|
||||
RETURNCODE=0
|
||||
|
||||
while [[ $# -gt 0 ]]
|
||||
do
|
||||
key="$1"
|
||||
case $key in
|
||||
-a)
|
||||
CHECKOPTIONS="x"
|
||||
CONTINUEONERROR="x"
|
||||
NEWOPTIONS="x"
|
||||
CHECKWARNINGS="x"
|
||||
;;
|
||||
-c)
|
||||
CHECKOPTIONS="x"
|
||||
;;
|
||||
-h)
|
||||
usage
|
||||
;;
|
||||
-i)
|
||||
CONTINUEONERROR="x"
|
||||
;;
|
||||
-n)
|
||||
NEWOPTIONS="x"
|
||||
;;
|
||||
-t)
|
||||
TESTRUN="x"
|
||||
;;
|
||||
-w)
|
||||
CHECKWARNINGS="x"
|
||||
;;
|
||||
-z)
|
||||
COMMITNEWCONFIGS="x"
|
||||
;;
|
||||
*)
|
||||
break;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
PACKAGE_NAME="${1:-kernel}" # defines the package name used
|
||||
KVERREL="$(test -n "$2" && echo "-$2" || echo "")"
|
||||
SUBARCH="$(test -n "$3" && echo "-$3" || echo "")"
|
||||
FLAVOR="$(test -n "$4" && echo "-$4" || echo "-common")"
|
||||
SCRIPT=$(readlink -f "$0")
|
||||
SCRIPT_DIR=$(dirname "$SCRIPT")
|
||||
|
||||
# Most RHEL options are options we want in Fedora so RHEL pending settings head
|
||||
# to common/
|
||||
if [ "$FLAVOR" = "-rhel" ]
|
||||
then
|
||||
FLAVOR="-common"
|
||||
fi
|
||||
|
||||
# to handle this script being a symlink
|
||||
cd "$SCRIPT_DIR"
|
||||
|
||||
if test -n "$COMMITNEWCONFIGS"; then
|
||||
commit_new_configs
|
||||
else
|
||||
process_configs
|
||||
fi
|
||||
|
||||
exit $RETURNCODE
|
BIN
redhatsecureboot003.cer
Normal file
BIN
redhatsecureboot003.cer
Normal file
Binary file not shown.
BIN
redhatsecureboot401.cer
Normal file
BIN
redhatsecureboot401.cer
Normal file
Binary file not shown.
BIN
redhatsecurebootca2.cer
Normal file
BIN
redhatsecurebootca2.cer
Normal file
Binary file not shown.
BIN
redhatsecurebootca4.cer
Normal file
BIN
redhatsecurebootca4.cer
Normal file
Binary file not shown.
3
sources
Normal file
3
sources
Normal file
@ -0,0 +1,3 @@
|
||||
SHA512 (linux-20201014gitb5fc7a89e58b.tar.xz) = 20afa74d91a0b5d74ff4db67e2fd40c94a40753810d2bfdc280db50a2eac2eff88859e8fd8ac3fc0614d79eedfd57ee9e66e6986dcf02dd2ad2ffff7420cf0d6
|
||||
SHA512 (kernel-abi-whitelists-5.10.0-0.rc0.20201014gitb5fc7a89e58b.41.tar.bz2) = eec67d1571512a94e374d1478e02a2cb14a992298177d127d594efacdb472e292db660af6992771f3940b5342e8310da3f69e70ddae805fac49a26046651bfbb
|
||||
SHA512 (kernel-kabi-dw-5.10.0-0.rc0.20201014gitb5fc7a89e58b.41.tar.bz2) = f3b87f663b5e62c824528a0c046af1c34ff575f4733bf70e1f7b9ae33f2e3e3d4eb9c2ecfee778e5a246f0287262d9ddf845b91d21095727f9df3857a62961a3
|
12
update_scripts.sh
Executable file
12
update_scripts.sh
Executable file
@ -0,0 +1,12 @@
|
||||
#!/bin/sh
|
||||
|
||||
if [ -z $1 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
TARGET=$1
|
||||
|
||||
for i in $RPM_SOURCE_DIR/*.$TARGET; do
|
||||
NEW=${i%.$TARGET}
|
||||
cp $i $NEW
|
||||
done
|
16
x509.genkey.fedora
Normal file
16
x509.genkey.fedora
Normal file
@ -0,0 +1,16 @@
|
||||
[ req ]
|
||||
default_bits = 4096
|
||||
distinguished_name = req_distinguished_name
|
||||
prompt = no
|
||||
x509_extensions = myexts
|
||||
|
||||
[ req_distinguished_name ]
|
||||
O = Fedora
|
||||
CN = Fedora kernel signing key
|
||||
emailAddress = kernel-team@fedoraproject.org
|
||||
|
||||
[ myexts ]
|
||||
basicConstraints=critical,CA:FALSE
|
||||
keyUsage=digitalSignature
|
||||
subjectKeyIdentifier=hash
|
||||
authorityKeyIdentifier=keyid
|
16
x509.genkey.rhel
Normal file
16
x509.genkey.rhel
Normal file
@ -0,0 +1,16 @@
|
||||
[ req ]
|
||||
default_bits = 3072
|
||||
distinguished_name = req_distinguished_name
|
||||
prompt = no
|
||||
x509_extensions = myexts
|
||||
|
||||
[ req_distinguished_name ]
|
||||
O = Red Hat
|
||||
CN = Red Hat Enterprise Linux kernel signing key
|
||||
emailAddress = secalert@redhat.com
|
||||
|
||||
[ myexts ]
|
||||
basicConstraints=critical,CA:FALSE
|
||||
keyUsage=digitalSignature
|
||||
subjectKeyIdentifier=hash
|
||||
authorityKeyIdentifier=keyid
|
Loading…
Reference in New Issue
Block a user