diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-08-03 13:24:07 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-08-03 13:24:07 -0700 |
commit | d42d1dabf34bdd5ad832cb56a7338817aad8a052 (patch) | |
tree | 3df52d49ebcf9e0a55ed542a5f68c6ff314216ac /fs/exofs/ore.c | |
parent | d79095eee26f3e2c812f1c92763d5edcb1edae60 (diff) | |
parent | 9e62bb4458ad2cf28bd701aa5fab380b846db326 (diff) | |
download | lwn-d42d1dabf34bdd5ad832cb56a7338817aad8a052.tar.gz lwn-d42d1dabf34bdd5ad832cb56a7338817aad8a052.zip |
Merge branch 'for-linus' of git://git.open-osd.org/linux-open-osd
Pull exofs update from Boaz Harrosh:
"They are all mostly fixes, except the most important patch by Artem
Bityutskiy which removes the use of s_dirt. After this patch s_dirt
can be completely removed from the tree."
* 'for-linus' of git://git.open-osd.org/linux-open-osd:
ore: Fix out-of-bounds access in _ios_obj()
exofs: Use proper max_IO calculations from ore
exofs: Fix __r4w_get_page when offset is beyond i_size
exofs: stop using s_dirt
exofs: readpage_strip: Add a BUG_ON to check for PageLocked(page)
Diffstat (limited to 'fs/exofs/ore.c')
-rw-r--r-- | fs/exofs/ore.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/fs/exofs/ore.c b/fs/exofs/ore.c index 24a49d47e935..1585db1aa365 100644 --- a/fs/exofs/ore.c +++ b/fs/exofs/ore.c @@ -837,11 +837,11 @@ static int _write_mirror(struct ore_io_state *ios, int cur_comp) bio->bi_rw |= REQ_WRITE; } - osd_req_write(or, _ios_obj(ios, dev), per_dev->offset, - bio, per_dev->length); + osd_req_write(or, _ios_obj(ios, cur_comp), + per_dev->offset, bio, per_dev->length); ORE_DBGMSG("write(0x%llx) offset=0x%llx " "length=0x%llx dev=%d\n", - _LLU(_ios_obj(ios, dev)->id), + _LLU(_ios_obj(ios, cur_comp)->id), _LLU(per_dev->offset), _LLU(per_dev->length), dev); } else if (ios->kern_buff) { @@ -853,20 +853,20 @@ static int _write_mirror(struct ore_io_state *ios, int cur_comp) (ios->si.unit_off + ios->length > ios->layout->stripe_unit)); - ret = osd_req_write_kern(or, _ios_obj(ios, per_dev->dev), + ret = osd_req_write_kern(or, _ios_obj(ios, cur_comp), per_dev->offset, ios->kern_buff, ios->length); if (unlikely(ret)) goto out; ORE_DBGMSG2("write_kern(0x%llx) offset=0x%llx " "length=0x%llx dev=%d\n", - _LLU(_ios_obj(ios, dev)->id), + _LLU(_ios_obj(ios, cur_comp)->id), _LLU(per_dev->offset), _LLU(ios->length), per_dev->dev); } else { - osd_req_set_attributes(or, _ios_obj(ios, dev)); + osd_req_set_attributes(or, _ios_obj(ios, cur_comp)); ORE_DBGMSG2("obj(0x%llx) set_attributes=%d dev=%d\n", - _LLU(_ios_obj(ios, dev)->id), + _LLU(_ios_obj(ios, cur_comp)->id), ios->out_attr_len, dev); } |