diff options
author | Trond Myklebust <trond.myklebust@primarydata.com> | 2016-07-24 15:10:12 -0400 |
---|---|---|
committer | Trond Myklebust <trond.myklebust@primarydata.com> | 2016-07-24 16:16:42 -0400 |
commit | 119cef97a46e2a4b4fbebcf6655358a0b277732d (patch) | |
tree | 843077ecf0000989b748455fc5e181de81ce0cf8 /fs/nfs/pnfs.c | |
parent | 28c1acffead59a461e552708cc9daa9c1cb5a085 (diff) |
pNFS: Cleanup - do layout segment initialisation in one place
...instead of splitting the initialisation over init_lseg() and
pnfs_layout_process().
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Diffstat (limited to 'fs/nfs/pnfs.c')
-rw-r--r-- | fs/nfs/pnfs.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/fs/nfs/pnfs.c b/fs/nfs/pnfs.c index c9a684c128b8..09b77a68422f 100644 --- a/fs/nfs/pnfs.c +++ b/fs/nfs/pnfs.c | |||
@@ -334,7 +334,9 @@ pnfs_layout_io_test_failed(struct pnfs_layout_hdr *lo, u32 iomode) | |||
334 | } | 334 | } |
335 | 335 | ||
336 | static void | 336 | static void |
337 | init_lseg(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg) | 337 | pnfs_init_lseg(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg, |
338 | const struct pnfs_layout_range *range, | ||
339 | const nfs4_stateid *stateid) | ||
338 | { | 340 | { |
339 | INIT_LIST_HEAD(&lseg->pls_list); | 341 | INIT_LIST_HEAD(&lseg->pls_list); |
340 | INIT_LIST_HEAD(&lseg->pls_lc_list); | 342 | INIT_LIST_HEAD(&lseg->pls_lc_list); |
@@ -342,6 +344,8 @@ init_lseg(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg) | |||
342 | smp_mb(); | 344 | smp_mb(); |
343 | set_bit(NFS_LSEG_VALID, &lseg->pls_flags); | 345 | set_bit(NFS_LSEG_VALID, &lseg->pls_flags); |
344 | lseg->pls_layout = lo; | 346 | lseg->pls_layout = lo; |
347 | lseg->pls_range = *range; | ||
348 | lseg->pls_seq = be32_to_cpu(stateid->seqid); | ||
345 | } | 349 | } |
346 | 350 | ||
347 | static void pnfs_free_lseg(struct pnfs_layout_segment *lseg) | 351 | static void pnfs_free_lseg(struct pnfs_layout_segment *lseg) |
@@ -1760,9 +1764,7 @@ pnfs_layout_process(struct nfs4_layoutget *lgp) | |||
1760 | return lseg; | 1764 | return lseg; |
1761 | } | 1765 | } |
1762 | 1766 | ||
1763 | init_lseg(lo, lseg); | 1767 | pnfs_init_lseg(lo, lseg, &res->range, &res->stateid); |
1764 | lseg->pls_range = res->range; | ||
1765 | lseg->pls_seq = be32_to_cpu(res->stateid.seqid); | ||
1766 | 1768 | ||
1767 | spin_lock(&ino->i_lock); | 1769 | spin_lock(&ino->i_lock); |
1768 | if (pnfs_layoutgets_blocked(lo)) { | 1770 | if (pnfs_layoutgets_blocked(lo)) { |