]> err.no Git - linux-2.6/blobdiff - crypto/scatterwalk.h
IPMI: fix hotmod remove lock
[linux-2.6] / crypto / scatterwalk.h
index ace595a2e1191cfaceac5562068b411aa66512c1..9c73e37a42cef9ad9eb63133cf78a35ac78ae9fd 100644 (file)
 
 #include "internal.h"
 
-/* Define sg_next is an inline routine now in case we want to change
-   scatterlist to a linked list later. */
-static inline struct scatterlist *sg_next(struct scatterlist *sg)
+static inline struct scatterlist *scatterwalk_sg_next(struct scatterlist *sg)
 {
-       return sg + 1;
+       return (++sg)->length ? sg : (void *)sg->page;
 }
 
 static inline unsigned long scatterwalk_samebuf(struct scatter_walk *walk_in,
@@ -76,4 +74,7 @@ void scatterwalk_copychunks(void *buf, struct scatter_walk *walk,
 void *scatterwalk_map(struct scatter_walk *walk, int out);
 void scatterwalk_done(struct scatter_walk *walk, int out, int more);
 
+void scatterwalk_map_and_copy(void *buf, struct scatterlist *sg,
+                             unsigned int start, unsigned int nbytes, int out);
+
 #endif  /* _CRYPTO_SCATTERWALK_H */