diff options
author | Jeff Garzik <jgarzik@pobox.com> | 2005-11-07 22:51:47 -0500 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2005-11-07 22:51:47 -0500 |
commit | 6b995751c2e851d2bc9c277b5884d0adb519e31d (patch) | |
tree | 7a15b41b5d8ce612915584a0773c670d5c0ab5b8 /drivers/mtd/devices/blkmtd.c | |
parent | 6c2f4267833f453156f8f439cc32eb4c92f357b4 (diff) | |
parent | d27ba47e7e8c466c18983a1779d611f82d6a354f (diff) |
Merge branch 'master'
Diffstat (limited to 'drivers/mtd/devices/blkmtd.c')
-rw-r--r-- | drivers/mtd/devices/blkmtd.c | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/drivers/mtd/devices/blkmtd.c b/drivers/mtd/devices/blkmtd.c index 662e807801ed..f9db52f6bf00 100644 --- a/drivers/mtd/devices/blkmtd.c +++ b/drivers/mtd/devices/blkmtd.c | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * $Id: blkmtd.c,v 1.24 2004/11/16 18:29:01 dwmw2 Exp $ | 2 | * $Id: blkmtd.c,v 1.27 2005/11/07 11:14:24 gleixner Exp $ |
3 | * | 3 | * |
4 | * blkmtd.c - use a block device as a fake MTD | 4 | * blkmtd.c - use a block device as a fake MTD |
5 | * | 5 | * |
@@ -39,7 +39,7 @@ | |||
39 | 39 | ||
40 | /* Default erase size in K, always make it a multiple of PAGE_SIZE */ | 40 | /* Default erase size in K, always make it a multiple of PAGE_SIZE */ |
41 | #define CONFIG_MTD_BLKDEV_ERASESIZE (128 << 10) /* 128KiB */ | 41 | #define CONFIG_MTD_BLKDEV_ERASESIZE (128 << 10) /* 128KiB */ |
42 | #define VERSION "$Revision: 1.24 $" | 42 | #define VERSION "$Revision: 1.27 $" |
43 | 43 | ||
44 | /* Info for the block device */ | 44 | /* Info for the block device */ |
45 | struct blkmtd_dev { | 45 | struct blkmtd_dev { |
@@ -117,7 +117,7 @@ static int bi_write_complete(struct bio *bio, unsigned int bytes_done, int error | |||
117 | unlock_page(page); | 117 | unlock_page(page); |
118 | page_cache_release(page); | 118 | page_cache_release(page); |
119 | } while (bvec >= bio->bi_io_vec); | 119 | } while (bvec >= bio->bi_io_vec); |
120 | 120 | ||
121 | complete((struct completion*)bio->bi_private); | 121 | complete((struct completion*)bio->bi_private); |
122 | return 0; | 122 | return 0; |
123 | } | 123 | } |
@@ -135,7 +135,7 @@ static int blkmtd_readpage(struct blkmtd_dev *dev, struct page *page) | |||
135 | unlock_page(page); | 135 | unlock_page(page); |
136 | return 0; | 136 | return 0; |
137 | } | 137 | } |
138 | 138 | ||
139 | ClearPageUptodate(page); | 139 | ClearPageUptodate(page); |
140 | ClearPageError(page); | 140 | ClearPageError(page); |
141 | 141 | ||
@@ -539,11 +539,8 @@ static void free_device(struct blkmtd_dev *dev) | |||
539 | { | 539 | { |
540 | DEBUG(2, "blkmtd: free_device() dev = %p\n", dev); | 540 | DEBUG(2, "blkmtd: free_device() dev = %p\n", dev); |
541 | if(dev) { | 541 | if(dev) { |
542 | if(dev->mtd_info.eraseregions) | 542 | kfree(dev->mtd_info.eraseregions); |
543 | kfree(dev->mtd_info.eraseregions); | 543 | kfree(dev->mtd_info.name); |
544 | if(dev->mtd_info.name) | ||
545 | kfree(dev->mtd_info.name); | ||
546 | |||
547 | if(dev->blkdev) { | 544 | if(dev->blkdev) { |
548 | invalidate_inode_pages(dev->blkdev->bd_inode->i_mapping); | 545 | invalidate_inode_pages(dev->blkdev->bd_inode->i_mapping); |
549 | close_bdev_excl(dev->blkdev); | 546 | close_bdev_excl(dev->blkdev); |
@@ -710,7 +707,7 @@ static struct blkmtd_dev *add_device(char *devname, int readonly, int erase_size | |||
710 | dev->mtd_info.erasesize >> 10, | 707 | dev->mtd_info.erasesize >> 10, |
711 | readonly ? "(read-only)" : ""); | 708 | readonly ? "(read-only)" : ""); |
712 | } | 709 | } |
713 | 710 | ||
714 | return dev; | 711 | return dev; |
715 | 712 | ||
716 | devinit_err: | 713 | devinit_err: |