--- /dev/null
+From 2ba2b008a8bf5fd268a43d03ba79e0ad464d6836 Mon Sep 17 00:00:00 2001
+From: Naoya Horiguchi <naoya.horiguchi@nec.com>
+Date: Thu, 28 Apr 2022 23:16:02 -0700
+Subject: Revert "mm/memory-failure.c: fix race with changing page compound again"
+
+From: Naoya Horiguchi <naoya.horiguchi@nec.com>
+
+commit 2ba2b008a8bf5fd268a43d03ba79e0ad464d6836 upstream.
+
+Reverts commit 888af2701db7 ("mm/memory-failure.c: fix race with changing
+page compound again") because now we fetch the page refcount under
+hugetlb_lock in try_memory_failure_hugetlb() so that the race check is no
+longer necessary.
+
+Link: https://lkml.kernel.org/r/20220408135323.1559401-4-naoya.horiguchi@linux.dev
+Signed-off-by: Naoya Horiguchi <naoya.horiguchi@nec.com>
+Suggested-by: Miaohe Lin <linmiaohe@huawei.com>
+Reviewed-by: Miaohe Lin <linmiaohe@huawei.com>
+Reviewed-by: Mike Kravetz <mike.kravetz@oracle.com>
+Cc: Miaohe Lin <linmiaohe@huawei.com>
+Cc: Yang Shi <shy828301@gmail.com>
+Cc: Dan Carpenter <dan.carpenter@oracle.com>
+Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ include/linux/mm.h | 1 -
+ include/ras/ras_event.h | 1 -
+ mm/memory-failure.c | 11 -----------
+ 3 files changed, 13 deletions(-)
+
+--- a/include/linux/mm.h
++++ b/include/linux/mm.h
+@@ -3175,7 +3175,6 @@ enum mf_action_page_type {
+ MF_MSG_BUDDY_2ND,
+ MF_MSG_DAX,
+ MF_MSG_UNSPLIT_THP,
+- MF_MSG_DIFFERENT_PAGE_SIZE,
+ MF_MSG_UNKNOWN,
+ };
+
+--- a/include/ras/ras_event.h
++++ b/include/ras/ras_event.h
+@@ -376,7 +376,6 @@ TRACE_EVENT(aer_event,
+ EM ( MF_MSG_BUDDY_2ND, "free buddy page (2nd try)" ) \
+ EM ( MF_MSG_DAX, "dax page" ) \
+ EM ( MF_MSG_UNSPLIT_THP, "unsplit thp" ) \
+- EM ( MF_MSG_DIFFERENT_PAGE_SIZE, "different page size" ) \
+ EMe ( MF_MSG_UNKNOWN, "unknown page" )
+
+ /*
+--- a/mm/memory-failure.c
++++ b/mm/memory-failure.c
+@@ -741,7 +741,6 @@ static const char * const action_page_ty
+ [MF_MSG_BUDDY_2ND] = "free buddy page (2nd try)",
+ [MF_MSG_DAX] = "dax page",
+ [MF_MSG_UNSPLIT_THP] = "unsplit thp",
+- [MF_MSG_DIFFERENT_PAGE_SIZE] = "different page size",
+ [MF_MSG_UNKNOWN] = "unknown page",
+ };
+
+@@ -1526,16 +1525,6 @@ retry:
+ return res == MF_RECOVERED ? 0 : -EBUSY;
+ }
+
+- /*
+- * The page could have changed compound pages due to race window.
+- * If this happens just bail out.
+- */
+- if (!PageHuge(p) || compound_head(p) != head) {
+- action_result(pfn, MF_MSG_DIFFERENT_PAGE_SIZE, MF_IGNORED);
+- res = -EBUSY;
+- goto out;
+- }
+-
+ page_flags = head->flags;
+
+ /*
--- /dev/null
+From f0136f65285bcfb7e8f90d1013723076a35acd51 Mon Sep 17 00:00:00 2001
+From: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
+Date: Tue, 10 May 2022 14:26:20 +0200
+Subject: Revert "serial: 8250_mtk: Make sure to select the right FEATURE_SEL"
+
+From: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
+
+commit f0136f65285bcfb7e8f90d1013723076a35acd51 upstream.
+
+It was found that some MediaTek SoCs are incompatible with this
+change. Also, this register was mistakenly understood as it was
+related to the 16550A register layout selection but, at least
+on some IPs, if not all, it's related to something else unknown.
+
+This reverts commit 6f81fdded0d024c7d4084d434764f30bca1cd6b1.
+
+Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
+Fixes: 6f81fdded0d0 ("serial: 8250_mtk: Make sure to select the right FEATURE_SEL")
+Reported-by: "kernelci.org bot" <bot@kernelci.org>
+Link: https://lore.kernel.org/r/20220510122620.150342-1-angelogioacchino.delregno@collabora.com
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/tty/serial/8250/8250_mtk.c | 7 -------
+ 1 file changed, 7 deletions(-)
+
+--- a/drivers/tty/serial/8250/8250_mtk.c
++++ b/drivers/tty/serial/8250/8250_mtk.c
+@@ -57,9 +57,6 @@
+ #define MTK_UART_XON1 40 /* I/O: Xon character 1 */
+ #define MTK_UART_XOFF1 42 /* I/O: Xoff character 1 */
+
+-#define MTK_UART_FEATURE_SEL 39 /* Feature Selection register */
+-#define MTK_UART_FEAT_NEWRMAP BIT(0) /* Use new register map */
+-
+ #ifdef CONFIG_SERIAL_8250_DMA
+ enum dma_rx_status {
+ DMA_RX_START = 0,
+@@ -575,10 +572,6 @@ static int mtk8250_probe(struct platform
+ uart.dma = data->dma;
+ #endif
+
+- /* Set AP UART new register map */
+- writel(MTK_UART_FEAT_NEWRMAP, uart.port.membase +
+- (MTK_UART_FEATURE_SEL << uart.port.regshift));
+-
+ /* Disable Rate Fix function */
+ writel(0x0, uart.port.membase +
+ (MTK_UART_RATE_FIX << uart.port.regshift));