| /* |
| * Copyright (C) 2007 Jens Axboe <jens.axboe@oracle.com> |
| * |
| * Scatterlist handling helpers. |
| * |
| * This source code is licensed under the GNU General Public License, |
| * Version 2. See the file COPYING for more details. |
| */ |
| |
| #include <linux_compat.h> |
| |
| void sg_init_table(struct scatterlist *sgl, unsigned int nents) |
| { |
| memset(sgl, 0, sizeof(*sgl) * nents); |
| sg_mark_end(&sgl[nents - 1]); |
| } |
| |
| struct scatterlist *sg_next(struct scatterlist *sg) |
| { |
| if (sg_is_last(sg)) |
| return NULL; |
| |
| sg++; |
| if (unlikely(sg_is_chain(sg))) |
| sg = sg_chain_ptr(sg); |
| |
| return sg; |
| } |