forked from rpms/kernel
Initial 5.15.0
This commit is contained in:
commit
ceb3172ee1
21
.gitignore
vendored
Normal file
21
.gitignore
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
BUILD/
|
||||
BUILDROOT/
|
||||
RPMS/
|
||||
SRPMS/
|
||||
SOURCES/*.xz
|
||||
SOURCES/*.gz
|
||||
SOURCES/*.bz2
|
||||
SOURCES/*.rpm
|
||||
SOURCES/*.orig
|
||||
SOURCES/*.sign
|
||||
|
||||
#files generated by %prep
|
||||
SOURCES/filter-aarch64.sh
|
||||
SOURCES/filter-armv7hl.sh
|
||||
SOURCES/filter-i686.sh
|
||||
SOURCES/filter-modules.sh
|
||||
SOURCES/filter-ppc64le.sh
|
||||
SOURCES/filter-s390x.sh
|
||||
SOURCES/filter-x86_64.sh
|
||||
SOURCES/mod-extra.list
|
||||
SOURCES/x509.genkey
|
1
.kernel.metadata
Normal file
1
.kernel.metadata
Normal file
@ -0,0 +1 @@
|
||||
ac61f2459040c09af1d5abd4ed100c3d316b443e SOURCES/linux-5.15.tar.xz
|
24
SOURCES/0001-Drop-that-for-now.patch
Normal file
24
SOURCES/0001-Drop-that-for-now.patch
Normal file
@ -0,0 +1,24 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Laura Abbott <labbott@redhat.com>
|
||||
Date: Wed, 23 Jan 2019 14:36:37 +0100
|
||||
Subject: [PATCH] Drop that for now
|
||||
|
||||
---
|
||||
Makefile | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index b70997f7ddf9..680d906eee35 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -496,6 +496,7 @@ KBUILD_CFLAGS := -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs \
|
||||
-fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE \
|
||||
-Werror=implicit-function-declaration -Werror=implicit-int \
|
||||
-Werror=return-type -Wno-format-security \
|
||||
+ -Wno-address-of-packed-member \
|
||||
-std=gnu89
|
||||
KBUILD_CPPFLAGS := -D__KERNEL__
|
||||
KBUILD_AFLAGS_KERNEL :=
|
||||
--
|
||||
2.28.0
|
||||
|
@ -0,0 +1,29 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: "Justin M. Forbes" <jforbes@fedoraproject.org>
|
||||
Date: Thu, 30 Jul 2020 10:26:11 -0500
|
||||
Subject: [PATCH] Work around for gcc bug
|
||||
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96377
|
||||
|
||||
Signed-off-by: Justin M. Forbes <jforbes@fedoraproject.org>
|
||||
---
|
||||
crypto/aegis128-neon-inner.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/crypto/aegis128-neon-inner.c b/crypto/aegis128-neon-inner.c
|
||||
index 2a660ac1bc3a..fa87ff6a2a71 100644
|
||||
--- a/crypto/aegis128-neon-inner.c
|
||||
+++ b/crypto/aegis128-neon-inner.c
|
||||
@@ -148,8 +148,8 @@ void crypto_aegis128_init_neon(void *state, const void *key, const void *iv)
|
||||
kiv,
|
||||
vld1q_u8(const1),
|
||||
vld1q_u8(const0),
|
||||
- k ^ vld1q_u8(const0),
|
||||
- k ^ vld1q_u8(const1),
|
||||
+ (uint8x16_t) (k ^ vld1q_u8(const0)),
|
||||
+ (uint8x16_t) (k ^ vld1q_u8(const1)),
|
||||
}};
|
||||
int i;
|
||||
|
||||
--
|
||||
2.28.0
|
||||
|
25
SOURCES/0001-brcm-rpi4-fix-usb-numeration.patch
Normal file
25
SOURCES/0001-brcm-rpi4-fix-usb-numeration.patch
Normal file
@ -0,0 +1,25 @@
|
||||
From 6e318871fac5533bd4dd82677b08ba7be17df55b Mon Sep 17 00:00:00 2001
|
||||
From: Peter Robinson <pbrobinson@gmail.com>
|
||||
Date: Tue, 12 Jan 2021 23:14:09 +0000
|
||||
Subject: [PATCH] brcm: rpi4: fix usb numeration
|
||||
|
||||
Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
|
||||
---
|
||||
drivers/pci/controller/pcie-brcmstb.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/drivers/pci/controller/pcie-brcmstb.c b/drivers/pci/controller/pcie-brcmstb.c
|
||||
index 9c3d2982248d..78ed98e9b099 100644
|
||||
--- a/drivers/pci/controller/pcie-brcmstb.c
|
||||
+++ b/drivers/pci/controller/pcie-brcmstb.c
|
||||
@@ -869,6 +869,7 @@ static int brcm_pcie_setup(struct brcm_pcie *pcie)
|
||||
|
||||
/* Reset the bridge */
|
||||
pcie->bridge_sw_init_set(pcie, 1);
|
||||
+ pcie->perst_set(pcie, 1);
|
||||
usleep_range(100, 200);
|
||||
|
||||
/* Take the bridge out of reset */
|
||||
--
|
||||
2.29.2
|
||||
|
@ -0,0 +1,59 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Icenowy Zheng <icenowy@aosc.io>
|
||||
Date: Mon, 16 Mar 2020 21:35:02 +0800
|
||||
Subject: [PATCH] drm/sun4i: sun6i_mipi_dsi: fix horizontal timing calculation
|
||||
|
||||
The max() function call in horizontal timing calculation shouldn't pad a
|
||||
length already subtracted with overhead to overhead, instead it should
|
||||
only prevent the set timing to underflow.
|
||||
|
||||
Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
|
||||
---
|
||||
drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c | 10 +++++-----
|
||||
1 file changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c b/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c
|
||||
index aa67cb037e9d..52e009dc632b 100644
|
||||
--- a/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c
|
||||
+++ b/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c
|
||||
@@ -556,7 +556,7 @@ static void sun6i_dsi_setup_timings(struct sun6i_dsi *dsi,
|
||||
*/
|
||||
#define HSA_PACKET_OVERHEAD 10
|
||||
hsa = max((unsigned int)HSA_PACKET_OVERHEAD,
|
||||
- (mode->hsync_end - mode->hsync_start) * Bpp - HSA_PACKET_OVERHEAD);
|
||||
+ (mode->hsync_end - mode->hsync_start) * Bpp) - HSA_PACKET_OVERHEAD;
|
||||
|
||||
/*
|
||||
* The backporch is set using a blanking packet (4
|
||||
@@ -565,7 +565,7 @@ static void sun6i_dsi_setup_timings(struct sun6i_dsi *dsi,
|
||||
*/
|
||||
#define HBP_PACKET_OVERHEAD 6
|
||||
hbp = max((unsigned int)HBP_PACKET_OVERHEAD,
|
||||
- (mode->htotal - mode->hsync_end) * Bpp - HBP_PACKET_OVERHEAD);
|
||||
+ (mode->htotal - mode->hsync_end) * Bpp) - HBP_PACKET_OVERHEAD;
|
||||
|
||||
/*
|
||||
* The frontporch is set using a sync event (4 bytes)
|
||||
@@ -575,7 +575,7 @@ static void sun6i_dsi_setup_timings(struct sun6i_dsi *dsi,
|
||||
*/
|
||||
#define HFP_PACKET_OVERHEAD 16
|
||||
hfp = max((unsigned int)HFP_PACKET_OVERHEAD,
|
||||
- (mode->hsync_start - mode->hdisplay) * Bpp - HFP_PACKET_OVERHEAD);
|
||||
+ (mode->hsync_start - mode->hdisplay) * Bpp) - HFP_PACKET_OVERHEAD;
|
||||
|
||||
/*
|
||||
* The blanking is set using a sync event (4 bytes)
|
||||
@@ -584,8 +584,8 @@ static void sun6i_dsi_setup_timings(struct sun6i_dsi *dsi,
|
||||
*/
|
||||
#define HBLK_PACKET_OVERHEAD 10
|
||||
hblk = max((unsigned int)HBLK_PACKET_OVERHEAD,
|
||||
- (mode->htotal - (mode->hsync_end - mode->hsync_start)) * Bpp -
|
||||
- HBLK_PACKET_OVERHEAD);
|
||||
+ (mode->htotal - (mode->hsync_end - mode->hsync_start)) * Bpp) -
|
||||
+ HBLK_PACKET_OVERHEAD;
|
||||
|
||||
/*
|
||||
* And I'm not entirely sure what vblk is about. The driver in
|
||||
--
|
||||
2.28.0
|
||||
|
@ -0,0 +1,74 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Icenowy Zheng <icenowy@aosc.io>
|
||||
Date: Mon, 16 Mar 2020 21:35:00 +0800
|
||||
Subject: [PATCH] dt-bindings: panel: add binding for Xingbangda XBD599 panel
|
||||
|
||||
Xingbangda XBD599 is a 5.99" 720x1440 MIPI-DSI LCD panel.
|
||||
|
||||
Add its device tree binding.
|
||||
|
||||
Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
|
||||
---
|
||||
.../display/panel/xingbangda,xbd599.yaml | 50 +++++++++++++++++++
|
||||
1 file changed, 50 insertions(+)
|
||||
create mode 100644 Documentation/devicetree/bindings/display/panel/xingbangda,xbd599.yaml
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/display/panel/xingbangda,xbd599.yaml b/Documentation/devicetree/bindings/display/panel/xingbangda,xbd599.yaml
|
||||
new file mode 100644
|
||||
index 000000000000..b27bcf11198f
|
||||
--- /dev/null
|
||||
+++ b/Documentation/devicetree/bindings/display/panel/xingbangda,xbd599.yaml
|
||||
@@ -0,0 +1,50 @@
|
||||
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
+%YAML 1.2
|
||||
+---
|
||||
+$id: http://devicetree.org/schemas/display/panel/xingbangda,xbd599.yaml#
|
||||
+$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
+
|
||||
+title: Xingbangda XBD599 5.99in MIPI-DSI LCD panel
|
||||
+
|
||||
+maintainers:
|
||||
+ - Icenowy Zheng <icenowy@aosc.io>
|
||||
+
|
||||
+allOf:
|
||||
+ - $ref: panel-common.yaml#
|
||||
+
|
||||
+properties:
|
||||
+ compatible:
|
||||
+ const: xingbangda,xbd599
|
||||
+ reg: true
|
||||
+ backlight: true
|
||||
+ reset-gpios: true
|
||||
+ vcc-supply:
|
||||
+ description: regulator that supplies the VCC voltage
|
||||
+ iovcc-supply:
|
||||
+ description: regulator that supplies the IOVCC voltage
|
||||
+
|
||||
+required:
|
||||
+ - compatible
|
||||
+ - reg
|
||||
+ - backlight
|
||||
+ - vcc-supply
|
||||
+ - iovcc-supply
|
||||
+
|
||||
+additionalProperties: false
|
||||
+
|
||||
+examples:
|
||||
+ - |
|
||||
+ dsi {
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ panel@0 {
|
||||
+ compatible = "xingbangda,xbd599";
|
||||
+ reg = <0>;
|
||||
+ backlight = <&backlight>;
|
||||
+ iovcc-supply = <®_dldo2>;
|
||||
+ vcc-supply = <®_ldo_io0>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+...
|
||||
--
|
||||
2.28.0
|
||||
|
@ -0,0 +1,93 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Dave Young <dyoung@redhat.com>
|
||||
Date: Mon, 4 Jun 2018 01:38:25 -0400
|
||||
Subject: [PATCH] kdump: round up the total memory size to 128M for crashkernel
|
||||
reservation
|
||||
|
||||
Message-id: <20180604013831.523644967@redhat.com>
|
||||
Patchwork-id: 8165
|
||||
O-Subject: [kernel team] [PATCH RHEL8.0 V2 1/2] kdump: round up the total memory size to 128M for crashkernel reservation
|
||||
Bugzilla: 1507353
|
||||
RH-Acked-by: Don Zickus <dzickus@redhat.com>
|
||||
RH-Acked-by: Baoquan He <bhe@redhat.com>
|
||||
RH-Acked-by: Pingfan Liu <piliu@redhat.com>
|
||||
|
||||
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1507353
|
||||
Build: https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=16534135
|
||||
Tested: ppc64le, x86_64 with several memory sizes.
|
||||
|
||||
The total memory size we get in kernel is usually slightly less than 2G with
|
||||
2G memory module machine. The main reason is bios/firmware reserve some area
|
||||
it will not export all memory as usable to Linux.
|
||||
|
||||
2G memory X86 kvm guest test result of the total_mem value:
|
||||
UEFI boot with ovmf: 0x7ef10000
|
||||
Legacy boot kvm guest: 0x7ff7cc00
|
||||
This is also a problem on arm64 UEFI booted system according to my test.
|
||||
|
||||
Thus for example crashkernel=1G-2G:128M, if we have a 1G memory
|
||||
machine, we get total size 1023M from firmware then it will not fall
|
||||
into 1G-2G thus no memory reserved. User will never know that, it is
|
||||
hard to let user to know the exact total value we get in kernel
|
||||
|
||||
An option is to use dmi/smbios to get physical memory size, but it's not
|
||||
reliable as well. According to Prarit hardware vendors sometimes screw this up.
|
||||
Thus round up total size to 128M to workaround this problem.
|
||||
|
||||
Posted below patch in upstream, but no response yet:
|
||||
http://lists.infradead.org/pipermail/kexec/2018-April/020568.html
|
||||
|
||||
Upstream Status: RHEL only
|
||||
Signed-off-by: Dave Young <dyoung@redhat.com>
|
||||
Signed-off-by: Herton R. Krzesinski <herton@redhat.com>
|
||||
---
|
||||
kernel/crash_core.c | 14 ++++++++++++--
|
||||
1 file changed, 12 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/kernel/crash_core.c b/kernel/crash_core.c
|
||||
index 18175687133a..e4dfe2a05a31 100644
|
||||
--- a/kernel/crash_core.c
|
||||
+++ b/kernel/crash_core.c
|
||||
@@ -7,6 +7,7 @@
|
||||
#include <linux/crash_core.h>
|
||||
#include <linux/utsname.h>
|
||||
#include <linux/vmalloc.h>
|
||||
+#include <linux/sizes.h>
|
||||
|
||||
#include <asm/page.h>
|
||||
#include <asm/sections.h>
|
||||
@@ -39,6 +40,15 @@ static int __init parse_crashkernel_mem(char *cmdline,
|
||||
unsigned long long *crash_base)
|
||||
{
|
||||
char *cur = cmdline, *tmp;
|
||||
+ unsigned long long total_mem = system_ram;
|
||||
+
|
||||
+ /*
|
||||
+ * Firmware sometimes reserves some memory regions for it's own use.
|
||||
+ * so we get less than actual system memory size.
|
||||
+ * Workaround this by round up the total size to 128M which is
|
||||
+ * enough for most test cases.
|
||||
+ */
|
||||
+ total_mem = roundup(total_mem, SZ_128M);
|
||||
|
||||
/* for each entry of the comma-separated list */
|
||||
do {
|
||||
@@ -83,13 +93,13 @@ static int __init parse_crashkernel_mem(char *cmdline,
|
||||
return -EINVAL;
|
||||
}
|
||||
cur = tmp;
|
||||
- if (size >= system_ram) {
|
||||
+ if (size >= total_mem) {
|
||||
pr_warn("crashkernel: invalid size\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
/* match ? */
|
||||
- if (system_ram >= start && system_ram < end) {
|
||||
+ if (total_mem >= start && total_mem < end) {
|
||||
*crash_size = size;
|
||||
break;
|
||||
}
|
||||
--
|
||||
2.28.0
|
||||
|
@ -0,0 +1,71 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Murphy Zhou <jencce.kernel@gmail.com>
|
||||
Date: Sun, 29 Sep 2019 17:56:59 +0800
|
||||
Subject: [PATCH] mm/kmemleak: skip late_init if not skip disable
|
||||
|
||||
Now if DEFAULT_OFF set to y, kmemleak_init will start the cleanup_work
|
||||
workqueue. Then late_init call will set kmemleak_initialized to 1, the
|
||||
cleaup workqueue will try to do cleanup, triggering:
|
||||
|
||||
[24.738773] ==================================================================
|
||||
[24.742784] BUG: KASAN: global-out-of-bounds in __kmemleak_do_cleanup+0x166/0x180
|
||||
[24.744144] Key type ._fscrypt registered
|
||||
[24.745680] Read of size 8 at addr ffffffff88746c90 by task kworker/3:1/171
|
||||
[24.745687]
|
||||
[24.745697] CPU: 3 PID: 171 Comm: kworker/3:1 Not tainted 5.3.0-v5.3-12475-gcbafe18 #1
|
||||
[24.745701] Hardware name: Red Hat KVM, BIOS 0.5.1 01/01/2011
|
||||
[24.745710] Workqueue: events kmemleak_do_cleanup
|
||||
[24.745717] Call Trace:
|
||||
[24.745736] dump_stack+0x7c/0xc0
|
||||
[24.745755] print_address_description.constprop.4+0x1f/0x300
|
||||
[24.751562] Key type .fscrypt registered
|
||||
[24.754370] __kasan_report.cold.8+0x76/0xb2
|
||||
[24.754388] ? __kmemleak_do_cleanup+0x166/0x180
|
||||
[24.754407] kasan_report+0xe/0x20
|
||||
[24.778543] __kmemleak_do_cleanup+0x166/0x180
|
||||
[24.780795] process_one_work+0x919/0x17d0
|
||||
[24.782929] ? pwq_dec_nr_in_flight+0x320/0x320
|
||||
[24.785092] worker_thread+0x87/0xb40
|
||||
[24.786948] ? __kthread_parkme+0xc3/0x190
|
||||
[24.789217] ? process_one_work+0x17d0/0x17d0
|
||||
[24.791414] kthread+0x333/0x3f0
|
||||
[24.793031] ? kthread_create_worker_on_cpu+0xc0/0xc0
|
||||
[24.795473] ret_from_fork+0x3a/0x50
|
||||
[24.797303]
|
||||
[24.798091] The buggy address belongs to the variable:
|
||||
[24.800634] mem_pool_free_count+0x10/0x40
|
||||
[24.802656]
|
||||
[24.803434] Memory state around the buggy address:
|
||||
[24.805793] ffffffff88746b80: 04 fa fa fa fa fa fa fa 00 00 00 00 00 00 00 00
|
||||
[24.809177] ffffffff88746c00: 00 fa fa fa fa fa fa fa 00 00 fa fa fa fa fa fa
|
||||
[24.812407] >ffffffff88746c80: 04 fa fa fa fa fa fa fa 00 00 fa fa fa fa fa fa
|
||||
[24.815638] ^
|
||||
[24.817372] ffffffff88746d00: 00 00 fa fa fa fa fa fa 00 00 00 00 00 00 00 00
|
||||
[24.820740] ffffffff88746d80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
[24.824021] ==================================================================
|
||||
|
||||
Fixes: c5665868183f ("mm: kmemleak: use the memory pool for early allocations")
|
||||
Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
|
||||
---
|
||||
mm/kmemleak.c | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/mm/kmemleak.c b/mm/kmemleak.c
|
||||
index e362dc3d2028..0c3dfb8eef67 100644
|
||||
--- a/mm/kmemleak.c
|
||||
+++ b/mm/kmemleak.c
|
||||
@@ -1958,6 +1958,11 @@ void __init kmemleak_init(void)
|
||||
*/
|
||||
static int __init kmemleak_late_init(void)
|
||||
{
|
||||
+ if (!kmemleak_skip_disable) {
|
||||
+ kmemleak_disable();
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
kmemleak_initialized = 1;
|
||||
|
||||
debugfs_create_file("kmemleak", 0644, NULL, NULL, &kmemleak_fops);
|
||||
--
|
||||
2.28.0
|
||||
|
70
SOURCES/0001-scsi-smartpqi-add-inspur-advantech-ids.patch
Normal file
70
SOURCES/0001-scsi-smartpqi-add-inspur-advantech-ids.patch
Normal file
@ -0,0 +1,70 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Don Brace <dbrace@redhat.com>
|
||||
Date: Mon, 16 Jul 2018 19:20:41 -0400
|
||||
Subject: [PATCH] scsi: smartpqi: add inspur advantech ids
|
||||
|
||||
Message-id: <1531768843-2544-4-git-send-email-dbrace@redhat.com>
|
||||
Patchwork-id: 224988
|
||||
O-Subject: [RHEL 8.0 e-stor V2 PATCH 3/5] scsi: smartpqi: add inspur advantech ids
|
||||
Bugzilla: 1503736
|
||||
RH-Acked-by: Ewan Milne <emilne@redhat.com>
|
||||
RH-Acked-by: Tomas Henzl <thenzl@redhat.com>
|
||||
|
||||
From: Kevin Barnett <kevin.barnett@microsemi.com>
|
||||
|
||||
Add support for these new device IDs:
|
||||
|
||||
Advantech MIC-8312BridgeB
|
||||
INSPUR PM8204-2GB
|
||||
INSPUR PM8204-4GB
|
||||
INSPUR PM8222-SHBA
|
||||
|
||||
Upstream Status: RHEL only
|
||||
Reviewed-by: Scott Benesh <scott.benesh@microsemi.com>
|
||||
Signed-off-by: Kevin Barnett <kevin.barnett@microsemi.com>
|
||||
Signed-off-by: Don Brace <don.brace@microsemi.com>
|
||||
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
|
||||
(cherry picked from commit 9f8d05fa98442de78d1ab30235b0cc656ed7aff0)
|
||||
Signed-off-by: Don Brace <dbrace@redhat.com>
|
||||
Signed-off-by: Herton R. Krzesinski <herton@redhat.com>
|
||||
---
|
||||
drivers/scsi/smartpqi/smartpqi_init.c | 16 ++++++++++++++++
|
||||
1 file changed, 16 insertions(+)
|
||||
|
||||
diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
|
||||
index bd38c8cea56e..477eb841d4e5 100644
|
||||
--- a/drivers/scsi/smartpqi/smartpqi_init.c
|
||||
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
|
||||
@@ -8251,6 +8251,18 @@ static const struct pci_device_id pqi_pci_id_table[] = {
|
||||
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
|
||||
0x19e5, 0xd22c)
|
||||
},
|
||||
+ {
|
||||
+ PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
|
||||
+ 0x1bd4, 0x004a)
|
||||
+ },
|
||||
+ {
|
||||
+ PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
|
||||
+ 0x1bd4, 0x004b)
|
||||
+ },
|
||||
+ {
|
||||
+ PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
|
||||
+ 0x1bd4, 0x004c)
|
||||
+ },
|
||||
{
|
||||
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
|
||||
PCI_VENDOR_ID_ADAPTEC2, 0x0110)
|
||||
@@ -8387,6 +8399,10 @@ static const struct pci_device_id pqi_pci_id_table[] = {
|
||||
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
|
||||
PCI_VENDOR_ID_ADVANTECH, 0x8312)
|
||||
},
|
||||
+ {
|
||||
+ PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
|
||||
+ PCI_VENDOR_ID_ADVANTECH, 0x8312)
|
||||
+ },
|
||||
{
|
||||
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
|
||||
PCI_VENDOR_ID_DELL, 0x1fe0)
|
||||
--
|
||||
2.28.0
|
||||
|
26
SOURCES/0001-update-phy-on-pine64-a64-devices.patch
Normal file
26
SOURCES/0001-update-phy-on-pine64-a64-devices.patch
Normal file
@ -0,0 +1,26 @@
|
||||
From bb421e23b49e39c117a31f7c07df83cddd0d96dc Mon Sep 17 00:00:00 2001
|
||||
From: Peter Robinson <pbrobinson@gmail.com>
|
||||
Date: Mon, 26 Oct 2020 17:01:57 +0000
|
||||
Subject: [PATCH 1/2] update phy on pine64 a64 devices
|
||||
|
||||
---
|
||||
arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts | 2 +-
|
||||
arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
|
||||
index 2165f238af13..9741fb5caa6f 100644
|
||||
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
|
||||
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
|
||||
@@ -81,7 +81,7 @@ &ehci1 {
|
||||
&emac {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&rmii_pins>;
|
||||
- phy-mode = "rmii";
|
||||
+ phy-mode = "rmii-txid";
|
||||
phy-handle = <&ext_rmii_phy1>;
|
||||
phy-supply = <®_dc1sw>;
|
||||
status = "okay";
|
||||
--
|
||||
2.28.0
|
||||
|
0
SOURCES/Module.kabi_aarch64
Normal file
0
SOURCES/Module.kabi_aarch64
Normal file
0
SOURCES/Module.kabi_dup_aarch64
Normal file
0
SOURCES/Module.kabi_dup_aarch64
Normal file
0
SOURCES/Module.kabi_dup_ppc64le
Normal file
0
SOURCES/Module.kabi_dup_ppc64le
Normal file
0
SOURCES/Module.kabi_dup_s390x
Normal file
0
SOURCES/Module.kabi_dup_s390x
Normal file
0
SOURCES/Module.kabi_dup_x86_64
Normal file
0
SOURCES/Module.kabi_dup_x86_64
Normal file
0
SOURCES/Module.kabi_ppc64le
Normal file
0
SOURCES/Module.kabi_ppc64le
Normal file
0
SOURCES/Module.kabi_s390x
Normal file
0
SOURCES/Module.kabi_s390x
Normal file
0
SOURCES/Module.kabi_x86_64
Normal file
0
SOURCES/Module.kabi_x86_64
Normal file
BIN
SOURCES/centos-ca-secureboot.der
Normal file
BIN
SOURCES/centos-ca-secureboot.der
Normal file
Binary file not shown.
42
SOURCES/centos.pem
Normal file
42
SOURCES/centos.pem
Normal file
@ -0,0 +1,42 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDgTCCAmmgAwIBAgIJALYWFXFy+zGAMA0GCSqGSIb3DQEBCwUAMEwxJjAkBgNV
|
||||
BAMMHUNlbnRPUyBTZWN1cmUgQm9vdCAoQ0Ega2V5IDEpMSIwIAYJKoZIhvcNAQkB
|
||||
FhNzZWN1cml0eUBjZW50b3Mub3JnMB4XDTE5MDYwMzE0MjA0MFoXDTM4MDEwMTE0
|
||||
MjA0MFowVTEvMC0GA1UEAwwmQ2VudE9TIExpbnV4IERyaXZlciB1cGRhdGUgc2ln
|
||||
bmluZyBrZXkxIjAgBgkqhkiG9w0BCQEWE3NlY3VyaXR5QGNlbnRvcy5vcmcwggEi
|
||||
MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQD5ECuosQ4HKRRf+Kxfm+BcICBK
|
||||
PGqB+E/qalqQ3CCM3LWezq0ns/GZTD0CtSAzmOObqJb3gJ9S5gcbaMVBc3JxLlQ+
|
||||
RwVy0oNy91uy9TKhYQ3lpHDyujxiFmXPSJLMKOYbOBNObJ7qF6+ptnmDWMu7GWDc
|
||||
4UGdBdU/evt92LIxsi9ZQCEoZIqdyKBE/Y3V9gBZIZa/4oXMHfW9dWxhy9UszmR9
|
||||
hT7ZdgLFpWMFmJW+SS5QEWtp5CpRlcui4QJZl42bMp5JOrVWc+BlKPIsLdY8TqLp
|
||||
9FdhQ5Ih4auT7zn2V89YgYpq6VMZnPsn/v5piB6i6RK8Falr6SP5SV0cwV/jAgMB
|
||||
AAGjXTBbMAwGA1UdEwEB/wQCMAAwCwYDVR0PBAQDAgeAMB0GA1UdDgQWBBQpvUwN
|
||||
BtLpkRBEtdyXMwkTm1HW1TAfBgNVHSMEGDAWgBRU7IGFiT7pGtsI90SIVH6OP3Q6
|
||||
8zANBgkqhkiG9w0BAQsFAAOCAQEAK+f4c4aP9TQDiQM4TDyw8iDapr7eBc+Yr0M5
|
||||
ELkWEQu55/OwLQrgCA5bdD86diaAXQAlUOXCtFRrbUQHQACEL77/32YdooHfVZZ7
|
||||
04CeE+JWxF/cQ3M5hhJnkyxaqFKC+B+bn7Z6eloMnYUPsXwfQEOuyxKaKergAJdq
|
||||
KnC0pEG3NGgwlwvnD0dwUqbbEUUqL3UQh96hCYDidhCUmuap1E2OGoxGex3ekszf
|
||||
ErCgwVYb46cv91ba2KqXVWl1FoO3c5MyZcxL46ihQgiY0BI975+HDFjpUZ69n+Um
|
||||
OhSscRUiKeEQKMVtHzyQUp5t+HCeaZBRPy3rFoIjTEqijKZ6tQ==
|
||||
-----END CERTIFICATE-----
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDejCCAmKgAwIBAgIJALYWFXFy+zF/MA0GCSqGSIb3DQEBCwUAMEwxJjAkBgNV
|
||||
BAMMHUNlbnRPUyBTZWN1cmUgQm9vdCAoQ0Ega2V5IDEpMSIwIAYJKoZIhvcNAQkB
|
||||
FhNzZWN1cml0eUBjZW50b3Mub3JnMB4XDTE5MDYwMzE0MjAwMloXDTM4MDEwMTE0
|
||||
MjAwMlowTjEoMCYGA1UEAwwfQ2VudE9TIExpbnV4IGtwYXRjaCBzaWduaW5nIGtl
|
||||
eTEiMCAGCSqGSIb3DQEJARYTc2VjdXJpdHlAY2VudG9zLm9yZzCCASIwDQYJKoZI
|
||||
hvcNAQEBBQADggEPADCCAQoCggEBAMG+5OclqB0NE5azrGkSitqUFcZjpRk/rS2P
|
||||
CetB6jwxOn06TrLGzqnhcE9VBKyEs7CXBLy6lfnORcYOybcR2XvrgqGa1txOZggl
|
||||
hc8zCj9X7ZCMK2UsWglxQCOtbo0m/vdor/VO3SFbrf/W9+PXhvNtcxMP9yjydbP+
|
||||
lS1St8uQv952hu7C1TevyOQN3jpvWRD7DSJIU/2uRFcdIo2QCGokuB/xESXeuGJ2
|
||||
F2P9w0h74V18AlVTxtGp/RSJqZaQ2Gi5h4Oa7UsRmhmCoLdmdBe7xnYJrJ4GhxKQ
|
||||
yG0kU1ikEhZW3YjoVPgBJzTsIhCAzFrOUq0d67a1wTVMiyL60fUCAwEAAaNdMFsw
|
||||
DAYDVR0TAQH/BAIwADALBgNVHQ8EBAMCB4AwHQYDVR0OBBYEFLSfCGIFkJ3E2iz6
|
||||
mTdvsZHS8J54MB8GA1UdIwQYMBaAFFTsgYWJPuka2wj3RIhUfo4/dDrzMA0GCSqG
|
||||
SIb3DQEBCwUAA4IBAQBcDnjWh8Mx6yaS/OvBOYZprYy5Su0tn+YHiN0czpjVw+zl
|
||||
NUt2YmRSA/g6xks04CYx+UAL/xnvRcxXd17Ni7eWiROxvgQvBo5nScVkFPq2IIP5
|
||||
8aj7LoHR1MUeXfiNqf1JoSlgpRV47wv/+jZD0hmbt1rC2NJp0ZU8OHmt2GWk0jmM
|
||||
MK72D/pyCUfHetBzPpU9M0cNiukjMUdIL+U7+CXDgKsfdFHcQ76ebWyka7vRSXTs
|
||||
lBMa2g20Atwz2Hj7tEEAZ74ioQ9029RAlUSNipACe31YdT4/BBWIqHPpeDFkp8W0
|
||||
9v4jeTX/2kMBXkjzMfKjhpooa+bFFFLogLeX3P4W
|
||||
-----END CERTIFICATE-----
|
BIN
SOURCES/centossecureboot001.der
Normal file
BIN
SOURCES/centossecureboot001.der
Normal file
Binary file not shown.
BIN
SOURCES/centossecureboot201.der
Normal file
BIN
SOURCES/centossecureboot201.der
Normal file
Binary file not shown.
BIN
SOURCES/centossecurebootca2.der
Normal file
BIN
SOURCES/centossecurebootca2.der
Normal file
Binary file not shown.
149
SOURCES/check-kabi
Executable file
149
SOURCES/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
SOURCES/cpupower.config
Normal file
3
SOURCES/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
SOURCES/cpupower.service
Normal file
13
SOURCES/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
|
3050
SOURCES/fedora-v5.15.patch
Normal file
3050
SOURCES/fedora-v5.15.patch
Normal file
File diff suppressed because it is too large
Load Diff
18
SOURCES/filter-aarch64.sh.fedora
Normal file
18
SOURCES/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 fpga infiniband leds media memstick message mmc mtd nfc ntb pcmcia power ssb soundwire staging tty uio w1"
|
||||
|
||||
ethdrvs="3com adaptec arc alteon atheros broadcom cadence calxeda chelsio cisco dec dlink emulex marvell micrel myricom neterion nvidia packetengines qlogic rdc 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 tiny vc4"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwpoison-inject target_core_user sbp_target cxgbit chcr rnbd-client rnbd-server mlx5_vdpa dfl-emif octeontx2-cpt octeontx2-cptvf spi-altera-dfl rvu_cptpf rvu_cptvf regmap-sdw regmap-sdw-mbq"
|
18
SOURCES/filter-aarch64.sh.rhel
Normal file
18
SOURCES/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
SOURCES/filter-armv7hl.sh.fedora
Normal file
18
SOURCES/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 fpga infiniband media memstick message nfc ntb pcmcia ssb soundwire staging tty uio w1"
|
||||
|
||||
ethdrvs="3com adaptec alteon altera amd atheros broadcom cadence chelsio cisco dec dlink emulex mellanox micrel myricom natsemi neterion nvidia packetengines qlogic rdc 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 tegra tilcdc tiny vc4"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwpoison-inject target_core_user sbp_target cxgbit chcr bq27xxx_battery_hdq mlx5_vdpa dfl-emif spi-altera-dfl"
|
0
SOURCES/filter-armv7hl.sh.rhel
Normal file
0
SOURCES/filter-armv7hl.sh.rhel
Normal file
14
SOURCES/filter-i686.sh.fedora
Normal file
14
SOURCES/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 fpga infiniband leds media memstick mfd mmc mtd nfc ntb pcmcia platform power ssb soundwire staging tty uio w1"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys 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 chcr parport_serial regmap-sdw hid-asus"
|
0
SOURCES/filter-i686.sh.rhel
Normal file
0
SOURCES/filter-i686.sh.rhel
Normal file
177
SOURCES/filter-modules.sh.fedora
Executable file
177
SOURCES/filter-modules.sh.fedora
Executable file
@ -0,0 +1,177 @@
|
||||
#! /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 fpga infiniband leds media memstick mfd mmc mtd nfc ntb pcmcia platform power ssb soundwire staging tty uio w1"
|
||||
|
||||
chardrvs="mwave pcmcia"
|
||||
|
||||
netdrvs="appletalk can dsa hamradio ieee802154 ppp slip usb wireless"
|
||||
|
||||
ethdrvs="3com adaptec alteon amd aquantia atheros broadcom cadence calxeda chelsio cisco dec dlink emulex marvell mellanox neterion nvidia packetengines qlogic rdc sfc silan sis smsc stmicro sun tehuti ti wiznet xircom"
|
||||
|
||||
inputdrvs="gameport tablet touchscreen"
|
||||
|
||||
hiddrvs="surface-hid"
|
||||
|
||||
scsidrvs="aacraid aic7xxx be2iscsi bfa bnx2i bnx2fc csiostor cxgbi esas2r fcoe fnic isci libsas lpfc megaraid mpt3sas mvsas pm8001 qla2xxx qla4xxx sym53c8xx_2 ufs qedf"
|
||||
|
||||
usbdrvs="atm image misc serial"
|
||||
|
||||
fsdrvs="affs befs cifs coda cramfs dlm ecryptfs hfs hfsplus jfs jffs2 minix nilfs2 ocfs2 reiserfs romfs squashfs sysv ubifs ufs"
|
||||
|
||||
netprots="6lowpan appletalk atm ax25 batman-adv bluetooth can dsa ieee802154 l2tp mac80211 mac802154 mpls netrom nfc rds rfkill rose sctp smc wireless"
|
||||
|
||||
drmdrvs="amd ast bridge gma500 i2c i915 mgag200 nouveau panel radeon"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwpoison-inject target_core_user sbp_target cxgbit chcr parport_serial regmap-sdw regmap-sdw-mbq arizona-micsupp hid-asus iTCO_wdt rnbd-client rnbd-server mlx5_vdpa spi-altera-dfl"
|
||||
|
||||
# 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/${char}
|
||||
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
|
||||
|
||||
# hid
|
||||
for hid in ${hiddrvs}
|
||||
do
|
||||
filter_dir $1 drivers/hid/${hid}
|
||||
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
|
||||
filter_dir $1 kernel/drivers/soundwire
|
||||
|
||||
# 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
|
169
SOURCES/filter-modules.sh.rhel
Executable file
169
SOURCES/filter-modules.sh.rhel
Executable file
@ -0,0 +1,169 @@
|
||||
#! /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 regmap-sdw regmap-sdw-mbq arizona-micsupp 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/${char}
|
||||
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
|
||||
filter_dir $1 kernel/drivers/soundwire
|
||||
|
||||
# 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
SOURCES/filter-ppc64le.sh.fedora
Normal file
14
SOURCES/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 fpga infiniband leds media memstick message mmc mtd nfc ntb pcmcia platform power ssb staging tty uio w1"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwpoison-inject target_core_user sbp_target cxgbit chcr rnbd-client rnbd-server mlx5_vdpa"
|
14
SOURCES/filter-ppc64le.sh.rhel
Normal file
14
SOURCES/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
SOURCES/filter-s390x.sh.fedora
Normal file
12
SOURCES/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
SOURCES/filter-s390x.sh.rhel
Normal file
12
SOURCES/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
SOURCES/filter-x86_64.sh.fedora
Normal file
12
SOURCES/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
SOURCES/filter-x86_64.sh.rhel
Normal file
12
SOURCES/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
|
36
SOURCES/generate_all_configs.sh
Executable file
36
SOURCES/generate_all_configs.sh
Executable file
@ -0,0 +1,36 @@
|
||||
#!/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 [ $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 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
|
30
SOURCES/generate_bls_conf.sh
Executable file
30
SOURCES/generate_bls_conf.sh
Executable file
@ -0,0 +1,30 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
. /etc/os-release
|
||||
|
||||
kernelver=$1 && shift
|
||||
rootfs=$1 && shift
|
||||
variant=$1 && shift
|
||||
|
||||
output="${rootfs}/lib/modules/${kernelver}/bls_sample.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
|
||||
grub_users \$grub_users
|
||||
grub_arg --unrestricted
|
||||
grub_class kernel${variant}
|
||||
EOF
|
8781
SOURCES/kernel-aarch64-debug-fedora.config
Normal file
8781
SOURCES/kernel-aarch64-debug-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
6275
SOURCES/kernel-aarch64-debug-rhel.config
Normal file
6275
SOURCES/kernel-aarch64-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
8754
SOURCES/kernel-aarch64-fedora.config
Normal file
8754
SOURCES/kernel-aarch64-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
6254
SOURCES/kernel-aarch64-rhel.config
Normal file
6254
SOURCES/kernel-aarch64-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
9045
SOURCES/kernel-armv7hl-debug-fedora.config
Normal file
9045
SOURCES/kernel-armv7hl-debug-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
9019
SOURCES/kernel-armv7hl-fedora.config
Normal file
9019
SOURCES/kernel-armv7hl-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
8779
SOURCES/kernel-armv7hl-lpae-debug-fedora.config
Normal file
8779
SOURCES/kernel-armv7hl-lpae-debug-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
8753
SOURCES/kernel-armv7hl-lpae-fedora.config
Normal file
8753
SOURCES/kernel-armv7hl-lpae-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
8000
SOURCES/kernel-i686-debug-fedora.config
Normal file
8000
SOURCES/kernel-i686-debug-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
7974
SOURCES/kernel-i686-fedora.config
Normal file
7974
SOURCES/kernel-i686-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
2
SOURCES/kernel-local
Normal file
2
SOURCES/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.
|
7557
SOURCES/kernel-ppc64le-debug-fedora.config
Normal file
7557
SOURCES/kernel-ppc64le-debug-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
6122
SOURCES/kernel-ppc64le-debug-rhel.config
Normal file
6122
SOURCES/kernel-ppc64le-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
7530
SOURCES/kernel-ppc64le-fedora.config
Normal file
7530
SOURCES/kernel-ppc64le-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
6104
SOURCES/kernel-ppc64le-rhel.config
Normal file
6104
SOURCES/kernel-ppc64le-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
7519
SOURCES/kernel-s390x-debug-fedora.config
Normal file
7519
SOURCES/kernel-s390x-debug-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
6075
SOURCES/kernel-s390x-debug-rhel.config
Normal file
6075
SOURCES/kernel-s390x-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
7492
SOURCES/kernel-s390x-fedora.config
Normal file
7492
SOURCES/kernel-s390x-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
6057
SOURCES/kernel-s390x-rhel.config
Normal file
6057
SOURCES/kernel-s390x-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
6093
SOURCES/kernel-s390x-zfcpdump-rhel.config
Normal file
6093
SOURCES/kernel-s390x-zfcpdump-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
8056
SOURCES/kernel-x86_64-debug-fedora.config
Normal file
8056
SOURCES/kernel-x86_64-debug-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
6407
SOURCES/kernel-x86_64-debug-rhel.config
Normal file
6407
SOURCES/kernel-x86_64-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
8030
SOURCES/kernel-x86_64-fedora.config
Normal file
8030
SOURCES/kernel-x86_64-fedora.config
Normal file
File diff suppressed because it is too large
Load Diff
6387
SOURCES/kernel-x86_64-rhel.config
Normal file
6387
SOURCES/kernel-x86_64-rhel.config
Normal file
File diff suppressed because it is too large
Load Diff
72
SOURCES/merge.pl
Executable file
72
SOURCES/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;
|
56
SOURCES/mod-extra-blacklist.sh
Executable file
56
SOURCES/mod-extra-blacklist.sh
Executable file
@ -0,0 +1,56 @@
|
||||
#!/bin/bash
|
||||
|
||||
buildroot="$1"
|
||||
kernel_base="$2"
|
||||
|
||||
blacklist()
|
||||
{
|
||||
cat > "$buildroot/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()
|
||||
{
|
||||
if modinfo "$1" | grep -q '^alias:\s\+net-'; then
|
||||
mod="${1##*/}"
|
||||
mod="${mod%.ko*}"
|
||||
echo "$mod has an alias that allows auto-loading. Blacklisting."
|
||||
blacklist "$mod"
|
||||
fi
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
[ -d "$buildroot/etc/modprobe.d/" ] || mkdir -p "$buildroot/etc/modprobe.d/"
|
||||
find "$buildroot/$kernel_base/extra" -name "*.ko*" | \
|
||||
foreachp check_blacklist
|
||||
|
||||
# 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 $buildroot/$kernel_base/extra/drivers/block/floppy.ko* ]; then
|
||||
blacklist "floppy"
|
||||
fi
|
196
SOURCES/mod-extra.list.fedora
Normal file
196
SOURCES/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
|
0
SOURCES/mod-extra.list.rhel
Normal file
0
SOURCES/mod-extra.list.rhel
Normal file
86
SOURCES/mod-extra.sh
Executable file
86
SOURCES/mod-extra.sh
Executable file
@ -0,0 +1,86 @@
|
||||
#! /bin/bash
|
||||
|
||||
Dir=$1
|
||||
List=$2
|
||||
Dest="extra"
|
||||
|
||||
# Destination was specified on the command line
|
||||
test -n "$3" && Dest="$3"
|
||||
|
||||
pushd $Dir
|
||||
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")
|
||||
|
||||
# NB: this loop runs 2000+ iterations. Try to be fast.
|
||||
NPROC=`nproc`
|
||||
[ -z "$NPROC" ] && NPROC=1
|
||||
cat modnames | xargs -r -n1 -P $NPROC sh -c '
|
||||
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-extra 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
|
||||
' DUMMYARG0 # xargs appends MODNAME, which becomes $dep in the script above
|
||||
|
||||
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
|
||||
|
||||
# now move the modules into the extra/ directory
|
||||
for mod in `cat dep2.list`
|
||||
do
|
||||
newpath=`dirname $mod | sed -e "s/kernel\\//$Dest\//"`
|
||||
mkdir -p $newpath
|
||||
mv $mod $newpath
|
||||
done
|
||||
|
||||
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 is modules-extra.
|
||||
|
||||
for mod in `cat ${Dir}/dep2.list`
|
||||
do
|
||||
modfile=`basename $mod | sed -e 's/.ko/.mod/'`
|
||||
rm .tmp_versions/$modfile
|
||||
done
|
||||
|
||||
pushd $Dir
|
||||
rm modnames dep.list dep2.list req.list req2.list
|
||||
rm "$ListName" modules2.list modules3.list
|
||||
popd
|
4
SOURCES/mod-internal.list
Normal file
4
SOURCES/mod-internal.list
Normal file
@ -0,0 +1,4 @@
|
||||
mac80211_hwsim
|
||||
netdevsim
|
||||
pktgen
|
||||
rocker
|
37
SOURCES/mod-sign.sh
Executable file
37
SOURCES/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
|
31
SOURCES/parallel_xz.sh
Executable file
31
SOURCES/parallel_xz.sh
Executable file
@ -0,0 +1,31 @@
|
||||
#!/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
|
||||
|
||||
#This seems to cause problems with large numbers
|
||||
if (( $procgroup > 6 )); then
|
||||
procgroup=6
|
||||
fi
|
||||
|
||||
# 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
|
325
SOURCES/process_configs.sh
Executable file
325
SOURCES/process_configs.sh
Executable file
@ -0,0 +1,325 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# This script takes the merged config files and processes them through oldconfig
|
||||
# and listnewconfig
|
||||
#
|
||||
|
||||
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"
|
||||
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
|
||||
|
||||
if test -s .mismatches
|
||||
then
|
||||
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 `ls $tmpdir`; do
|
||||
[[ -e "$tmpdir/$f" ]] || break
|
||||
cp $tmpdir/$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 ${cfgtmp}
|
||||
else
|
||||
mv ${cfgtmp} ${cfg}
|
||||
fi
|
||||
rm ${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)"
|
||||
OUTPUT_DIR="$PWD"
|
||||
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
SOURCES/secureboot_ppc.cer
Normal file
BIN
SOURCES/secureboot_ppc.cer
Normal file
Binary file not shown.
BIN
SOURCES/secureboot_s390.cer
Normal file
BIN
SOURCES/secureboot_s390.cer
Normal file
Binary file not shown.
12
SOURCES/update_scripts.sh
Executable file
12
SOURCES/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
SOURCES/x509.genkey.fedora
Normal file
16
SOURCES/x509.genkey.fedora
Normal file
@ -0,0 +1,16 @@
|
||||
[ req ]
|
||||
default_bits = 3072
|
||||
distinguished_name = req_distinguished_name
|
||||
prompt = no
|
||||
x509_extensions = myexts
|
||||
|
||||
[ req_distinguished_name ]
|
||||
O = CentOS
|
||||
CN = CentOS kernel signing key
|
||||
emailAddress = security@centos.org
|
||||
|
||||
[ myexts ]
|
||||
basicConstraints=critical,CA:FALSE
|
||||
keyUsage=digitalSignature
|
||||
subjectKeyIdentifier=hash
|
||||
authorityKeyIdentifier=keyid
|
16
SOURCES/x509.genkey.rhel
Normal file
16
SOURCES/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
|
3016
SPECS/kernel.spec
Normal file
3016
SPECS/kernel.spec
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user