diff options
Diffstat (limited to 'SOURCES/patch-6.6-redhat.patch')
-rw-r--r-- | SOURCES/patch-6.6-redhat.patch | 103 |
1 files changed, 10 insertions, 93 deletions
diff --git a/SOURCES/patch-6.6-redhat.patch b/SOURCES/patch-6.6-redhat.patch index 05988e9..869a273 100644 --- a/SOURCES/patch-6.6-redhat.patch +++ b/SOURCES/patch-6.6-redhat.patch @@ -30,8 +30,6 @@ include/linux/security.h | 5 + kernel/module/main.c | 2 + kernel/module/signing.c | 9 +- - lib/idr.c | 2 +- - lib/test_ida.c | 40 +++ scripts/mod/modpost.c | 8 + scripts/tags.sh | 2 + security/integrity/platform_certs/load_uefi.c | 6 +- @@ -42,11 +40,11 @@ sound/pci/hda/cs35l41_hda.h | 8 +- sound/pci/hda/cs35l41_hda_property.c | 355 +++++++++++++++++++-- sound/pci/hda/hda_component.h | 4 + - sound/pci/hda/patch_realtek.c | 39 ++- - 45 files changed, 1177 insertions(+), 243 deletions(-) + sound/pci/hda/patch_realtek.c | 34 +- + 43 files changed, 1132 insertions(+), 241 deletions(-) diff --git a/Makefile b/Makefile -index a05c69afc045..4adac135cb4d 100644 +index a4a2932a4318..e8e5f121c0b9 100644 --- a/Makefile +++ b/Makefile @@ -22,6 +22,18 @@ $(if $(filter __%, $(MAKECMDGOALS)), \ @@ -987,7 +985,7 @@ index 6b6aa3c36744..0ce08e9a0a3d 100644 arg->desc_id = ev->desc_id; arg->status = ev->status; diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c -index ae95d0950772..459f2b50d422 100644 +index e0081914052f..ae2d04c2f2b3 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c @@ -4410,6 +4410,30 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_BROADCOM, 0x9000, @@ -1451,77 +1449,6 @@ index a2ff4242e623..f0d2be1ee4f1 100644 } int module_sig_check(struct load_info *info, int flags) -diff --git a/lib/idr.c b/lib/idr.c -index 13f2758c2377..da36054c3ca0 100644 ---- a/lib/idr.c -+++ b/lib/idr.c -@@ -508,7 +508,7 @@ void ida_free(struct ida *ida, unsigned int id) - goto delete; - xas_store(&xas, xa_mk_value(v)); - } else { -- if (!test_bit(bit, bitmap->bitmap)) -+ if (!bitmap || !test_bit(bit, bitmap->bitmap)) - goto err; - __clear_bit(bit, bitmap->bitmap); - xas_set_mark(&xas, XA_FREE_MARK); -diff --git a/lib/test_ida.c b/lib/test_ida.c -index b06880625961..55105baa19da 100644 ---- a/lib/test_ida.c -+++ b/lib/test_ida.c -@@ -150,6 +150,45 @@ static void ida_check_conv(struct ida *ida) - IDA_BUG_ON(ida, !ida_is_empty(ida)); - } - -+/* -+ * Check various situations where we attempt to free an ID we don't own. -+ */ -+static void ida_check_bad_free(struct ida *ida) -+{ -+ unsigned long i; -+ -+ printk("vvv Ignore \"not allocated\" warnings\n"); -+ /* IDA is empty; all of these will fail */ -+ ida_free(ida, 0); -+ for (i = 0; i < 31; i++) -+ ida_free(ida, 1 << i); -+ -+ /* IDA contains a single value entry */ -+ IDA_BUG_ON(ida, ida_alloc_min(ida, 3, GFP_KERNEL) != 3); -+ ida_free(ida, 0); -+ for (i = 0; i < 31; i++) -+ ida_free(ida, 1 << i); -+ -+ /* IDA contains a single bitmap */ -+ IDA_BUG_ON(ida, ida_alloc_min(ida, 1023, GFP_KERNEL) != 1023); -+ ida_free(ida, 0); -+ for (i = 0; i < 31; i++) -+ ida_free(ida, 1 << i); -+ -+ /* IDA contains a tree */ -+ IDA_BUG_ON(ida, ida_alloc_min(ida, (1 << 20) - 1, GFP_KERNEL) != (1 << 20) - 1); -+ ida_free(ida, 0); -+ for (i = 0; i < 31; i++) -+ ida_free(ida, 1 << i); -+ printk("^^^ \"not allocated\" warnings over\n"); -+ -+ ida_free(ida, 3); -+ ida_free(ida, 1023); -+ ida_free(ida, (1 << 20) - 1); -+ -+ IDA_BUG_ON(ida, !ida_is_empty(ida)); -+} -+ - static DEFINE_IDA(ida); - - static int ida_checks(void) -@@ -162,6 +201,7 @@ static int ida_checks(void) - ida_check_leaf(&ida, 1024 * 64); - ida_check_max(&ida); - ida_check_conv(&ida); -+ ida_check_bad_free(&ida); - - printk("IDA: %u of %u tests passed\n", tests_passed, tests_run); - return (tests_run != tests_passed) ? 0 : -EINVAL; diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c index ac4ef3e206bb..80ede130812c 100644 --- a/scripts/mod/modpost.c @@ -2297,10 +2224,10 @@ index f170aec967c1..bbd6f0ed16c1 100644 void (*playback_hook)(struct device *dev, int action); void (*post_playback_hook)(struct device *dev, int action); diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c -index a9822d731ae0..a99dc4d79254 100644 +index 576e0f265abd..ce45c1a10150 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c -@@ -9861,22 +9861,28 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { +@@ -9871,22 +9871,28 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { SND_PCI_QUIRK(0x1043, 0x1313, "Asus K42JZ", ALC269VB_FIXUP_ASUS_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1043, 0x13b0, "ASUS Z550SA", ALC256_FIXUP_ASUS_MIC), SND_PCI_QUIRK(0x1043, 0x1427, "Asus Zenbook UX31E", ALC269VB_FIXUP_ASUS_ZENBOOK), @@ -2338,7 +2265,7 @@ index a9822d731ae0..a99dc4d79254 100644 SND_PCI_QUIRK(0x1043, 0x1881, "ASUS Zephyrus S/M", ALC294_FIXUP_ASUS_GX502_PINS), SND_PCI_QUIRK(0x1043, 0x18b1, "Asus MJ401TA", ALC256_FIXUP_ASUS_HEADSET_MIC), SND_PCI_QUIRK(0x1043, 0x18d3, "ASUS UM3504DA", ALC294_FIXUP_CS35L41_I2C_2), -@@ -9901,23 +9907,30 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { +@@ -9911,10 +9917,13 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { SND_PCI_QUIRK(0x1043, 0x1c43, "ASUS UX8406MA", ALC245_FIXUP_CS35L41_SPI_2), SND_PCI_QUIRK(0x1043, 0x1c62, "ASUS GU603", ALC289_FIXUP_ASUS_GA401), SND_PCI_QUIRK(0x1043, 0x1c92, "ASUS ROG Strix G15", ALC285_FIXUP_ASUS_G533Z_PINS), @@ -2354,22 +2281,12 @@ index a9822d731ae0..a99dc4d79254 100644 + SND_PCI_QUIRK(0x1043, 0x1d1f, "ASUS G713PI/PU/PV/PVN", ALC287_FIXUP_CS35L41_I2C_2), SND_PCI_QUIRK(0x1043, 0x1d42, "ASUS Zephyrus G14 2022", ALC289_FIXUP_ASUS_GA401), SND_PCI_QUIRK(0x1043, 0x1d4e, "ASUS TM420", ALC256_FIXUP_ASUS_HPE), -+ SND_PCI_QUIRK(0x1043, 0x1da2, "ASUS UP6502ZA/ZD", ALC245_FIXUP_CS35L41_SPI_2), - SND_PCI_QUIRK(0x1043, 0x1e02, "ASUS UX3402ZA", ALC245_FIXUP_CS35L41_SPI_2), - SND_PCI_QUIRK(0x1043, 0x16a3, "ASUS UX3402VA", ALC245_FIXUP_CS35L41_SPI_2), - SND_PCI_QUIRK(0x1043, 0x1f62, "ASUS UX7602ZM", ALC245_FIXUP_CS35L41_SPI_2), - SND_PCI_QUIRK(0x1043, 0x1e11, "ASUS Zephyrus G15", ALC289_FIXUP_ASUS_GA502), -- SND_PCI_QUIRK(0x1043, 0x1e12, "ASUS UM3402", ALC287_FIXUP_CS35L41_I2C_2), -+ SND_PCI_QUIRK(0x1043, 0x1e12, "ASUS UM6702RA/RC", ALC287_FIXUP_CS35L41_I2C_2), - SND_PCI_QUIRK(0x1043, 0x1e51, "ASUS Zephyrus M15", ALC294_FIXUP_ASUS_GU502_PINS), - SND_PCI_QUIRK(0x1043, 0x1e5e, "ASUS ROG Strix G513", ALC294_FIXUP_ASUS_G513_PINS), - SND_PCI_QUIRK(0x1043, 0x1e8e, "ASUS Zephyrus G15", ALC289_FIXUP_ASUS_GA401), -+ SND_PCI_QUIRK(0x1043, 0x1ee2, "ASUS UM3402", ALC287_FIXUP_CS35L41_I2C_2), + SND_PCI_QUIRK(0x1043, 0x1da2, "ASUS UP6502ZA/ZD", ALC245_FIXUP_CS35L41_SPI_2), +@@ -9930,6 +9939,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { SND_PCI_QUIRK(0x1043, 0x1c52, "ASUS Zephyrus G15 2022", ALC289_FIXUP_ASUS_GA401), SND_PCI_QUIRK(0x1043, 0x1f11, "ASUS Zephyrus G14", ALC289_FIXUP_ASUS_GA401), SND_PCI_QUIRK(0x1043, 0x1f12, "ASUS UM5302", ALC287_FIXUP_CS35L41_I2C_2), + SND_PCI_QUIRK(0x1043, 0x1f1f, "ASUS H7604JI/JV/J3D", ALC245_FIXUP_CS35L41_SPI_2), -+ SND_PCI_QUIRK(0x1043, 0x1f62, "ASUS UX7602ZM", ALC245_FIXUP_CS35L41_SPI_2), + SND_PCI_QUIRK(0x1043, 0x1f62, "ASUS UX7602ZM", ALC245_FIXUP_CS35L41_SPI_2), SND_PCI_QUIRK(0x1043, 0x1f92, "ASUS ROG Flow X16", ALC289_FIXUP_ASUS_GA401), SND_PCI_QUIRK(0x1043, 0x3030, "ASUS ZN270IE", ALC256_FIXUP_ASUS_AIO_GPIO2), - SND_PCI_QUIRK(0x1043, 0x3a20, "ASUS G614JZR", ALC245_FIXUP_CS35L41_SPI_2), |