diff options
author | Felix Fietkau <nbd@openwrt.org> | 2011-06-01 02:23:22 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2011-06-01 02:23:22 +0000 |
commit | 56dd5c4388d44cc116841519b819acf2852fcf6c (patch) | |
tree | 88a8ece3c5f83a40059edd930a2022c315091dab | |
parent | 628cb35179da748c9358c79dff4f5944dd8bd596 (diff) | |
download | upstream-56dd5c4388d44cc116841519b819acf2852fcf6c.tar.gz upstream-56dd5c4388d44cc116841519b819acf2852fcf6c.tar.bz2 upstream-56dd5c4388d44cc116841519b819acf2852fcf6c.zip |
fix a crash in mtd_concat when the .sync op is not implemented
SVN-Revision: 27074
3 files changed, 36 insertions, 0 deletions
diff --git a/target/linux/generic/patches-2.6.37/475-mtd_concat_sync_fix.patch b/target/linux/generic/patches-2.6.37/475-mtd_concat_sync_fix.patch new file mode 100644 index 0000000000..4e3426b7bd --- /dev/null +++ b/target/linux/generic/patches-2.6.37/475-mtd_concat_sync_fix.patch @@ -0,0 +1,12 @@ +--- a/drivers/mtd/mtdconcat.c ++++ b/drivers/mtd/mtdconcat.c +@@ -619,7 +619,8 @@ static void concat_sync(struct mtd_info + + for (i = 0; i < concat->num_subdev; i++) { + struct mtd_info *subdev = concat->subdev[i]; +- subdev->sync(subdev); ++ if (subdev->sync) ++ subdev->sync(subdev); + } + } + diff --git a/target/linux/generic/patches-2.6.38/474-mtd_concat_sync_fix.patch b/target/linux/generic/patches-2.6.38/474-mtd_concat_sync_fix.patch new file mode 100644 index 0000000000..4e3426b7bd --- /dev/null +++ b/target/linux/generic/patches-2.6.38/474-mtd_concat_sync_fix.patch @@ -0,0 +1,12 @@ +--- a/drivers/mtd/mtdconcat.c ++++ b/drivers/mtd/mtdconcat.c +@@ -619,7 +619,8 @@ static void concat_sync(struct mtd_info + + for (i = 0; i < concat->num_subdev; i++) { + struct mtd_info *subdev = concat->subdev[i]; +- subdev->sync(subdev); ++ if (subdev->sync) ++ subdev->sync(subdev); + } + } + diff --git a/target/linux/generic/patches-2.6.39/474-mtd_concat_sync_fix.patch b/target/linux/generic/patches-2.6.39/474-mtd_concat_sync_fix.patch new file mode 100644 index 0000000000..4e3426b7bd --- /dev/null +++ b/target/linux/generic/patches-2.6.39/474-mtd_concat_sync_fix.patch @@ -0,0 +1,12 @@ +--- a/drivers/mtd/mtdconcat.c ++++ b/drivers/mtd/mtdconcat.c +@@ -619,7 +619,8 @@ static void concat_sync(struct mtd_info + + for (i = 0; i < concat->num_subdev; i++) { + struct mtd_info *subdev = concat->subdev[i]; +- subdev->sync(subdev); ++ if (subdev->sync) ++ subdev->sync(subdev); + } + } + |