bufmap 169 fs/orangefs/orangefs-bufmap.c orangefs_bufmap_unmap(struct orangefs_bufmap *bufmap) bufmap 173 fs/orangefs/orangefs-bufmap.c for (i = 0; i < bufmap->page_count; i++) bufmap 174 fs/orangefs/orangefs-bufmap.c put_page(bufmap->page_array[i]); bufmap 178 fs/orangefs/orangefs-bufmap.c orangefs_bufmap_free(struct orangefs_bufmap *bufmap) bufmap 180 fs/orangefs/orangefs-bufmap.c kfree(bufmap->page_array); bufmap 181 fs/orangefs/orangefs-bufmap.c kfree(bufmap->desc_array); bufmap 182 fs/orangefs/orangefs-bufmap.c kfree(bufmap->buffer_index_array); bufmap 183 fs/orangefs/orangefs-bufmap.c kfree(bufmap); bufmap 193 fs/orangefs/orangefs-bufmap.c struct orangefs_bufmap *bufmap; bufmap 196 fs/orangefs/orangefs-bufmap.c bufmap = __orangefs_bufmap; bufmap 197 fs/orangefs/orangefs-bufmap.c if (bufmap) bufmap 198 fs/orangefs/orangefs-bufmap.c size = bufmap->desc_size; bufmap 205 fs/orangefs/orangefs-bufmap.c struct orangefs_bufmap *bufmap; bufmap 208 fs/orangefs/orangefs-bufmap.c bufmap = __orangefs_bufmap; bufmap 209 fs/orangefs/orangefs-bufmap.c if (bufmap) bufmap 210 fs/orangefs/orangefs-bufmap.c shift = bufmap->desc_shift; bufmap 221 fs/orangefs/orangefs-bufmap.c struct orangefs_bufmap *bufmap; bufmap 223 fs/orangefs/orangefs-bufmap.c bufmap = kzalloc(sizeof(*bufmap), GFP_KERNEL); bufmap 224 fs/orangefs/orangefs-bufmap.c if (!bufmap) bufmap 227 fs/orangefs/orangefs-bufmap.c bufmap->total_size = user_desc->total_size; bufmap 228 fs/orangefs/orangefs-bufmap.c bufmap->desc_count = user_desc->count; bufmap 229 fs/orangefs/orangefs-bufmap.c bufmap->desc_size = user_desc->size; bufmap 230 fs/orangefs/orangefs-bufmap.c bufmap->desc_shift = ilog2(bufmap->desc_size); bufmap 232 fs/orangefs/orangefs-bufmap.c bufmap->buffer_index_array = bufmap 233 fs/orangefs/orangefs-bufmap.c kzalloc(DIV_ROUND_UP(bufmap->desc_count, BITS_PER_LONG), GFP_KERNEL); bufmap 234 fs/orangefs/orangefs-bufmap.c if (!bufmap->buffer_index_array) bufmap 237 fs/orangefs/orangefs-bufmap.c bufmap->desc_array = bufmap 238 fs/orangefs/orangefs-bufmap.c kcalloc(bufmap->desc_count, sizeof(struct orangefs_bufmap_desc), bufmap 240 fs/orangefs/orangefs-bufmap.c if (!bufmap->desc_array) bufmap 243 fs/orangefs/orangefs-bufmap.c bufmap->page_count = bufmap->total_size / PAGE_SIZE; bufmap 246 fs/orangefs/orangefs-bufmap.c bufmap->page_array = bufmap 247 fs/orangefs/orangefs-bufmap.c kcalloc(bufmap->page_count, sizeof(struct page *), GFP_KERNEL); bufmap 248 fs/orangefs/orangefs-bufmap.c if (!bufmap->page_array) bufmap 251 fs/orangefs/orangefs-bufmap.c return bufmap; bufmap 254 fs/orangefs/orangefs-bufmap.c kfree(bufmap->desc_array); bufmap 256 fs/orangefs/orangefs-bufmap.c kfree(bufmap->buffer_index_array); bufmap 258 fs/orangefs/orangefs-bufmap.c kfree(bufmap); bufmap 264 fs/orangefs/orangefs-bufmap.c orangefs_bufmap_map(struct orangefs_bufmap *bufmap, bufmap 267 fs/orangefs/orangefs-bufmap.c int pages_per_desc = bufmap->desc_size / PAGE_SIZE; bufmap 272 fs/orangefs/orangefs-bufmap.c bufmap->page_count, FOLL_WRITE, bufmap->page_array); bufmap 277 fs/orangefs/orangefs-bufmap.c if (ret != bufmap->page_count) { bufmap 279 fs/orangefs/orangefs-bufmap.c bufmap->page_count, ret); bufmap 282 fs/orangefs/orangefs-bufmap.c SetPageError(bufmap->page_array[i]); bufmap 283 fs/orangefs/orangefs-bufmap.c put_page(bufmap->page_array[i]); bufmap 294 fs/orangefs/orangefs-bufmap.c for (i = 0; i < bufmap->page_count; i++) bufmap 295 fs/orangefs/orangefs-bufmap.c flush_dcache_page(bufmap->page_array[i]); bufmap 298 fs/orangefs/orangefs-bufmap.c for (offset = 0, i = 0; i < bufmap->desc_count; i++) { bufmap 299 fs/orangefs/orangefs-bufmap.c bufmap->desc_array[i].page_array = &bufmap->page_array[offset]; bufmap 300 fs/orangefs/orangefs-bufmap.c bufmap->desc_array[i].array_count = pages_per_desc; bufmap 301 fs/orangefs/orangefs-bufmap.c bufmap->desc_array[i].uaddr = bufmap 318 fs/orangefs/orangefs-bufmap.c struct orangefs_bufmap *bufmap; bufmap 367 fs/orangefs/orangefs-bufmap.c bufmap = orangefs_bufmap_alloc(user_desc); bufmap 368 fs/orangefs/orangefs-bufmap.c if (!bufmap) bufmap 371 fs/orangefs/orangefs-bufmap.c ret = orangefs_bufmap_map(bufmap, user_desc); bufmap 383 fs/orangefs/orangefs-bufmap.c __orangefs_bufmap = bufmap; bufmap 385 fs/orangefs/orangefs-bufmap.c bufmap->desc_count, bufmap 386 fs/orangefs/orangefs-bufmap.c bufmap->buffer_index_array); bufmap 389 fs/orangefs/orangefs-bufmap.c bufmap->readdir_index_array); bufmap 397 fs/orangefs/orangefs-bufmap.c orangefs_bufmap_unmap(bufmap); bufmap 399 fs/orangefs/orangefs-bufmap.c orangefs_bufmap_free(bufmap); bufmap 414 fs/orangefs/orangefs-bufmap.c struct orangefs_bufmap *bufmap = __orangefs_bufmap; bufmap 415 fs/orangefs/orangefs-bufmap.c if (!bufmap) bufmap 426 fs/orangefs/orangefs-bufmap.c struct orangefs_bufmap *bufmap = __orangefs_bufmap; bufmap 427 fs/orangefs/orangefs-bufmap.c if (!bufmap) bufmap 434 fs/orangefs/orangefs-bufmap.c orangefs_bufmap_unmap(bufmap); bufmap 435 fs/orangefs/orangefs-bufmap.c orangefs_bufmap_free(bufmap);