diff options
Diffstat (limited to 'fs/afs/write.c')
| -rw-r--r-- | fs/afs/write.c | 8 | 
1 files changed, 3 insertions, 5 deletions
diff --git a/fs/afs/write.c b/fs/afs/write.c index 19df10d63323..2d17891b618e 100644 --- a/fs/afs/write.c +++ b/fs/afs/write.c @@ -992,7 +992,7 @@ int afs_launder_folio(struct folio *folio)  {  	struct afs_vnode *vnode = AFS_FS_I(folio_inode(folio));  	struct iov_iter iter; -	struct bio_vec bv[1]; +	struct bio_vec bv;  	unsigned long priv;  	unsigned int f, t;  	int ret = 0; @@ -1008,10 +1008,8 @@ int afs_launder_folio(struct folio *folio)  			t = afs_folio_dirty_to(folio, priv);  		} -		bv[0].bv_page = &folio->page; -		bv[0].bv_offset = f; -		bv[0].bv_len = t - f; -		iov_iter_bvec(&iter, ITER_SOURCE, bv, 1, bv[0].bv_len); +		bvec_set_folio(&bv, folio, t - f, f); +		iov_iter_bvec(&iter, ITER_SOURCE, &bv, 1, bv.bv_len);  		trace_afs_folio_dirty(vnode, tracepoint_string("launder"), folio);  		ret = afs_store_data(vnode, &iter, folio_pos(folio) + f, true);  |