Lines Matching refs:schp
194 static int sg_build_indirect(Sg_scatter_hold * schp, Sg_fd * sfp, int buff_size);
203 static void sg_remove_scat(Sg_fd * sfp, Sg_scatter_hold * schp);
1806 sg_build_sgat(Sg_scatter_hold * schp, const Sg_fd * sfp, int tablesize) in sg_build_sgat() argument
1811 schp->pages = kzalloc(sg_bufflen, gfp_flags); in sg_build_sgat()
1812 if (!schp->pages) in sg_build_sgat()
1814 schp->sglist_len = sg_bufflen; in sg_build_sgat()
1819 sg_build_indirect(Sg_scatter_hold * schp, Sg_fd * sfp, int buff_size) in sg_build_indirect() argument
1837 mx_sc_elems = sg_build_sgat(schp, sfp, sg_tablesize); in sg_build_indirect()
1866 schp->pages[k] = alloc_pages(gfp_mask, order); in sg_build_indirect()
1867 if (!schp->pages[k]) in sg_build_indirect()
1882 schp->page_order = order; in sg_build_indirect()
1883 schp->k_use_sg = k; in sg_build_indirect()
1888 schp->bufflen = blk_size; in sg_build_indirect()
1894 __free_pages(schp->pages[i], order); in sg_build_indirect()
1903 sg_remove_scat(Sg_fd * sfp, Sg_scatter_hold * schp) in sg_remove_scat() argument
1906 "sg_remove_scat: k_use_sg=%d\n", schp->k_use_sg)); in sg_remove_scat()
1907 if (schp->pages && schp->sglist_len > 0) { in sg_remove_scat()
1908 if (!schp->dio_in_use) { in sg_remove_scat()
1911 for (k = 0; k < schp->k_use_sg && schp->pages[k]; k++) { in sg_remove_scat()
1915 k, schp->pages[k])); in sg_remove_scat()
1916 __free_pages(schp->pages[k], schp->page_order); in sg_remove_scat()
1919 kfree(schp->pages); in sg_remove_scat()
1922 memset(schp, 0, sizeof (*schp)); in sg_remove_scat()
1928 Sg_scatter_hold *schp = &srp->data; in sg_read_oxfer() local
1937 num = 1 << (PAGE_SHIFT + schp->page_order); in sg_read_oxfer()
1938 for (k = 0; k < schp->k_use_sg && schp->pages[k]; k++) { in sg_read_oxfer()
1940 if (__copy_to_user(outp, page_address(schp->pages[k]), in sg_read_oxfer()
1945 if (__copy_to_user(outp, page_address(schp->pages[k]), in sg_read_oxfer()
1961 Sg_scatter_hold *schp = &sfp->reserve; in sg_build_reserve() local
1968 if (0 == sg_build_indirect(schp, sfp, req_size)) in sg_build_reserve()
1971 sg_remove_scat(sfp, schp); in sg_build_reserve()