*参照元 [#bf13ff89] #backlinks *説明 [#b613e544] -パス: [[linux-4.4.1/]] -パス: [[linux-4.4.1/drivers/staging/android/ion/ion_heap.c]] -FIXME: これは何? --説明 **引数 [#f576cf33] -struct scatterlist *sgl -- --[[linux-4.4.1/scatterlist]] -unsigned int nents -- -pgprot_t pgprot -- --[[linux-4.4.1/pgprot_t]] **返り値 [#iac15e8c] -int -- **参考 [#b8196422] *実装 [#o7284dc6] static int ion_heap_sglist_zero(struct scatterlist *sgl, unsigned int nents, pgprot_t pgprot) { int p = 0; int ret = 0; struct sg_page_iter piter; struct page *pages[32]; - --[[linux-4.4.1/sg_page_iter]] --[[linux-4.4.1/page]] for_each_sg_page(sgl, &piter, nents, 0) { - --[[linux-4.4.1/for_each_sg_page()]] pages[p++] = sg_page_iter_page(&piter); if (p == ARRAY_SIZE(pages)) { ret = ion_heap_clear_pages(pages, p, pgprot); if (ret) return ret; p = 0; } - --[[linux-4.4.1/sg_page_iter_page()]] --[[linux-4.4.1/ARRAY_SIZE()]] --[[linux-4.4.1/ion_heap_clear_pages()]] } if (p) ret = ion_heap_clear_pages(pages, p, pgprot); return ret; } *コメント [#de3624a0]