Lines Matching refs:walk

29 static inline unsigned int scatterwalk_pagelen(struct scatter_walk *walk)  in scatterwalk_pagelen()  argument
31 unsigned int len = walk->sg->offset + walk->sg->length - walk->offset; in scatterwalk_pagelen()
32 unsigned int len_this_page = offset_in_page(~walk->offset) + 1; in scatterwalk_pagelen()
36 static inline unsigned int scatterwalk_clamp(struct scatter_walk *walk, in scatterwalk_clamp() argument
39 unsigned int len_this_page = scatterwalk_pagelen(walk); in scatterwalk_clamp()
43 static inline void scatterwalk_advance(struct scatter_walk *walk, in scatterwalk_advance() argument
46 walk->offset += nbytes; in scatterwalk_advance()
49 static inline struct page *scatterwalk_page(struct scatter_walk *walk) in scatterwalk_page() argument
51 return sg_page(walk->sg) + (walk->offset >> PAGE_SHIFT); in scatterwalk_page()
59 static inline void scatterwalk_start(struct scatter_walk *walk, in scatterwalk_start() argument
62 walk->sg = sg; in scatterwalk_start()
63 walk->offset = sg->offset; in scatterwalk_start()
66 static inline void *scatterwalk_map(struct scatter_walk *walk) in scatterwalk_map() argument
68 return kmap_atomic(scatterwalk_page(walk)) + in scatterwalk_map()
69 offset_in_page(walk->offset); in scatterwalk_map()
72 static inline void scatterwalk_pagedone(struct scatter_walk *walk, int out, in scatterwalk_pagedone() argument
78 page = sg_page(walk->sg) + ((walk->offset - 1) >> PAGE_SHIFT); in scatterwalk_pagedone()
82 if (more && walk->offset >= walk->sg->offset + walk->sg->length) in scatterwalk_pagedone()
83 scatterwalk_start(walk, sg_next(walk->sg)); in scatterwalk_pagedone()
86 static inline void scatterwalk_done(struct scatter_walk *walk, int out, in scatterwalk_done() argument
89 if (!more || walk->offset >= walk->sg->offset + walk->sg->length || in scatterwalk_done()
90 !(walk->offset & (PAGE_SIZE - 1))) in scatterwalk_done()
91 scatterwalk_pagedone(walk, out, more); in scatterwalk_done()
94 void scatterwalk_copychunks(void *buf, struct scatter_walk *walk,
96 void *scatterwalk_map(struct scatter_walk *walk);