From 98b330076dd5cba59b8665c47d6222f58891b290 Mon Sep 17 00:00:00 2001 From: "Justin M. Forbes" Date: Wed, 3 Nov 2021 08:30:08 -0500 Subject: kernel-5.14.16-1 * Wed Nov 03 2021 Justin M. Forbes [5.14.16-1] - Update release for usb fix rebuild (Justin M. Forbes) - Revert "xhci: Set HCD flag to defer primary roothub registration" (Justin M. Forbes) - Revert "usb: core: hcd: Add support for deferring roothub registration" (Justin M. Forbes) Resolves: rhbz# Signed-off-by: Justin M. Forbes --- Makefile.rhelver | 2 +- Patchlist.changelog | 6 +++ kernel.spec | 11 +++-- patch-5.14-redhat.patch | 107 +++++++++++++++++++++++++++++++++++++++++++++++- sources | 4 +- 5 files changed, 123 insertions(+), 7 deletions(-) diff --git a/Makefile.rhelver b/Makefile.rhelver index 8fceabade..7fb2464bc 100644 --- a/Makefile.rhelver +++ b/Makefile.rhelver @@ -12,7 +12,7 @@ RHEL_MINOR = 99 # # Use this spot to avoid future merge conflicts. # Do not trim this comment. -RHEL_RELEASE = 0 +RHEL_RELEASE = 1 # # Early y+1 numbering diff --git a/Patchlist.changelog b/Patchlist.changelog index 1a2233947..3fa842819 100644 --- a/Patchlist.changelog +++ b/Patchlist.changelog @@ -1,3 +1,9 @@ +https://gitlab.com/cki-project/kernel-ark/-/commit/4ea42fc748bc3ba5da69dd285681603f8474732e + 4ea42fc748bc3ba5da69dd285681603f8474732e Revert "xhci: Set HCD flag to defer primary roothub registration" + +https://gitlab.com/cki-project/kernel-ark/-/commit/492e6a0e07e3e62e977f7b705eab528495923772 + 492e6a0e07e3e62e977f7b705eab528495923772 Revert "usb: core: hcd: Add support for deferring roothub registration" + https://gitlab.com/cki-project/kernel-ark/-/commit/c72074b04c2b97c40f0fecb2754cd58f83c21642 c72074b04c2b97c40f0fecb2754cd58f83c21642 autofs: fix wait name hash calculation in autofs_wait() diff --git a/kernel.spec b/kernel.spec index e7f3e3c85..7bfb00c17 100755 --- a/kernel.spec +++ b/kernel.spec @@ -80,7 +80,7 @@ Summary: The Linux kernel # the --with-release option overrides this setting.) %define debugbuildsenabled 1 -%global distro_build 300 +%global distro_build 301 %if 0%{?fedora} %define secure_boot_arch x86_64 @@ -125,13 +125,13 @@ Summary: The Linux kernel %define rpmversion 5.14.16 %define patchversion 5.14 -%define pkgrelease 300 +%define pkgrelease 301 # This is needed to do merge window version magic %define patchlevel 14 # allow pkg_release to have configurable %%{?dist} tag -%define specrelease 300%{?buildid}%{?dist} +%define specrelease 301%{?buildid}%{?dist} %define pkg_release %{specrelease} @@ -2958,6 +2958,11 @@ fi # # %changelog +* Wed Nov 03 2021 Justin M. Forbes [5.14.16-1] +- Update release for usb fix rebuild (Justin M. Forbes) +- Revert "xhci: Set HCD flag to defer primary roothub registration" (Justin M. Forbes) +- Revert "usb: core: hcd: Add support for deferring roothub registration" (Justin M. Forbes) + * Tue Nov 02 2021 Justin M. Forbes [5.14.16-0] - Changelog entry for 5.14.15 (Justin M. Forbes) diff --git a/patch-5.14-redhat.patch b/patch-5.14-redhat.patch index 77eb7a574..e2d266b75 100644 --- a/patch-5.14-redhat.patch +++ b/patch-5.14-redhat.patch @@ -23,7 +23,9 @@ drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c | 4 + drivers/net/wireguard/main.c | 6 + drivers/pci/quirks.c | 24 + + drivers/usb/core/hcd.c | 29 +- drivers/usb/core/hub.c | 7 + + drivers/usb/host/xhci.c | 1 - fs/xfs/xfs_super.c | 8 - include/linux/efi.h | 22 +- include/linux/lsm_hook_defs.h | 2 + @@ -31,6 +33,7 @@ include/linux/random.h | 7 + include/linux/rmi.h | 1 + include/linux/security.h | 5 + + include/linux/usb/hcd.h | 2 - init/Kconfig | 2 +- kernel/module_signing.c | 9 +- mm/cma.c | 10 + @@ -52,7 +55,7 @@ tools/testing/selftests/bpf/progs/linked_maps2.c | 76 --- tools/testing/selftests/bpf/progs/linked_vars1.c | 54 -- tools/testing/selftests/bpf/progs/linked_vars2.c | 55 --- - 54 files changed, 671 insertions(+), 1494 deletions(-) + 57 files changed, 677 insertions(+), 1520 deletions(-) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 110b305af27f..488feec76f0a 100644 @@ -1330,6 +1333,76 @@ index 8c3c1ef92171..18431236ab9f 100644 /* * Intersil/Techwell TW686[4589]-based video capture cards have an empty (zero) * class code. Fix it. +diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c +index 99ff2d23be05..0f8b7c93310e 100644 +--- a/drivers/usb/core/hcd.c ++++ b/drivers/usb/core/hcd.c +@@ -2775,7 +2775,6 @@ int usb_add_hcd(struct usb_hcd *hcd, + { + int retval; + struct usb_device *rhdev; +- struct usb_hcd *shared_hcd; + + if (!hcd->skip_phy_initialization && usb_hcd_is_primary_hcd(hcd)) { + hcd->phy_roothub = usb_phy_roothub_alloc(hcd->self.sysdev); +@@ -2936,26 +2935,13 @@ int usb_add_hcd(struct usb_hcd *hcd, + goto err_hcd_driver_start; + } + +- /* starting here, usbcore will pay attention to the shared HCD roothub */ +- shared_hcd = hcd->shared_hcd; +- if (!usb_hcd_is_primary_hcd(hcd) && shared_hcd && HCD_DEFER_RH_REGISTER(shared_hcd)) { +- retval = register_root_hub(shared_hcd); +- if (retval != 0) +- goto err_register_root_hub; +- +- if (shared_hcd->uses_new_polling && HCD_POLL_RH(shared_hcd)) +- usb_hcd_poll_rh_status(shared_hcd); +- } +- + /* starting here, usbcore will pay attention to this root hub */ +- if (!HCD_DEFER_RH_REGISTER(hcd)) { +- retval = register_root_hub(hcd); +- if (retval != 0) +- goto err_register_root_hub; ++ retval = register_root_hub(hcd); ++ if (retval != 0) ++ goto err_register_root_hub; + +- if (hcd->uses_new_polling && HCD_POLL_RH(hcd)) +- usb_hcd_poll_rh_status(hcd); +- } ++ if (hcd->uses_new_polling && HCD_POLL_RH(hcd)) ++ usb_hcd_poll_rh_status(hcd); + + return retval; + +@@ -2999,7 +2985,6 @@ EXPORT_SYMBOL_GPL(usb_add_hcd); + void usb_remove_hcd(struct usb_hcd *hcd) + { + struct usb_device *rhdev = hcd->self.root_hub; +- bool rh_registered; + + dev_info(hcd->self.controller, "remove, state %x\n", hcd->state); + +@@ -3010,7 +2995,6 @@ void usb_remove_hcd(struct usb_hcd *hcd) + + dev_dbg(hcd->self.controller, "roothub graceful disconnect\n"); + spin_lock_irq (&hcd_root_hub_lock); +- rh_registered = hcd->rh_registered; + hcd->rh_registered = 0; + spin_unlock_irq (&hcd_root_hub_lock); + +@@ -3020,8 +3004,7 @@ void usb_remove_hcd(struct usb_hcd *hcd) + cancel_work_sync(&hcd->died_work); + + mutex_lock(&usb_bus_idr_lock); +- if (rh_registered) +- usb_disconnect(&rhdev); /* Sets rhdev to NULL */ ++ usb_disconnect(&rhdev); /* Sets rhdev to NULL */ + mutex_unlock(&usb_bus_idr_lock); + + /* diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c index 86658a81d284..5647f4756e97 100644 --- a/drivers/usb/core/hub.c @@ -1348,6 +1421,18 @@ index 86658a81d284..5647f4756e97 100644 /* Lock the device, then check to see if we were * disconnected while waiting for the lock to succeed. */ usb_lock_device(hdev); +diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c +index cb730683f898..4e32b96ccc88 100644 +--- a/drivers/usb/host/xhci.c ++++ b/drivers/usb/host/xhci.c +@@ -692,7 +692,6 @@ int xhci_run(struct usb_hcd *hcd) + if (ret) + xhci_free_command(xhci, command); + } +- set_bit(HCD_FLAG_DEFER_RH_REGISTER, &hcd->flags); + xhci_dbg_trace(xhci, trace_xhci_dbg_init, + "Finished xhci_run for USB2 roothub"); + diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c index 2c9e26a44546..f96324912d6a 100644 --- a/fs/xfs/xfs_super.c @@ -1532,6 +1617,26 @@ index 5b7288521300..f966f591c91e 100644 #endif /* CONFIG_SECURITY */ #if defined(CONFIG_SECURITY) && defined(CONFIG_WATCH_QUEUE) +diff --git a/include/linux/usb/hcd.h b/include/linux/usb/hcd.h +index 2c1fc9212cf2..548a028f2dab 100644 +--- a/include/linux/usb/hcd.h ++++ b/include/linux/usb/hcd.h +@@ -124,7 +124,6 @@ struct usb_hcd { + #define HCD_FLAG_RH_RUNNING 5 /* root hub is running? */ + #define HCD_FLAG_DEAD 6 /* controller has died? */ + #define HCD_FLAG_INTF_AUTHORIZED 7 /* authorize interfaces? */ +-#define HCD_FLAG_DEFER_RH_REGISTER 8 /* Defer roothub registration */ + + /* The flags can be tested using these macros; they are likely to + * be slightly faster than test_bit(). +@@ -135,7 +134,6 @@ struct usb_hcd { + #define HCD_WAKEUP_PENDING(hcd) ((hcd)->flags & (1U << HCD_FLAG_WAKEUP_PENDING)) + #define HCD_RH_RUNNING(hcd) ((hcd)->flags & (1U << HCD_FLAG_RH_RUNNING)) + #define HCD_DEAD(hcd) ((hcd)->flags & (1U << HCD_FLAG_DEAD)) +-#define HCD_DEFER_RH_REGISTER(hcd) ((hcd)->flags & (1U << HCD_FLAG_DEFER_RH_REGISTER)) + + /* + * Specifies if interfaces are authorized by default diff --git a/init/Kconfig b/init/Kconfig index 55f9f7738ebb..564553afb251 100644 --- a/init/Kconfig diff --git a/sources b/sources index 917b86532..5c81970c1 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (linux-5.14.16.tar.xz) = f4b84337b98423c41f6b910151d03215a9d38dcc81688d615dea83e63b60c65dc376e335c8d40966a3d5f7b0ef4ec58444894aacaea55ea99b62f328c0f205d3 -SHA512 (kernel-abi-stablelists-5.14.16-300.tar.bz2) = 55a6a0715657f4eefa6a995e17070746e2f0092ae405cb0a6307f5afb008e5e830e60e9d5de55f8c89833f21c23c8fef29374a5d1643612e12e360d355427b7a -SHA512 (kernel-kabi-dw-5.14.16-300.tar.bz2) = 6d3435e20d5757c5f652c1b62e8b6a99a1194ebe4d53277b8cfde9112c458d88e7957db1ccfa1735c04370067c0733840119ae675ce47710d10163370bc4463b +SHA512 (kernel-abi-stablelists-5.14.16-301.tar.bz2) = 2ba89636c7d0583e0c14cb4d0ed51389169b98e1b8e1434d4a0a0c377017003f3587a5656a7dee2c5931957dc2aab499c950c74f3c854bf665cf687ffa9e32ef +SHA512 (kernel-kabi-dw-5.14.16-301.tar.bz2) = 6d3435e20d5757c5f652c1b62e8b6a99a1194ebe4d53277b8cfde9112c458d88e7957db1ccfa1735c04370067c0733840119ae675ce47710d10163370bc4463b -- cgit