summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJustin M. Forbes <jforbes@fedoraproject.org>2022-11-01 14:15:46 -0500
committerJustin M. Forbes <jforbes@fedoraproject.org>2022-11-01 14:15:46 -0500
commitb5bf334f6f31dc6a86da0f677ab80cef38f6186b (patch)
treef343cfb3d8b45d41632df2970ffa8a0a9d4db755
parent08b4eaa00c392718e1cac8df6cc584975c3a389f (diff)
downloadkernel-b5bf334f6f31dc6a86da0f677ab80cef38f6186b.tar.gz
kernel-b5bf334f6f31dc6a86da0f677ab80cef38f6186b.tar.xz
kernel-b5bf334f6f31dc6a86da0f677ab80cef38f6186b.zip
kernel-6.0.6-100
* Tue Nov 01 2022 Justin M. Forbes <jforbes@fedoraproject.org> [6.0.6-0] - drm/simpledrm: Only advertise formats that are supported (Justin M. Forbes) - disable enum64 BTF in fedora rawhide (Jiri Olsa) - Update patch for 6.0 (Justin M. Forbes) - Linux v6.0.6 Resolves: Signed-off-by: Justin M. Forbes <jforbes@fedoraproject.org>
-rw-r--r--Patchlist.changelog6
-rwxr-xr-xkernel.spec14
-rw-r--r--patch-6.0-redhat.patch139
-rw-r--r--sources6
4 files changed, 144 insertions, 21 deletions
diff --git a/Patchlist.changelog b/Patchlist.changelog
index da68ac2c5..a204a65e0 100644
--- a/Patchlist.changelog
+++ b/Patchlist.changelog
@@ -1,3 +1,9 @@
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/bf2bceedcc5d66c041165b4db6aea032fd7f4b5c
+ bf2bceedcc5d66c041165b4db6aea032fd7f4b5c drm/simpledrm: Only advertise formats that are supported
+
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/7ab8e0d8b46b7f768e37f8ff39ccae2ecc897396
+ 7ab8e0d8b46b7f768e37f8ff39ccae2ecc897396 disable enum64 BTF in fedora rawhide
+
"https://gitlab.com/cki-project/kernel-ark/-/commit"/3f98e8c4ff4856388d73a2dd727241fc05dc717f
3f98e8c4ff4856388d73a2dd727241fc05dc717f drm/vc4: hdmi: Fix HSM clock too low on Pi4
diff --git a/kernel.spec b/kernel.spec
index 06157a4cb..e150de1c0 100755
--- a/kernel.spec
+++ b/kernel.spec
@@ -122,17 +122,17 @@ Summary: The Linux kernel
# the --with-release option overrides this setting.)
%define debugbuildsenabled 1
# define buildid .local
-%define specversion 6.0.5
+%define specversion 6.0.6
%define patchversion 6.0
%define pkgrelease 100
%define kversion 6
-%define tarfile_release 6.0.5
+%define tarfile_release 6.0.6
# This is needed to do merge window version magic
%define patchlevel 0
# This allows pkg_release to have configurable %%{?dist} tag
%define specrelease 100%{?buildid}%{?dist}
# This defines the kabi tarball version
-%define kabiversion 6.0.5
+%define kabiversion 6.0.6
# If this variable is set to 1, a bpf selftests build failure will cause a
# fatal kernel package build error
@@ -3180,7 +3180,13 @@ fi
#
#
%changelog
-* Wed Oct 26 2022 Justin M. Forbes <jforbes@fedoraproject.org> [6.0.5-100]
+* Tue Nov 01 2022 Justin M. Forbes <jforbes@fedoraproject.org> [6.0.6-0]
+- drm/simpledrm: Only advertise formats that are supported (Justin M. Forbes)
+- disable enum64 BTF in fedora rawhide (Jiri Olsa)
+- Update patch for 6.0 (Justin M. Forbes)
+- Linux v6.0.6
+
+* Wed Oct 26 2022 Justin M. Forbes <jforbes@fedoraproject.org> [6.0.5-0]
- Add release targets for stable rebase (Justin M. Forbes)
- Linux v6.0.5
diff --git a/patch-6.0-redhat.patch b/patch-6.0-redhat.patch
index b1ab03610..aa4faf1ed 100644
--- a/patch-6.0-redhat.patch
+++ b/patch-6.0-redhat.patch
@@ -15,7 +15,8 @@
drivers/firmware/efi/efi.c | 124 +++++++++++++++------
drivers/firmware/efi/secureboot.c | 38 +++++++
drivers/firmware/sysfb.c | 18 ++-
- drivers/gpu/drm/vc4/vc4_hdmi.c | 46 +++++++-
+ drivers/gpu/drm/tiny/simpledrm.c | 65 +++++++++--
+ drivers/gpu/drm/vc4/vc4_hdmi.c | 39 ++++++-
drivers/gpu/drm/vc4/vc4_hdmi.h | 1 +
drivers/hid/hid-rmi.c | 64 -----------
drivers/hwtracing/coresight/coresight-etm4x-core.c | 19 ++++
@@ -34,16 +35,17 @@
init/Kconfig | 2 +-
kernel/module/signing.c | 9 +-
net/ipv4/fib_semantics.c | 8 +-
+ scripts/pahole-flags.sh | 3 +
scripts/tags.sh | 2 +
security/integrity/platform_certs/load_uefi.c | 6 +-
security/lockdown/Kconfig | 13 +++
security/lockdown/lockdown.c | 1 +
security/security.c | 6 +
tools/testing/selftests/net/fib_nexthops.sh | 5 +
- 42 files changed, 555 insertions(+), 192 deletions(-)
+ 44 files changed, 609 insertions(+), 199 deletions(-)
diff --git a/Makefile b/Makefile
-index 62a7398c8d06..a4d699f4c09d 100644
+index e6c10009d413..e9fc5ea8e350 100644
--- a/Makefile
+++ b/Makefile
@@ -18,6 +18,10 @@ $(if $(filter __%, $(MAKECMDGOALS)), \
@@ -597,8 +599,110 @@ index 1f276f108cc9..7039ad9bdf7f 100644
pd = sysfb_create_simplefb(si, &mode);
if (!IS_ERR(pd))
goto unlock_mutex;
+diff --git a/drivers/gpu/drm/tiny/simpledrm.c b/drivers/gpu/drm/tiny/simpledrm.c
+index 5422363690e7..a5b500811892 100644
+--- a/drivers/gpu/drm/tiny/simpledrm.c
++++ b/drivers/gpu/drm/tiny/simpledrm.c
+@@ -569,20 +569,44 @@ static int simpledrm_device_init_mm(struct simpledrm_device *sdev)
+ */
+
+ /*
+- * Support all formats of simplefb and maybe more; in order
+- * of preference. The display's update function will do any
++ * Support the subset of formats that we have conversion helpers for,
++ * in order of preference. The display's update function will do any
+ * conversion necessary.
+ *
+ * TODO: Add blit helpers for remaining formats and uncomment
+ * constants.
+ */
+-static const uint32_t simpledrm_default_formats[] = {
++
++/*
++ * Supported conversions to RGB565 and RGB888:
++ * from [AX]RGB8888
++ */
++static const uint32_t simpledrm_primary_plane_formats_base[] = {
++ DRM_FORMAT_XRGB8888,
++ DRM_FORMAT_ARGB8888,
++};
++
++/*
++ * Supported conversions to [AX]RGB8888:
++ * A/X variants (no-op)
++ * from RGB565
++ * from RGB888
++ */
++static const uint32_t simpledrm_primary_plane_formats_xrgb8888[] = {
+ DRM_FORMAT_XRGB8888,
+ DRM_FORMAT_ARGB8888,
++ DRM_FORMAT_RGB888,
+ DRM_FORMAT_RGB565,
+ //DRM_FORMAT_XRGB1555,
+ //DRM_FORMAT_ARGB1555,
+- DRM_FORMAT_RGB888,
++};
++
++/*
++ * Supported conversions to [AX]RGB2101010:
++ * A/X variants (no-op)
++ * from [AX]RGB8888
++ */
++static const uint32_t simpledrm_primary_plane_formats_xrgb2101010[] = {
+ DRM_FORMAT_XRGB2101010,
+ DRM_FORMAT_ARGB2101010,
+ };
+@@ -744,7 +768,8 @@ static const uint32_t *simpledrm_device_formats(struct simpledrm_device *sdev,
+ size_t *nformats_out)
+ {
+ struct drm_device *dev = &sdev->dev;
+- size_t i;
++ const uint32_t *conv_formats;
++ size_t i, conv_nformats;
+
+ if (sdev->nformats)
+ goto out; /* don't rebuild list on recurring calls */
+@@ -753,11 +778,35 @@ static const uint32_t *simpledrm_device_formats(struct simpledrm_device *sdev,
+ sdev->formats[0] = sdev->format->format;
+ sdev->nformats = 1;
+
++ switch (sdev->format->format) {
++ case DRM_FORMAT_RGB565:
++ case DRM_FORMAT_RGB888:
++ conv_formats = simpledrm_primary_plane_formats_base;
++ conv_nformats = ARRAY_SIZE(simpledrm_primary_plane_formats_base);
++ break;
++ case DRM_FORMAT_XRGB8888:
++ case DRM_FORMAT_ARGB8888:
++ conv_formats = simpledrm_primary_plane_formats_xrgb8888;
++ conv_nformats = ARRAY_SIZE(simpledrm_primary_plane_formats_xrgb8888);
++ break;
++ case DRM_FORMAT_XRGB2101010:
++ case DRM_FORMAT_ARGB2101010:
++ conv_formats = simpledrm_primary_plane_formats_xrgb2101010;
++ conv_nformats = ARRAY_SIZE(simpledrm_primary_plane_formats_xrgb2101010);
++ break;
++ default:
++ conv_formats = NULL;
++ conv_nformats = 0;
++ drm_warn(dev, "Format conversion helpers required to add extra formats.\n");
++ break;
++ }
++
++
+ /* default formats go second */
+- for (i = 0; i < ARRAY_SIZE(simpledrm_default_formats); ++i) {
+- if (simpledrm_default_formats[i] == sdev->format->format)
++ for (i = 0; i < conv_nformats; ++i) {
++ if (conv_formats[i] == sdev->format->format)
+ continue; /* native format already went first */
+- sdev->formats[sdev->nformats] = simpledrm_default_formats[i];
++ sdev->formats[sdev->nformats] = conv_formats[i];
+ sdev->nformats++;
+ }
+
diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.c b/drivers/gpu/drm/vc4/vc4_hdmi.c
-index 1e5f68704d7d..4e5bba0822a5 100644
+index 780a19a75c3f..281f01e8cbca 100644
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -2712,9 +2712,16 @@ static int vc4_hdmi_init_resources(struct vc4_hdmi *vc4_hdmi)
@@ -640,20 +744,15 @@ index 1e5f68704d7d..4e5bba0822a5 100644
return 0;
}
-@@ -2869,12 +2882,37 @@ static int vc4_hdmi_runtime_resume(struct device *dev)
+@@ -2869,6 +2882,7 @@ static int vc4_hdmi_runtime_resume(struct device *dev)
struct vc4_hdmi *vc4_hdmi = dev_get_drvdata(dev);
unsigned long __maybe_unused flags;
u32 __maybe_unused value;
+ unsigned long rate;
int ret;
-- ret = clk_prepare_enable(vc4_hdmi->hsm_clock);
-+ /*
-+ * The HSM clock is in the HDMI power domain, so we need to set
-+ * its frequency while the power domain is active so that it
-+ * keeps its rate.
-+ */
-+ ret = clk_set_min_rate(vc4_hdmi->hsm_rpm_clock, HSM_MIN_CLOCK_FREQ);
+ /*
+@@ -2884,6 +2898,25 @@ static int vc4_hdmi_runtime_resume(struct device *dev)
if (ret)
return ret;
@@ -679,7 +778,7 @@ index 1e5f68704d7d..4e5bba0822a5 100644
if (vc4_hdmi->variant->reset)
vc4_hdmi->variant->reset(vc4_hdmi);
-@@ -2896,6 +2934,10 @@ static int vc4_hdmi_runtime_resume(struct device *dev)
+@@ -2905,6 +2938,10 @@ static int vc4_hdmi_runtime_resume(struct device *dev)
#endif
return 0;
@@ -1086,7 +1185,7 @@ index 3a808146b50f..c1a3f3057921 100644
* Changes the default domain of an iommu group that has *only* one device
*
diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
-index 59e4b188fc71..9c6bfc02e6a1 100644
+index ed47c256dbd2..2af613f7353f 100644
--- a/drivers/nvme/host/core.c
+++ b/drivers/nvme/host/core.c
@@ -250,6 +250,9 @@ static void nvme_delete_ctrl_sync(struct nvme_ctrl *ctrl)
@@ -1465,6 +1564,18 @@ index 2dc97583d279..e9a7f70a54df 100644
nh = fib_info_nh(fi, 0);
if (cfg->fc_encap) {
if (fib_encap_match(net, cfg->fc_encap_type,
+diff --git a/scripts/pahole-flags.sh b/scripts/pahole-flags.sh
+index 0d99ef17e4a5..81c8e082ec57 100755
+--- a/scripts/pahole-flags.sh
++++ b/scripts/pahole-flags.sh
+@@ -20,4 +20,7 @@ if [ "${pahole_ver}" -ge "122" ]; then
+ extra_paholeopt="${extra_paholeopt} -j"
+ fi
+
++# temporary workaround to disable enum64
++extra_paholeopt="${extra_paholeopt} --skip_encoding_btf_enum64"
++
+ echo ${extra_paholeopt}
diff --git a/scripts/tags.sh b/scripts/tags.sh
index e137cf15aae9..2ed2341f7967 100755
--- a/scripts/tags.sh
diff --git a/sources b/sources
index 38a45a08a..ce566bd56 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (linux-6.0.5.tar.xz) = 4a408bc260699f01b4310993c61647ef60ff460460e545bf708ede56176eced82d16740658c9e09c5fdcb3151e43cc73ac3e53ffac9423174d4669e62b6646bf
-SHA512 (kernel-abi-stablelists-6.0.5.tar.bz2) = 461787f3aeecd1d7d6fac81cfbd1b655ed7557e2e43ffae5036f0d5c87dcbb06f62b9310a1d577182a29d2a9485845ebe4fbf2d3262e99f105c266bcc71b952a
-SHA512 (kernel-kabi-dw-6.0.5.tar.bz2) = b5d51045d444257efe06ea2e76ba11180889ad6fb6dbd3407c1f53604e3c1a37f86ab07233b897ed57d4f3ffea3f253b038b08d736b6a4bcdd6bf80f18164926
+SHA512 (linux-6.0.6.tar.xz) = 58f511b55b198c976418c2fa790b1b6a7f217f3474d1cafdb8ed6500a6080689cdc76a1c143be90b2c7efea3af463076bb4cfa1c75acd708b7a671cf2a5c5e6a
+SHA512 (kernel-abi-stablelists-6.0.6.tar.bz2) = acb093fddc4d406f467580e725396f327921923f1df8a6758b437c6a1569fa45a47e380aa2f23030c5095bdf1ec546d077dfbaf1a6f64dc2708d4ffdb6bb7352
+SHA512 (kernel-kabi-dw-6.0.6.tar.bz2) = 5a3c76bc07b52d70e14707efa1b54b6614c1dcf4915238cc08c3d186b65bce9955699a45f8ffb6c9b844344d525d584c658b790a75a073ca0358b6947469a627