Lines Matching refs:t_page
858 struct nullb_page *t_page; in null_alloc_page() local
860 t_page = kmalloc(sizeof(struct nullb_page), GFP_NOIO); in null_alloc_page()
861 if (!t_page) in null_alloc_page()
864 t_page->page = alloc_pages(GFP_NOIO, 0); in null_alloc_page()
865 if (!t_page->page) { in null_alloc_page()
866 kfree(t_page); in null_alloc_page()
870 memset(t_page->bitmap, 0, sizeof(t_page->bitmap)); in null_alloc_page()
871 return t_page; in null_alloc_page()
874 static void null_free_page(struct nullb_page *t_page) in null_free_page() argument
876 __set_bit(NULLB_PAGE_FREE, t_page->bitmap); in null_free_page()
877 if (test_bit(NULLB_PAGE_LOCK, t_page->bitmap)) in null_free_page()
879 __free_page(t_page->page); in null_free_page()
880 kfree(t_page); in null_free_page()
895 struct nullb_page *t_page, *ret; in null_free_sector() local
902 t_page = radix_tree_lookup(root, idx); in null_free_sector()
903 if (t_page) { in null_free_sector()
904 __clear_bit(sector_bit, t_page->bitmap); in null_free_sector()
906 if (null_page_empty(t_page)) { in null_free_sector()
907 ret = radix_tree_delete_item(root, idx, t_page); in null_free_sector()
908 WARN_ON(ret != t_page); in null_free_sector()
917 struct nullb_page *t_page, bool is_cache) in null_radix_tree_insert() argument
923 if (radix_tree_insert(root, idx, t_page)) { in null_radix_tree_insert()
924 null_free_page(t_page); in null_radix_tree_insert()
925 t_page = radix_tree_lookup(root, idx); in null_radix_tree_insert()
926 WARN_ON(!t_page || t_page->page->private != idx); in null_radix_tree_insert()
930 return t_page; in null_radix_tree_insert()
967 struct nullb_page *t_page; in __null_lookup_page() local
974 t_page = radix_tree_lookup(root, idx); in __null_lookup_page()
975 WARN_ON(t_page && t_page->page->private != idx); in __null_lookup_page()
977 if (t_page && (for_write || test_bit(sector_bit, t_page->bitmap))) in __null_lookup_page()
978 return t_page; in __null_lookup_page()
1001 struct nullb_page *t_page; in null_insert_page() local
1003 t_page = null_lookup_page(nullb, sector, true, ignore_cache); in null_insert_page()
1004 if (t_page) in null_insert_page()
1005 return t_page; in null_insert_page()
1009 t_page = null_alloc_page(); in null_insert_page()
1010 if (!t_page) in null_insert_page()
1018 t_page->page->private = idx; in null_insert_page()
1019 t_page = null_radix_tree_insert(nullb, idx, t_page, !ignore_cache); in null_insert_page()
1022 return t_page; in null_insert_page()
1024 null_free_page(t_page); in null_insert_page()
1035 struct nullb_page *t_page, *ret; in null_flush_cache_page() local
1040 t_page = null_insert_page(nullb, idx << PAGE_SECTORS_SHIFT, true); in null_flush_cache_page()
1045 if (t_page && null_page_empty(t_page)) { in null_flush_cache_page()
1047 idx, t_page); in null_flush_cache_page()
1048 null_free_page(t_page); in null_flush_cache_page()
1053 if (!t_page) in null_flush_cache_page()
1057 dst = kmap_local_page(t_page->page); in null_flush_cache_page()
1065 __set_bit(i, t_page->bitmap); in null_flush_cache_page()
1137 struct nullb_page *t_page; in copy_to_nullb() local
1146 t_page = null_insert_page(nullb, sector, in copy_to_nullb()
1148 if (!t_page) in copy_to_nullb()
1151 memcpy_page(t_page->page, offset, source, off + count, temp); in copy_to_nullb()
1153 __set_bit(sector & SECTOR_MASK, t_page->bitmap); in copy_to_nullb()
1169 struct nullb_page *t_page; in copy_from_nullb() local
1175 t_page = null_lookup_page(nullb, sector, false, in copy_from_nullb()
1178 if (t_page) in copy_from_nullb()
1179 memcpy_page(dest, off + count, t_page->page, offset, in copy_from_nullb()