Idenfity devices by name, not by char [1/3]
[akaros.git] / kern / src / scatterlist.c
1 /*
2  * Copyright (C) 2007 Jens Axboe <jens.axboe@oracle.com>
3  *
4  * Scatterlist handling helpers.
5  *
6  * This source code is licensed under the GNU General Public License,
7  * Version 2. See the file COPYING for more details.
8   */
9
10 #include <linux_compat.h>
11
12 void sg_init_table(struct scatterlist *sgl, unsigned int nents)
13 {
14         memset(sgl, 0, sizeof(*sgl) * nents);
15         sg_mark_end(&sgl[nents - 1]);
16 }
17
18 struct scatterlist *sg_next(struct scatterlist *sg)
19 {
20         if (sg_is_last(sg))
21                 return NULL;
22
23         sg++;
24         if (unlikely(sg_is_chain(sg)))
25                 sg = sg_chain_ptr(sg);
26
27         return sg;
28 }