aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLukas Czerner2011-05-06 20:26:28 -0500
committerJens Axboe2011-05-06 20:26:28 -0500
commit5baebe5c86acd6100536a466905880529f79cf1a (patch)
tree6c7b4e6e170037981ea1bc094547034d3281c344 /block/blk-lib.c
parent5dba3089ed03f84b84c6c739df8330112f04a15d (diff)
downloadkernel-common-5baebe5c86acd6100536a466905880529f79cf1a.tar.gz
kernel-common-5baebe5c86acd6100536a466905880529f79cf1a.tar.xz
kernel-common-5baebe5c86acd6100536a466905880529f79cf1a.zip
blkdev: Simple cleanup in blkdev_issue_zeroout()
In blkdev_issue_zeroout() we are submitting regular WRITE bios, so we do not need to check for -EOPNOTSUPP specifically in case of error. Also there is no need to have label submit: because there is no way to jump out from the while cycle without an error and we really want to exit, rather than try again. And also remove the check for (sz == 0) since at that point sz can never be zero. Signed-off-by: Lukas Czerner <lczerner@redhat.com> Reviewed-by: Jeff Moyer <jmoyer@redhat.com> CC: Dmitry Monakhov <dmonakhov@openvz.org> CC: Jens Axboe <jaxboe@fusionio.com> Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
Diffstat (limited to 'block/blk-lib.c')
-rw-r--r--block/blk-lib.c14
1 files changed, 0 insertions, 14 deletions
diff --git a/block/blk-lib.c b/block/blk-lib.c
index 9260cb0b209..d7a98d3ed4a 100644
--- a/block/blk-lib.c
+++ b/block/blk-lib.c
@@ -140,7 +140,6 @@ int blkdev_issue_zeroout(struct block_device *bdev, sector_t sector,
140 bb.flags = 1 << BIO_UPTODATE; 140 bb.flags = 1 << BIO_UPTODATE;
141 bb.wait = &wait; 141 bb.wait = &wait;
142 142
143submit:
144 ret = 0; 143 ret = 0;
145 while (nr_sects != 0) { 144 while (nr_sects != 0) {
146 bio = bio_alloc(gfp_mask, 145 bio = bio_alloc(gfp_mask,
@@ -157,9 +156,6 @@ submit:
157 156
158 while (nr_sects != 0) { 157 while (nr_sects != 0) {
159 sz = min((sector_t) PAGE_SIZE >> 9 , nr_sects); 158 sz = min((sector_t) PAGE_SIZE >> 9 , nr_sects);
160 if (sz == 0)
161 /* bio has maximum size possible */
162 break;
163 ret = bio_add_page(bio, ZERO_PAGE(0), sz << 9, 0); 159 ret = bio_add_page(bio, ZERO_PAGE(0), sz << 9, 0);
164 nr_sects -= ret >> 9; 160 nr_sects -= ret >> 9;
165 sector += ret >> 9; 161 sector += ret >> 9;
@@ -179,16 +175,6 @@ submit:
179 /* One of bios in the batch was completed with error.*/ 175 /* One of bios in the batch was completed with error.*/
180 ret = -EIO; 176 ret = -EIO;
181 177
182 if (ret)
183 goto out;
184
185 if (test_bit(BIO_EOPNOTSUPP, &bb.flags)) {
186 ret = -EOPNOTSUPP;
187 goto out;
188 }
189 if (nr_sects != 0)
190 goto submit;
191out:
192 return ret; 178 return ret;
193} 179}
194EXPORT_SYMBOL(blkdev_issue_zeroout); 180EXPORT_SYMBOL(blkdev_issue_zeroout);