Am Montag, 21. September 2015, 16:44:14 schrieb Tadeusz Struk: Hi Tadeusz, >Add sg_len function which returns the total number of bytes in sg. > >Signed-off-by: Tadeusz Struk <tadeusz.struk@xxxxxxxxx> >--- > include/linux/scatterlist.h | 1 + > lib/scatterlist.c | 18 ++++++++++++++++++ > 2 files changed, 19 insertions(+) > >diff --git a/include/linux/scatterlist.h b/include/linux/scatterlist.h >index 556ec1e..1ca63bd 100644 >--- a/include/linux/scatterlist.h >+++ b/include/linux/scatterlist.h >@@ -242,6 +242,7 @@ static inline void *sg_virt(struct scatterlist *sg) > } > > int sg_nents(struct scatterlist *sg); >+int sg_len(struct scatterlist *sg); > int sg_nents_for_len(struct scatterlist *sg, u64 len); > struct scatterlist *sg_next(struct scatterlist *); > struct scatterlist *sg_last(struct scatterlist *s, unsigned int); >diff --git a/lib/scatterlist.c b/lib/scatterlist.c >index bafa993..dc71f27 100644 >--- a/lib/scatterlist.c >+++ b/lib/scatterlist.c >@@ -57,6 +57,24 @@ int sg_nents(struct scatterlist *sg) > EXPORT_SYMBOL(sg_nents); > > /** >+ * sg_len - return total size of bytes in the scatterlist >+ * @sg: The scatterlist >+ * >+ * Description: >+ * Allows to know how the total size of bytes in sg, taking into acount >+ * chaining as well >+ **/ >+int sg_len(struct scatterlist *sg) >+{ >+ int len; Is there a reason why unsigned int is not used? Note, this applies to the users of that function too. >+ >+ for (len = 0; sg; sg = sg_next(sg)) >+ len += sg->length; >+ return len; >+} >+EXPORT_SYMBOL(sg_len); >+ >+/** > * sg_nents_for_len - return total count of entries in scatterlist > * needed to satisfy the supplied length > * @sg: The scatterlist > >-- >To unsubscribe from this list: send the line "unsubscribe linux-crypto" in >the body of a message to majordomo@xxxxxxxxxxxxxxx >More majordomo info at http://vger.kernel.org/majordomo-info.html Ciao Stephan -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html