diff options
Diffstat (limited to 'fs/gfs2/ops_vm.c')
-rw-r--r-- | fs/gfs2/ops_vm.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/fs/gfs2/ops_vm.c b/fs/gfs2/ops_vm.c index dbc57071e7bb..d67248cae9b9 100644 --- a/fs/gfs2/ops_vm.c +++ b/fs/gfs2/ops_vm.c | |||
@@ -90,8 +90,7 @@ static int alloc_page_backing(struct gfs2_inode *ip, struct page *page) | |||
90 | if (error) | 90 | if (error) |
91 | goto out_gunlock_q; | 91 | goto out_gunlock_q; |
92 | 92 | ||
93 | gfs2_write_calc_reserv(ip, PAGE_CACHE_SIZE, | 93 | gfs2_write_calc_reserv(ip, PAGE_CACHE_SIZE, &data_blocks, &ind_blocks); |
94 | &data_blocks, &ind_blocks); | ||
95 | 94 | ||
96 | al->al_requested = data_blocks + ind_blocks; | 95 | al->al_requested = data_blocks + ind_blocks; |
97 | 96 | ||
@@ -99,8 +98,7 @@ static int alloc_page_backing(struct gfs2_inode *ip, struct page *page) | |||
99 | if (error) | 98 | if (error) |
100 | goto out_gunlock_q; | 99 | goto out_gunlock_q; |
101 | 100 | ||
102 | error = gfs2_trans_begin(sdp, | 101 | error = gfs2_trans_begin(sdp, al->al_rgd->rd_ri.ri_length + |
103 | al->al_rgd->rd_ri.ri_length + | ||
104 | ind_blocks + RES_DINODE + | 102 | ind_blocks + RES_DINODE + |
105 | RES_STATFS + RES_QUOTA, 0); | 103 | RES_STATFS + RES_QUOTA, 0); |
106 | if (error) | 104 | if (error) |
@@ -117,7 +115,7 @@ static int alloc_page_backing(struct gfs2_inode *ip, struct page *page) | |||
117 | unsigned int extlen; | 115 | unsigned int extlen; |
118 | int new = 1; | 116 | int new = 1; |
119 | 117 | ||
120 | error = gfs2_block_map(ip, lblock, &new, &dblock, &extlen); | 118 | error = gfs2_extent_map(ip->i_vnode, lblock, &new, &dblock, &extlen); |
121 | if (error) | 119 | if (error) |
122 | goto out_trans; | 120 | goto out_trans; |
123 | 121 | ||