aboutsummaryrefslogtreecommitdiff
path: root/SOURCES
diff options
context:
space:
mode:
authorJan200101 <sentrycraft123@gmail.com>2021-11-14 18:37:04 +0100
committerJan200101 <sentrycraft123@gmail.com>2021-11-14 18:37:04 +0100
commit1c5696334acf597bc5a9abcb92925e41c3b5be42 (patch)
tree647d632228b790d703d27286825fc3edadd4c572 /SOURCES
parent1b39ebc6cad42d15b2150a2c7938d6ec1fa32958 (diff)
downloadkernel-fsync-1c5696334acf597bc5a9abcb92925e41c3b5be42.tar.gz
kernel-fsync-1c5696334acf597bc5a9abcb92925e41c3b5be42.zip
kernel 5.14.17
Diffstat (limited to 'SOURCES')
-rw-r--r--SOURCES/Patchlist.changelog3
-rw-r--r--SOURCES/kernel-aarch64-debug-fedora.config4
-rw-r--r--SOURCES/kernel-aarch64-fedora.config4
-rw-r--r--SOURCES/kernel-armv7hl-debug-fedora.config4
-rw-r--r--SOURCES/kernel-armv7hl-fedora.config4
-rw-r--r--SOURCES/kernel-armv7hl-lpae-debug-fedora.config4
-rw-r--r--SOURCES/kernel-armv7hl-lpae-fedora.config4
-rw-r--r--SOURCES/kernel-i686-debug-fedora.config2
-rw-r--r--SOURCES/kernel-i686-fedora.config2
-rw-r--r--SOURCES/kernel-ppc64le-debug-fedora.config2
-rw-r--r--SOURCES/kernel-ppc64le-fedora.config2
-rw-r--r--SOURCES/kernel-s390x-debug-fedora.config2
-rw-r--r--SOURCES/kernel-s390x-fedora.config2
-rw-r--r--SOURCES/kernel-x86_64-debug-fedora.config2
-rw-r--r--SOURCES/kernel-x86_64-fedora.config2
-rw-r--r--SOURCES/patch-5.14-redhat.patch140
16 files changed, 63 insertions, 120 deletions
diff --git a/SOURCES/Patchlist.changelog b/SOURCES/Patchlist.changelog
index 3fa8428..419ccfa 100644
--- a/SOURCES/Patchlist.changelog
+++ b/SOURCES/Patchlist.changelog
@@ -1,3 +1,6 @@
+https://gitlab.com/cki-project/kernel-ark/-/commit/135e0ca7843b0c75078420af44f09c03adf031e4
+ 135e0ca7843b0c75078420af44f09c03adf031e4 btrfs: fix memory ordering between normal and ordered work functions
+
https://gitlab.com/cki-project/kernel-ark/-/commit/4ea42fc748bc3ba5da69dd285681603f8474732e
4ea42fc748bc3ba5da69dd285681603f8474732e Revert "xhci: Set HCD flag to defer primary roothub registration"
diff --git a/SOURCES/kernel-aarch64-debug-fedora.config b/SOURCES/kernel-aarch64-debug-fedora.config
index f1599c0..37f0f59 100644
--- a/SOURCES/kernel-aarch64-debug-fedora.config
+++ b/SOURCES/kernel-aarch64-debug-fedora.config
@@ -1064,6 +1064,7 @@ CONFIG_CLK_BCM2835=y
CONFIG_CLKDEV_LOOKUP=y
# CONFIG_CLK_GFM_LPASS_SM8250 is not set
# CONFIG_CLK_HSDK is not set
+CONFIG_CLK_ICST=y
CONFIG_CLK_IMX8MM=y
CONFIG_CLK_IMX8MN=y
CONFIG_CLK_IMX8MP=y
@@ -1121,7 +1122,7 @@ CONFIG_CMDLINE_FROM_BOOTLOADER=y
CONFIG_CNIC=m
# CONFIG_CODA_FS is not set
# CONFIG_COMEDI is not set
-# CONFIG_COMMON_CLK_AXG_AUDIO is not set
+CONFIG_COMMON_CLK_AXG_AUDIO=y
CONFIG_COMMON_CLK_AXG=y
CONFIG_COMMON_CLK_AXI_CLKGEN=m
CONFIG_COMMON_CLK_BD718XX=m
@@ -5501,6 +5502,7 @@ CONFIG_QCOM_SPMI_ADC5=m
CONFIG_QCOM_SPMI_IADC=m
CONFIG_QCOM_SPMI_TEMP_ALARM=m
CONFIG_QCOM_SPMI_VADC=m
+CONFIG_QCOM_SPM=y
CONFIG_QCOM_SYSMON=m
CONFIG_QCOM_TSENS=m
CONFIG_QCOM_WCNSS_CTRL=m
diff --git a/SOURCES/kernel-aarch64-fedora.config b/SOURCES/kernel-aarch64-fedora.config
index a91f30f..bb28054 100644
--- a/SOURCES/kernel-aarch64-fedora.config
+++ b/SOURCES/kernel-aarch64-fedora.config
@@ -1064,6 +1064,7 @@ CONFIG_CLK_BCM2835=y
CONFIG_CLKDEV_LOOKUP=y
# CONFIG_CLK_GFM_LPASS_SM8250 is not set
# CONFIG_CLK_HSDK is not set
+CONFIG_CLK_ICST=y
CONFIG_CLK_IMX8MM=y
CONFIG_CLK_IMX8MN=y
CONFIG_CLK_IMX8MP=y
@@ -1121,7 +1122,7 @@ CONFIG_CMDLINE_FROM_BOOTLOADER=y
CONFIG_CNIC=m
# CONFIG_CODA_FS is not set
# CONFIG_COMEDI is not set
-# CONFIG_COMMON_CLK_AXG_AUDIO is not set
+CONFIG_COMMON_CLK_AXG_AUDIO=y
CONFIG_COMMON_CLK_AXG=y
CONFIG_COMMON_CLK_AXI_CLKGEN=m
CONFIG_COMMON_CLK_BD718XX=m
@@ -5478,6 +5479,7 @@ CONFIG_QCOM_SPMI_ADC5=m
CONFIG_QCOM_SPMI_IADC=m
CONFIG_QCOM_SPMI_TEMP_ALARM=m
CONFIG_QCOM_SPMI_VADC=m
+CONFIG_QCOM_SPM=y
CONFIG_QCOM_SYSMON=m
CONFIG_QCOM_TSENS=m
CONFIG_QCOM_WCNSS_CTRL=m
diff --git a/SOURCES/kernel-armv7hl-debug-fedora.config b/SOURCES/kernel-armv7hl-debug-fedora.config
index a475672..e051bd0 100644
--- a/SOURCES/kernel-armv7hl-debug-fedora.config
+++ b/SOURCES/kernel-armv7hl-debug-fedora.config
@@ -1086,6 +1086,7 @@ CONFIG_CLK_BCM2711_DVP=m
CONFIG_CLK_BCM2835=y
# CONFIG_CLK_GFM_LPASS_SM8250 is not set
# CONFIG_CLK_HSDK is not set
+CONFIG_CLK_ICST=y
CONFIG_CLK_IMX8MM=y
CONFIG_CLK_IMX8MN=y
CONFIG_CLK_IMX8MP=y
@@ -1141,7 +1142,7 @@ CONFIG_CMDLINE_FROM_BOOTLOADER=y
CONFIG_CNIC=m
# CONFIG_CODA_FS is not set
# CONFIG_COMEDI is not set
-# CONFIG_COMMON_CLK_AXG_AUDIO is not set
+CONFIG_COMMON_CLK_AXG_AUDIO=y
CONFIG_COMMON_CLK_AXI_CLKGEN=m
# CONFIG_COMMON_CLK_CDCE706 is not set
# CONFIG_COMMON_CLK_CDCE925 is not set
@@ -5597,6 +5598,7 @@ CONFIG_QCOM_SPMI_ADC5=m
CONFIG_QCOM_SPMI_IADC=m
CONFIG_QCOM_SPMI_TEMP_ALARM=m
CONFIG_QCOM_SPMI_VADC=m
+CONFIG_QCOM_SPM=y
# CONFIG_QCOM_SYSMON is not set
CONFIG_QCOM_TSENS=m
CONFIG_QCOM_WCNSS_CTRL=m
diff --git a/SOURCES/kernel-armv7hl-fedora.config b/SOURCES/kernel-armv7hl-fedora.config
index 872ca0b..6e67c6f 100644
--- a/SOURCES/kernel-armv7hl-fedora.config
+++ b/SOURCES/kernel-armv7hl-fedora.config
@@ -1086,6 +1086,7 @@ CONFIG_CLK_BCM2711_DVP=m
CONFIG_CLK_BCM2835=y
# CONFIG_CLK_GFM_LPASS_SM8250 is not set
# CONFIG_CLK_HSDK is not set
+CONFIG_CLK_ICST=y
CONFIG_CLK_IMX8MM=y
CONFIG_CLK_IMX8MN=y
CONFIG_CLK_IMX8MP=y
@@ -1141,7 +1142,7 @@ CONFIG_CMDLINE_FROM_BOOTLOADER=y
CONFIG_CNIC=m
# CONFIG_CODA_FS is not set
# CONFIG_COMEDI is not set
-# CONFIG_COMMON_CLK_AXG_AUDIO is not set
+CONFIG_COMMON_CLK_AXG_AUDIO=y
CONFIG_COMMON_CLK_AXI_CLKGEN=m
# CONFIG_COMMON_CLK_CDCE706 is not set
# CONFIG_COMMON_CLK_CDCE925 is not set
@@ -5575,6 +5576,7 @@ CONFIG_QCOM_SPMI_ADC5=m
CONFIG_QCOM_SPMI_IADC=m
CONFIG_QCOM_SPMI_TEMP_ALARM=m
CONFIG_QCOM_SPMI_VADC=m
+CONFIG_QCOM_SPM=y
# CONFIG_QCOM_SYSMON is not set
CONFIG_QCOM_TSENS=m
CONFIG_QCOM_WCNSS_CTRL=m
diff --git a/SOURCES/kernel-armv7hl-lpae-debug-fedora.config b/SOURCES/kernel-armv7hl-lpae-debug-fedora.config
index 19239f7..0185bff 100644
--- a/SOURCES/kernel-armv7hl-lpae-debug-fedora.config
+++ b/SOURCES/kernel-armv7hl-lpae-debug-fedora.config
@@ -1060,6 +1060,7 @@ CONFIG_CLK_BCM2711_DVP=m
CONFIG_CLK_BCM2835=y
# CONFIG_CLK_GFM_LPASS_SM8250 is not set
# CONFIG_CLK_HSDK is not set
+CONFIG_CLK_ICST=y
CONFIG_CLK_IMX8MM=y
CONFIG_CLK_IMX8MN=y
CONFIG_CLK_IMX8MP=y
@@ -1114,7 +1115,7 @@ CONFIG_CMDLINE_FROM_BOOTLOADER=y
CONFIG_CNIC=m
# CONFIG_CODA_FS is not set
# CONFIG_COMEDI is not set
-# CONFIG_COMMON_CLK_AXG_AUDIO is not set
+CONFIG_COMMON_CLK_AXG_AUDIO=y
CONFIG_COMMON_CLK_AXI_CLKGEN=m
# CONFIG_COMMON_CLK_CDCE706 is not set
# CONFIG_COMMON_CLK_CDCE925 is not set
@@ -5443,6 +5444,7 @@ CONFIG_QCOM_SCM=y
CONFIG_QCOM_SOCINFO=m
CONFIG_QCOM_SPMI_ADC5=m
# CONFIG_QCOM_SPMI_ADC_TM5 is not set
+CONFIG_QCOM_SPM=y
CONFIG_QCS_GCC_404=m
# CONFIG_QCS_Q6SSTOP_404 is not set
# CONFIG_QCS_TURING_404 is not set
diff --git a/SOURCES/kernel-armv7hl-lpae-fedora.config b/SOURCES/kernel-armv7hl-lpae-fedora.config
index 24d8ddb..80f98ab 100644
--- a/SOURCES/kernel-armv7hl-lpae-fedora.config
+++ b/SOURCES/kernel-armv7hl-lpae-fedora.config
@@ -1060,6 +1060,7 @@ CONFIG_CLK_BCM2711_DVP=m
CONFIG_CLK_BCM2835=y
# CONFIG_CLK_GFM_LPASS_SM8250 is not set
# CONFIG_CLK_HSDK is not set
+CONFIG_CLK_ICST=y
CONFIG_CLK_IMX8MM=y
CONFIG_CLK_IMX8MN=y
CONFIG_CLK_IMX8MP=y
@@ -1114,7 +1115,7 @@ CONFIG_CMDLINE_FROM_BOOTLOADER=y
CONFIG_CNIC=m
# CONFIG_CODA_FS is not set
# CONFIG_COMEDI is not set
-# CONFIG_COMMON_CLK_AXG_AUDIO is not set
+CONFIG_COMMON_CLK_AXG_AUDIO=y
CONFIG_COMMON_CLK_AXI_CLKGEN=m
# CONFIG_COMMON_CLK_CDCE706 is not set
# CONFIG_COMMON_CLK_CDCE925 is not set
@@ -5421,6 +5422,7 @@ CONFIG_QCOM_SCM=y
CONFIG_QCOM_SOCINFO=m
CONFIG_QCOM_SPMI_ADC5=m
# CONFIG_QCOM_SPMI_ADC_TM5 is not set
+CONFIG_QCOM_SPM=y
CONFIG_QCS_GCC_404=m
# CONFIG_QCS_Q6SSTOP_404 is not set
# CONFIG_QCS_TURING_404 is not set
diff --git a/SOURCES/kernel-i686-debug-fedora.config b/SOURCES/kernel-i686-debug-fedora.config
index 72feaa8..26a5cc3 100644
--- a/SOURCES/kernel-i686-debug-fedora.config
+++ b/SOURCES/kernel-i686-debug-fedora.config
@@ -916,7 +916,7 @@ CONFIG_CMDLINE_FROM_BOOTLOADER=y
CONFIG_CNIC=m
CONFIG_CODA_FS=m
# CONFIG_COMEDI is not set
-# CONFIG_COMMON_CLK_AXG_AUDIO is not set
+CONFIG_COMMON_CLK_AXG_AUDIO=y
CONFIG_COMMON_CLK_AXI_CLKGEN=m
# CONFIG_COMMON_CLK_CDCE706 is not set
# CONFIG_COMMON_CLK_CDCE925 is not set
diff --git a/SOURCES/kernel-i686-fedora.config b/SOURCES/kernel-i686-fedora.config
index ee74ff9..a40305f 100644
--- a/SOURCES/kernel-i686-fedora.config
+++ b/SOURCES/kernel-i686-fedora.config
@@ -915,7 +915,7 @@ CONFIG_CMDLINE_FROM_BOOTLOADER=y
CONFIG_CNIC=m
CONFIG_CODA_FS=m
# CONFIG_COMEDI is not set
-# CONFIG_COMMON_CLK_AXG_AUDIO is not set
+CONFIG_COMMON_CLK_AXG_AUDIO=y
CONFIG_COMMON_CLK_AXI_CLKGEN=m
# CONFIG_COMMON_CLK_CDCE706 is not set
# CONFIG_COMMON_CLK_CDCE925 is not set
diff --git a/SOURCES/kernel-ppc64le-debug-fedora.config b/SOURCES/kernel-ppc64le-debug-fedora.config
index 7ef64b1..1d88022 100644
--- a/SOURCES/kernel-ppc64le-debug-fedora.config
+++ b/SOURCES/kernel-ppc64le-debug-fedora.config
@@ -867,7 +867,7 @@ CONFIG_CNIC=m
CONFIG_CODA_FS=m
# CONFIG_CODE_PATCHING_SELFTEST is not set
# CONFIG_COMEDI is not set
-# CONFIG_COMMON_CLK_AXG_AUDIO is not set
+CONFIG_COMMON_CLK_AXG_AUDIO=y
CONFIG_COMMON_CLK_AXI_CLKGEN=m
# CONFIG_COMMON_CLK_CDCE706 is not set
# CONFIG_COMMON_CLK_CDCE925 is not set
diff --git a/SOURCES/kernel-ppc64le-fedora.config b/SOURCES/kernel-ppc64le-fedora.config
index 53b2125..98d8afc 100644
--- a/SOURCES/kernel-ppc64le-fedora.config
+++ b/SOURCES/kernel-ppc64le-fedora.config
@@ -866,7 +866,7 @@ CONFIG_CNIC=m
CONFIG_CODA_FS=m
# CONFIG_CODE_PATCHING_SELFTEST is not set
# CONFIG_COMEDI is not set
-# CONFIG_COMMON_CLK_AXG_AUDIO is not set
+CONFIG_COMMON_CLK_AXG_AUDIO=y
CONFIG_COMMON_CLK_AXI_CLKGEN=m
# CONFIG_COMMON_CLK_CDCE706 is not set
# CONFIG_COMMON_CLK_CDCE925 is not set
diff --git a/SOURCES/kernel-s390x-debug-fedora.config b/SOURCES/kernel-s390x-debug-fedora.config
index a5406be..4f4259c 100644
--- a/SOURCES/kernel-s390x-debug-fedora.config
+++ b/SOURCES/kernel-s390x-debug-fedora.config
@@ -874,7 +874,7 @@ CONFIG_CMM=m
CONFIG_CNIC=m
CONFIG_CODA_FS=m
# CONFIG_COMEDI is not set
-# CONFIG_COMMON_CLK_AXG_AUDIO is not set
+CONFIG_COMMON_CLK_AXG_AUDIO=y
CONFIG_COMMON_CLK_AXI_CLKGEN=m
# CONFIG_COMMON_CLK_CDCE706 is not set
# CONFIG_COMMON_CLK_CDCE925 is not set
diff --git a/SOURCES/kernel-s390x-fedora.config b/SOURCES/kernel-s390x-fedora.config
index 3380c15..8ecf744 100644
--- a/SOURCES/kernel-s390x-fedora.config
+++ b/SOURCES/kernel-s390x-fedora.config
@@ -873,7 +873,7 @@ CONFIG_CMM=m
CONFIG_CNIC=m
CONFIG_CODA_FS=m
# CONFIG_COMEDI is not set
-# CONFIG_COMMON_CLK_AXG_AUDIO is not set
+CONFIG_COMMON_CLK_AXG_AUDIO=y
CONFIG_COMMON_CLK_AXI_CLKGEN=m
# CONFIG_COMMON_CLK_CDCE706 is not set
# CONFIG_COMMON_CLK_CDCE925 is not set
diff --git a/SOURCES/kernel-x86_64-debug-fedora.config b/SOURCES/kernel-x86_64-debug-fedora.config
index fdc5bb7..bae2bca 100644
--- a/SOURCES/kernel-x86_64-debug-fedora.config
+++ b/SOURCES/kernel-x86_64-debug-fedora.config
@@ -930,7 +930,7 @@ CONFIG_CMDLINE_FROM_BOOTLOADER=y
CONFIG_CNIC=m
CONFIG_CODA_FS=m
# CONFIG_COMEDI is not set
-# CONFIG_COMMON_CLK_AXG_AUDIO is not set
+CONFIG_COMMON_CLK_AXG_AUDIO=y
CONFIG_COMMON_CLK_AXI_CLKGEN=m
# CONFIG_COMMON_CLK_CDCE706 is not set
# CONFIG_COMMON_CLK_CDCE925 is not set
diff --git a/SOURCES/kernel-x86_64-fedora.config b/SOURCES/kernel-x86_64-fedora.config
index be2ca4f..39b3ee2 100644
--- a/SOURCES/kernel-x86_64-fedora.config
+++ b/SOURCES/kernel-x86_64-fedora.config
@@ -929,7 +929,7 @@ CONFIG_CMDLINE_FROM_BOOTLOADER=y
CONFIG_CNIC=m
CONFIG_CODA_FS=m
# CONFIG_COMEDI is not set
-# CONFIG_COMMON_CLK_AXG_AUDIO is not set
+CONFIG_COMMON_CLK_AXG_AUDIO=y
CONFIG_COMMON_CLK_AXI_CLKGEN=m
# CONFIG_COMMON_CLK_CDCE706 is not set
# CONFIG_COMMON_CLK_CDCE925 is not set
diff --git a/SOURCES/patch-5.14-redhat.patch b/SOURCES/patch-5.14-redhat.patch
index e2d266b..e7e1bce 100644
--- a/SOURCES/patch-5.14-redhat.patch
+++ b/SOURCES/patch-5.14-redhat.patch
@@ -23,9 +23,8 @@
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/btrfs/async-thread.c | 14 +
fs/xfs/xfs_super.c | 8 -
include/linux/efi.h | 22 +-
include/linux/lsm_hook_defs.h | 2 +
@@ -33,7 +32,6 @@
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 +
@@ -55,7 +53,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 ---
- 57 files changed, 677 insertions(+), 1520 deletions(-)
+ 55 files changed, 685 insertions(+), 1494 deletions(-)
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 110b305af27f..488feec76f0a 100644
@@ -1333,76 +1331,6 @@ 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
@@ -1421,18 +1349,38 @@ 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/btrfs/async-thread.c b/fs/btrfs/async-thread.c
+index 309516e6a968..d39af03b456c 100644
+--- a/fs/btrfs/async-thread.c
++++ b/fs/btrfs/async-thread.c
+@@ -234,6 +234,13 @@ static void run_ordered_work(struct __btrfs_workqueue *wq,
+ ordered_list);
+ if (!test_bit(WORK_DONE_BIT, &work->flags))
+ break;
++ /*
++ * Orders all subsequent loads after reading WORK_DONE_BIT,
++ * paired with the smp_mb__before_atomic in btrfs_work_helper
++ * this guarantees that the ordered function will see all
++ * updates from ordinary work function.
++ */
++ smp_rmb();
+
+ /*
+ * we are going to call the ordered done function, but
+@@ -317,6 +324,13 @@ static void btrfs_work_helper(struct work_struct *normal_work)
+ thresh_exec_hook(wq);
+ work->func(work);
+ if (need_order) {
++ /*
++ * Ensures all memory accesses done in the work function are
++ * ordered before setting the WORK_DONE_BIT.Ensuring the thread
++ * which is going to executed the ordered work sees them.
++ * Pairs with the smp_rmb in run_ordered_work.
++ */
++ smp_mb__before_atomic();
+ set_bit(WORK_DONE_BIT, &work->flags);
+ run_ordered_work(wq, work);
+ } else {
diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c
index 2c9e26a44546..f96324912d6a 100644
--- a/fs/xfs/xfs_super.c
@@ -1617,26 +1565,6 @@ 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