summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJens Axboe <jens.axboe@oracle.com>2007-10-17 13:02:33 +0200
committerJens Axboe <jens.axboe@oracle.com>2007-10-17 13:02:33 +0200
commit60573b874b03d22678614ca1e73f6b15c1b53b40 (patch)
treeeab565cf0b353bcdf7eafb47c5e798318c7c54fd
parentIA64: iommu uses sg_next with an invalid sg element (diff)
downloadlinux-60573b874b03d22678614ca1e73f6b15c1b53b40.tar.xz
linux-60573b874b03d22678614ca1e73f6b15c1b53b40.zip
[BLOCK] Clear sg entry before filling in blk_rq_map_sg()
The memset() of the sg entry was originally removed, because it could overwrite a chain pointer. But it's quite OK to memset() it when we know it's a valid entry, since it can't contain a chain pointer. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
-rw-r--r--block/ll_rw_blk.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/block/ll_rw_blk.c b/block/ll_rw_blk.c
index 9eabac95fbe0..1014d349a386 100644
--- a/block/ll_rw_blk.c
+++ b/block/ll_rw_blk.c
@@ -1352,6 +1352,7 @@ new_segment:
sg = next_sg;
next_sg = sg_next(sg);
+ memset(sg, 0, sizeof(*sg));
sg->page = bvec->bv_page;
sg->length = nbytes;
sg->offset = bvec->bv_offset;