diff options
author | Álvaro Fernández Rojas <noltari@gmail.com> | 2021-02-22 21:36:11 +0100 |
---|---|---|
committer | Álvaro Fernández Rojas <noltari@gmail.com> | 2021-02-22 21:37:56 +0100 |
commit | 117b833d61c0903e110b22cc2715041b606425e2 (patch) | |
tree | 1ea48d0a607b4f097797700255a9b35bb48bc4d8 /target/linux | |
parent | 626add3394f8ce3cfcb36a1afef25815e541ce46 (diff) | |
download | upstream-117b833d61c0903e110b22cc2715041b606425e2.tar.gz upstream-117b833d61c0903e110b22cc2715041b606425e2.tar.bz2 upstream-117b833d61c0903e110b22cc2715041b606425e2.zip |
bmips: add JFFS2 unaligned access patch
This patch is also needed on bmips if SMP is enabled.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Diffstat (limited to 'target/linux')
-rw-r--r-- | target/linux/bmips/patches-5.10/800-jffs2-work-around-unaligned-accesses-failing-on-bcm6.patch | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/target/linux/bmips/patches-5.10/800-jffs2-work-around-unaligned-accesses-failing-on-bcm6.patch b/target/linux/bmips/patches-5.10/800-jffs2-work-around-unaligned-accesses-failing-on-bcm6.patch new file mode 100644 index 0000000000..d98d27c6b4 --- /dev/null +++ b/target/linux/bmips/patches-5.10/800-jffs2-work-around-unaligned-accesses-failing-on-bcm6.patch @@ -0,0 +1,26 @@ +From ff3409ab17d56450943364ba49a16960e3cdda9b Mon Sep 17 00:00:00 2001 +From: Jonas Gorski <jogo@openwrt.org> +Date: Sun, 6 Apr 2014 22:33:16 +0200 +Subject: [RFC] jffs2: work around unaligned accesses failing on bcm63xx/smp + +Unligned memcpy_fromio randomly fails with an unaligned dst. Work around +it by ensuring we are always doing aligned copies. + +Should fix filename corruption in jffs2 with SMP. + +Signed-off-by: Jonas Gorski <jogo@openwrt.org> +--- + fs/jffs2/nodelist.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/fs/jffs2/nodelist.h ++++ b/fs/jffs2/nodelist.h +@@ -259,7 +259,7 @@ struct jffs2_full_dirent + uint32_t ino; /* == zero for unlink */ + unsigned int nhash; + unsigned char type; +- unsigned char name[]; ++ unsigned char name[] __attribute__((aligned((sizeof(long))))); + }; + + /* |