Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 208868
b: refs/heads/master
c: 5002dd1
h: refs/heads/master
v: v3
  • Loading branch information
Boaz Harrosh committed Aug 4, 2010
1 parent e66a2f7 commit 9874eab
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 18 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 6e31609b1dcd595d7e4676ce62323532b29e8999
refs/heads/master: 5002dd18c5940ce63b917d84f2b852c3b96009bb
22 changes: 5 additions & 17 deletions trunk/fs/exofs/ios.c
Original file line number Diff line number Diff line change
Expand Up @@ -305,8 +305,6 @@ int exofs_check_io(struct exofs_io_state *ios, u64 *resid)
struct _striping_info {
u64 obj_offset;
u64 group_length;
u64 total_group_length;
u64 Major;
unsigned dev;
unsigned unit_off;
};
Expand Down Expand Up @@ -343,8 +341,6 @@ static void _calc_stripe_info(struct exofs_io_state *ios, u64 file_offset,
(M * group_depth * stripe_unit);

si->group_length = T - H;
si->total_group_length = T;
si->Major = M;
}

static int _add_stripe_unit(struct exofs_io_state *ios, unsigned *cur_pg,
Expand Down Expand Up @@ -450,17 +446,15 @@ static int _prepare_one_group(struct exofs_io_state *ios, u64 length,
static int _prepare_for_striping(struct exofs_io_state *ios)
{
u64 length = ios->length;
u64 offset = ios->offset;
struct _striping_info si;
unsigned devs_in_group = ios->layout->group_width *
ios->layout->mirrors_p1;
int ret = 0;

_calc_stripe_info(ios, ios->offset, &si);

if (!ios->pages) {
if (ios->kern_buff) {
struct exofs_per_dev_state *per_dev = &ios->per_dev[0];

_calc_stripe_info(ios, ios->offset, &si);
per_dev->offset = si.obj_offset;
per_dev->dev = si.dev;

Expand All @@ -474,23 +468,17 @@ static int _prepare_for_striping(struct exofs_io_state *ios)
}

while (length) {
_calc_stripe_info(ios, offset, &si);

if (length < si.group_length)
si.group_length = length;

ret = _prepare_one_group(ios, si.group_length, &si);
if (unlikely(ret))
goto out;

offset += si.group_length;
length -= si.group_length;

si.group_length = si.total_group_length;
si.unit_off = 0;
++si.Major;
si.obj_offset = si.Major * ios->layout->stripe_unit *
ios->layout->group_depth;

si.dev = (si.dev - (si.dev % devs_in_group)) + devs_in_group;
si.dev %= ios->layout->s_numdevs;
}

out:
Expand Down

0 comments on commit 9874eab

Please sign in to comment.