summaryrefslogtreecommitdiffstats
path: root/target/linux/generic/patches-3.14/045-UBI-block-Remove-__initdata-from-ubiblock_param_ops.patch
diff options
context:
space:
mode:
authorJohn Crispin <john@openwrt.org>2014-06-11 12:59:06 +0000
committerJohn Crispin <john@openwrt.org>2014-06-11 12:59:06 +0000
commitd494983d020035cacd8d8023afad22d2761fa7fc (patch)
treefd94c75873c35abbaebf7fd3e12f093e147ce4f1 /target/linux/generic/patches-3.14/045-UBI-block-Remove-__initdata-from-ubiblock_param_ops.patch
parentba59fab9bbafce7754ef426d267e6ad9f381ed73 (diff)
downloadmaster-31e0f0ae-d494983d020035cacd8d8023afad22d2761fa7fc.tar.gz
master-31e0f0ae-d494983d020035cacd8d8023afad22d2761fa7fc.tar.bz2
master-31e0f0ae-d494983d020035cacd8d8023afad22d2761fa7fc.zip
kernel: backport ubiblock support from 3.15
Backport ubiblock support from kernel 3.15 as well as all follow-up fixes related to ubiblock. Signed-off-by: Daniel Golle <daniel@makrotopia.org> create mode 100644 target/linux/generic/patches-3.14/040-UBI-R-O-block-driver-on-top-of-UBI-volumes.patch create mode 100644 target/linux/generic/patches-3.14/041-UBI-block-do-not-use-term-attach.patch create mode 100644 target/linux/generic/patches-3.14/042-UBI-block-Mark-init-only-symbol-as-__initdata.patch create mode 100644 target/linux/generic/patches-3.14/043-UBI-block-Use-u64-for-the-64-bit-dividend.patch create mode 100644 target/linux/generic/patches-3.14/044-UBI-rename-block-device-ioctls.patch create mode 100644 target/linux/generic/patches-3.14/045-UBI-block-Remove-__initdata-from-ubiblock_param_ops.patch create mode 100644 target/linux/generic/patches-3.14/046-UBI-avoid-workqueue-format-string-leak.patch create mode 100644 target/linux/generic/patches-3.14/047-UBI-make-UBI_IOCVOLCRBLK-take-a-parameter-for-future.patch SVN-Revision: 41118
Diffstat (limited to 'target/linux/generic/patches-3.14/045-UBI-block-Remove-__initdata-from-ubiblock_param_ops.patch')
-rw-r--r--target/linux/generic/patches-3.14/045-UBI-block-Remove-__initdata-from-ubiblock_param_ops.patch35
1 files changed, 35 insertions, 0 deletions
diff --git a/target/linux/generic/patches-3.14/045-UBI-block-Remove-__initdata-from-ubiblock_param_ops.patch b/target/linux/generic/patches-3.14/045-UBI-block-Remove-__initdata-from-ubiblock_param_ops.patch
new file mode 100644
index 0000000000..f5ae72469b
--- /dev/null
+++ b/target/linux/generic/patches-3.14/045-UBI-block-Remove-__initdata-from-ubiblock_param_ops.patch
@@ -0,0 +1,35 @@
+From d56030ac25d383218045c5d87e98e0494d6af3ad Mon Sep 17 00:00:00 2001
+From: Richard Weinberger <richard@nod.at>
+Date: Wed, 19 Mar 2014 11:43:22 +0100
+Subject: [PATCH] UBI: block: Remove __initdata from ubiblock_param_ops
+
+You cannot mark these parameters as __initdata.
+Otherwise the data is gone upon module exit.
+
+Fixes:
+[ 172.045465] BUG: unable to handle kernel paging request at ffffffffa001db38
+[ 172.046020] IP: [<ffffffff81067aa4>] destroy_params+0x24/0x50
+
+Signed-off-by: Richard Weinberger <richard@nod.at>
+Acked-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
+Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
+---
+ drivers/mtd/ubi/block.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/mtd/ubi/block.c b/drivers/mtd/ubi/block.c
+index 69a74fd..7ff473c 100644
+--- a/drivers/mtd/ubi/block.c
++++ b/drivers/mtd/ubi/block.c
+@@ -156,7 +156,7 @@ static int __init ubiblock_set_param(const char *val,
+ return 0;
+ }
+
+-static struct kernel_param_ops ubiblock_param_ops __initdata = {
++static struct kernel_param_ops ubiblock_param_ops = {
+ .set = ubiblock_set_param,
+ };
+ module_param_cb(block, &ubiblock_param_ops, NULL, 0);
+--
+1.9.2
+