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);
1812 sg_build_sgat(Sg_scatter_hold * schp, const Sg_fd * sfp, int tablesize) in sg_build_sgat() argument
1817 schp->pages = kzalloc(sg_bufflen, gfp_flags); in sg_build_sgat()
1818 if (!schp->pages) in sg_build_sgat()
1820 schp->sglist_len = sg_bufflen; in sg_build_sgat()
1825 sg_build_indirect(Sg_scatter_hold * schp, Sg_fd * sfp, int buff_size) in sg_build_indirect() argument
1843 mx_sc_elems = sg_build_sgat(schp, sfp, sg_tablesize); in sg_build_indirect()
1872 schp->pages[k] = alloc_pages(gfp_mask, order); in sg_build_indirect()
1873 if (!schp->pages[k]) in sg_build_indirect()
1888 schp->page_order = order; in sg_build_indirect()
1889 schp->k_use_sg = k; in sg_build_indirect()
1894 schp->bufflen = blk_size; in sg_build_indirect()
1900 __free_pages(schp->pages[i], order); in sg_build_indirect()
1909 sg_remove_scat(Sg_fd * sfp, Sg_scatter_hold * schp) in sg_remove_scat() argument
1912 "sg_remove_scat: k_use_sg=%d\n", schp->k_use_sg)); in sg_remove_scat()
1913 if (schp->pages && schp->sglist_len > 0) { in sg_remove_scat()
1914 if (!schp->dio_in_use) { in sg_remove_scat()
1917 for (k = 0; k < schp->k_use_sg && schp->pages[k]; k++) { in sg_remove_scat()
1921 k, schp->pages[k])); in sg_remove_scat()
1922 __free_pages(schp->pages[k], schp->page_order); in sg_remove_scat()
1925 kfree(schp->pages); in sg_remove_scat()
1928 memset(schp, 0, sizeof (*schp)); in sg_remove_scat()
1934 Sg_scatter_hold *schp = &srp->data; in sg_read_oxfer() local
1943 num = 1 << (PAGE_SHIFT + schp->page_order); in sg_read_oxfer()
1944 for (k = 0; k < schp->k_use_sg && schp->pages[k]; k++) { in sg_read_oxfer()
1946 if (__copy_to_user(outp, page_address(schp->pages[k]), in sg_read_oxfer()
1951 if (__copy_to_user(outp, page_address(schp->pages[k]), in sg_read_oxfer()
1967 Sg_scatter_hold *schp = &sfp->reserve; in sg_build_reserve() local
1974 if (0 == sg_build_indirect(schp, sfp, req_size)) in sg_build_reserve()
1977 sg_remove_scat(sfp, schp); in sg_build_reserve()