summaryrefslogtreecommitdiffstats
path: root/target/linux/generic/patches-2.6.39/067-block2mtd_2.6.38_fix.patch
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2011-04-12 19:39:20 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2011-04-12 19:39:20 +0000
commitcb86f32419462d984dfda5692e4f32ce577f451a (patch)
treeb39442bafc4ffd370397f3d5caeb7fe639cb9a86 /target/linux/generic/patches-2.6.39/067-block2mtd_2.6.38_fix.patch
parent562ffbf7a2cb37b7036186bb3ef1127d694bf664 (diff)
generic: Add support for 2.6.39
Add support for 2.6.39 based on rc3. Runtime tested on bcm63xx. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@26615 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/generic/patches-2.6.39/067-block2mtd_2.6.38_fix.patch')
-rw-r--r--target/linux/generic/patches-2.6.39/067-block2mtd_2.6.38_fix.patch35
1 files changed, 35 insertions, 0 deletions
diff --git a/target/linux/generic/patches-2.6.39/067-block2mtd_2.6.38_fix.patch b/target/linux/generic/patches-2.6.39/067-block2mtd_2.6.38_fix.patch
new file mode 100644
index 000000000..1a052b3f4
--- /dev/null
+++ b/target/linux/generic/patches-2.6.39/067-block2mtd_2.6.38_fix.patch
@@ -0,0 +1,35 @@
+--- a/drivers/mtd/devices/block2mtd.c
++++ b/drivers/mtd/devices/block2mtd.c
+@@ -264,12 +264,13 @@ static int _open_bdev(struct block2mtd_d
+ bdev = blkdev_get_by_path(dev->devname, mode, dev);
+ #ifndef MODULE
+ if (IS_ERR(bdev)) {
++ dev_t devt;
+
+ /* We might not have rootfs mounted at this point. Try
+ to resolve the device name by other means. */
+
+ wait_for_device_probe();
+- dev_t devt = name_to_dev_t(dev->devname);
++ devt = name_to_dev_t(dev->devname);
+ if (devt)
+ bdev = blkdev_get_by_dev(devt, mode, dev);
+ }
+@@ -330,7 +331,7 @@ static int block2mtd_refresh(struct mtd_
+ _close_bdev(dev);
+
+ /* open the whole disk, issue a partition rescan, then */
+- bdev = blkdev_get_by_dev(devt, FMODE_WRITE | FMODE_READ);
++ bdev = blkdev_get_by_dev(devt, FMODE_WRITE | FMODE_READ, mtd);
+ if (!bdev || !bdev->bd_disk)
+ err = -EINVAL;
+ #ifndef CONFIG_MTD_BLOCK2MTD_MODULE
+@@ -395,7 +396,7 @@ static struct block2mtd_dev *add_device(
+ dev->mtd.refresh_device = block2mtd_refresh;
+
+ part = kzalloc(sizeof(struct mtd_partition), GFP_KERNEL);
+- part->name = dev->mtd.name;
++ part->name = name;
+ part->offset = 0;
+ part->size = dev->mtd.size;
+ if (add_mtd_partitions(&dev->mtd, part, 1)) {