kernel: bump 6.1 to 6.1.39
Removed upstreamed: generic/backport-6.1/803-v6.5-01-leds-trigger-netdev-Recheck-NETDEV_LED_MODE_LINKUP-o.patch[1] generic/pending-6.1/143-jffs2-reduce-stack-usage-in-jffs2_build_xattr_subsys.patch[2] bcm27xx/patches-6.1/950-0034-drm-bridge-Introduce-pre_enable_upstream_first-to-al.patch[3] bcm27xx/patches-6.1/950-0439-nvmem-Use-NVMEM_DEVID_AUTO.patch[4] bcm4908/patches-6.1/040-mtd-parsers-refer-to-ARCH_BCMBCA-instead-of-ARCH_BCM.patch[5] bcm53xx/patches-6.1/031-v6.5-0003-ARM-dts-BCM5301X-Drop-clock-names-from-the-SPI-node.patch[6] bcm53xx/patches-6.1/031-v6.5-0015-ARM-dts-BCM5301X-fix-duplex-full-full-duplex.patch[7] mediatek/patches-6.1/351-cpufreq-mediatek-correct-voltages-for-MT7622-and-MT7.patch[8] qualcommax/patches-6.1/0008-v6.2-clk-qcom-reset-support-resetting-multiple-bits.patch[9] Manually rebased: bcm27xx/patches-6.1/950-0035-drm-panel-Add-prepare_upstream_first-flag-to-drm_pan.patch bcm27xx/patches-6.1/950-0404-drm-panel-panel-ilitek9881c-Add-prepare_upstream_fir.patch bcm27xx/patches-6.1/950-0699-Bluetooth-hci_sync-Add-fallback-bd-address-prop.patch mediatek/patches-6.1/350-21-cpufreq-mediatek-Add-support-for-MT7988.patch All other patches automatically rebased. 1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.39&id=ab0bd172d6289310a05a0cd15e1432e828d386ae 2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.39&id=6df680709d901346831ef8f221cc90a42062c526 3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.39&id=5044e5f2511c9afdf9880d2bb6b9d37dfc345dac 4. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.39&id=e27948f329f7e02591ed1feb9a7710c2ccf89a83 5. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.39&id=ad2928e7f3f6120a0bd18aa1056b3b24068027c5 6. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.39&id=2b55a985727833f37c39911f34096b3fdf2a367d 7. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.39&id=90d4c487cd658b51212eb65ae804ab11af193672 8. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.39&id=7e3ee25e8c7c7be1eacdfc6d9f5f0e550a2af241 9. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.39&id=b20854ef6c4955be3310975a72f02d92cb01d6d4 Build system: x86/64 Build-tested: x86/64 Run-tested: x86/64 Co-authored-by: Hauke Mehrtens <hauke@hauke-m.de> Co-authored-by: Christian Marangi <ansuelsmth@gmail.com> Signed-off-by: John Audia <therealgraysky@proton.me> [ rebase bcm27xx and mediatek patches, refresh commit description ] Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> [ minor fixup to bcm27xx patches, refresh commit description ] Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
This commit is contained in:
committed by
Hauke Mehrtens
parent
a110de8152
commit
fec22f8375
@@ -1,121 +0,0 @@
|
||||
From eee53f6eb7561f516b9c4bac829ce31c48096130 Mon Sep 17 00:00:00 2001
|
||||
From: Fabian Frederick <fabf@skynet.be>
|
||||
Date: Tue, 9 May 2017 22:30:03 +0200
|
||||
Subject: [PATCH] jffs2: reduce stack usage in jffs2_build_xattr_subsystem()
|
||||
|
||||
Use kcalloc() for allocation/flush of 128 pointers table to
|
||||
reduce stack usage.
|
||||
|
||||
Function now returns -ENOMEM or 0 on success.
|
||||
|
||||
stackusage
|
||||
Before:
|
||||
./fs/jffs2/xattr.c:775 jffs2_build_xattr_subsystem 1208
|
||||
dynamic,bounded
|
||||
|
||||
After:
|
||||
./fs/jffs2/xattr.c:775 jffs2_build_xattr_subsystem 192
|
||||
dynamic,bounded
|
||||
|
||||
Also update definition when CONFIG_JFFS2_FS_XATTR is not enabled
|
||||
|
||||
Tested with an MTD mount point and some user set/getfattr.
|
||||
|
||||
Many current target on OpenWRT also suffer from a compilation warning
|
||||
(that become an error with CONFIG_WERROR) with the following output:
|
||||
|
||||
fs/jffs2/xattr.c: In function 'jffs2_build_xattr_subsystem':
|
||||
fs/jffs2/xattr.c:887:1: error: the frame size of 1088 bytes is larger than 1024 bytes [-Werror=frame-larger-than=]
|
||||
887 | }
|
||||
| ^
|
||||
|
||||
Using dynamic allocation fix this compilation warning.
|
||||
|
||||
Fixes: c9f700f840bd ("[JFFS2][XATTR] using 'delete marker' for xdatum/xref deletion")
|
||||
Reported-by: Tim Gardner <tim.gardner@canonical.com>
|
||||
Reported-by: kernel test robot <lkp@intel.com>
|
||||
Reported-by: Ron Economos <re@w6rz.net>
|
||||
Reported-by: Nathan Chancellor <nathan@kernel.org>
|
||||
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
|
||||
Signed-off-by: Fabian Frederick <fabf@skynet.be>
|
||||
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
||||
Cc: stable@vger.kernel.org
|
||||
---
|
||||
fs/jffs2/build.c | 5 ++++-
|
||||
fs/jffs2/xattr.c | 13 +++++++++----
|
||||
fs/jffs2/xattr.h | 4 ++--
|
||||
3 files changed, 15 insertions(+), 7 deletions(-)
|
||||
|
||||
--- a/fs/jffs2/build.c
|
||||
+++ b/fs/jffs2/build.c
|
||||
@@ -211,7 +211,10 @@ static int jffs2_build_filesystem(struct
|
||||
ic->scan_dents = NULL;
|
||||
cond_resched();
|
||||
}
|
||||
- jffs2_build_xattr_subsystem(c);
|
||||
+ ret = jffs2_build_xattr_subsystem(c);
|
||||
+ if (ret)
|
||||
+ goto exit;
|
||||
+
|
||||
c->flags &= ~JFFS2_SB_FLAG_BUILDING;
|
||||
|
||||
dbg_fsbuild("FS build complete\n");
|
||||
--- a/fs/jffs2/xattr.c
|
||||
+++ b/fs/jffs2/xattr.c
|
||||
@@ -772,10 +772,10 @@ void jffs2_clear_xattr_subsystem(struct
|
||||
}
|
||||
|
||||
#define XREF_TMPHASH_SIZE (128)
|
||||
-void jffs2_build_xattr_subsystem(struct jffs2_sb_info *c)
|
||||
+int jffs2_build_xattr_subsystem(struct jffs2_sb_info *c)
|
||||
{
|
||||
struct jffs2_xattr_ref *ref, *_ref;
|
||||
- struct jffs2_xattr_ref *xref_tmphash[XREF_TMPHASH_SIZE];
|
||||
+ struct jffs2_xattr_ref **xref_tmphash;
|
||||
struct jffs2_xattr_datum *xd, *_xd;
|
||||
struct jffs2_inode_cache *ic;
|
||||
struct jffs2_raw_node_ref *raw;
|
||||
@@ -784,9 +784,12 @@ void jffs2_build_xattr_subsystem(struct
|
||||
|
||||
BUG_ON(!(c->flags & JFFS2_SB_FLAG_BUILDING));
|
||||
|
||||
+ xref_tmphash = kcalloc(XREF_TMPHASH_SIZE,
|
||||
+ sizeof(struct jffs2_xattr_ref *), GFP_KERNEL);
|
||||
+ if (!xref_tmphash)
|
||||
+ return -ENOMEM;
|
||||
+
|
||||
/* Phase.1 : Merge same xref */
|
||||
- for (i=0; i < XREF_TMPHASH_SIZE; i++)
|
||||
- xref_tmphash[i] = NULL;
|
||||
for (ref=c->xref_temp; ref; ref=_ref) {
|
||||
struct jffs2_xattr_ref *tmp;
|
||||
|
||||
@@ -884,6 +887,8 @@ void jffs2_build_xattr_subsystem(struct
|
||||
"%u of xref (%u dead, %u orphan) found.\n",
|
||||
xdatum_count, xdatum_unchecked_count, xdatum_orphan_count,
|
||||
xref_count, xref_dead_count, xref_orphan_count);
|
||||
+ kfree(xref_tmphash);
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
struct jffs2_xattr_datum *jffs2_setup_xattr_datum(struct jffs2_sb_info *c,
|
||||
--- a/fs/jffs2/xattr.h
|
||||
+++ b/fs/jffs2/xattr.h
|
||||
@@ -71,7 +71,7 @@ static inline int is_xattr_ref_dead(stru
|
||||
#ifdef CONFIG_JFFS2_FS_XATTR
|
||||
|
||||
extern void jffs2_init_xattr_subsystem(struct jffs2_sb_info *c);
|
||||
-extern void jffs2_build_xattr_subsystem(struct jffs2_sb_info *c);
|
||||
+extern int jffs2_build_xattr_subsystem(struct jffs2_sb_info *c);
|
||||
extern void jffs2_clear_xattr_subsystem(struct jffs2_sb_info *c);
|
||||
|
||||
extern struct jffs2_xattr_datum *jffs2_setup_xattr_datum(struct jffs2_sb_info *c,
|
||||
@@ -103,7 +103,7 @@ extern ssize_t jffs2_listxattr(struct de
|
||||
#else
|
||||
|
||||
#define jffs2_init_xattr_subsystem(c)
|
||||
-#define jffs2_build_xattr_subsystem(c)
|
||||
+#define jffs2_build_xattr_subsystem(c) (0)
|
||||
#define jffs2_clear_xattr_subsystem(c)
|
||||
|
||||
#define jffs2_xattr_do_crccheck_inode(c, ic)
|
||||
@@ -161,7 +161,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
|
||||
struct rtnl_link {
|
||||
rtnl_doit_func doit;
|
||||
@@ -4817,7 +4817,9 @@ int ndo_dflt_bridge_getlink(struct sk_bu
|
||||
@@ -4823,7 +4823,9 @@ int ndo_dflt_bridge_getlink(struct sk_bu
|
||||
brport_nla_put_flag(skb, flags, mask,
|
||||
IFLA_BRPORT_MCAST_FLOOD, BR_MCAST_FLOOD) ||
|
||||
brport_nla_put_flag(skb, flags, mask,
|
||||
|
||||
Reference in New Issue
Block a user