Lines Matching defs:header
192 static void bl_mark_devices_unavailable(struct nfs_pgio_header *header, bool rw)
194 struct pnfs_block_layout *bl = BLK_LSEG2EXT(header->lseg);
195 size_t bytes_left = header->args.count;
199 isect = header->args.offset >> SECTOR_SHIFT;
200 bytes_left += header->args.offset - (isect << SECTOR_SHIFT);
220 struct nfs_pgio_header *header = par->data;
222 if (!header->pnfs_error)
223 header->pnfs_error = -EIO;
224 pnfs_set_lo_fail(header->lseg);
225 bl_mark_devices_unavailable(header, false);
253 bl_read_pagelist(struct nfs_pgio_header *header)
255 struct pnfs_block_layout *bl = BLK_LSEG2EXT(header->lseg);
261 loff_t f_offset = header->args.offset;
262 size_t bytes_left = header->args.count;
263 unsigned int pg_offset = header->args.pgbase, pg_len;
264 struct page **pages = header->args.pages;
265 int pg_index = header->args.pgbase >> PAGE_SHIFT;
266 const bool is_dio = (header->dreq != NULL);
271 header->page_array.npages, f_offset,
272 (unsigned int)header->args.count);
274 par = alloc_parallel(header);
283 for (i = pg_index; i < header->page_array.npages; i++) {
290 header->pnfs_error = -EIO;
316 header->page_array.npages - i,
322 header->pnfs_error = PTR_ERR(bio);
333 if ((isect << SECTOR_SHIFT) >= header->inode->i_size) {
334 header->res.eof = 1;
335 header->res.count = header->inode->i_size - header->args.offset;
337 header->res.count = (isect << SECTOR_SHIFT) - header->args.offset;
349 struct nfs_pgio_header *header = par->data;
352 if (!header->pnfs_error)
353 header->pnfs_error = -EIO;
354 pnfs_set_lo_fail(header->lseg);
355 bl_mark_devices_unavailable(header, true);
398 bl_write_pagelist(struct nfs_pgio_header *header, int sync)
400 struct pnfs_block_layout *bl = BLK_LSEG2EXT(header->lseg);
406 loff_t offset = header->args.offset;
407 size_t count = header->args.count;
408 struct page **pages = header->args.pages;
409 int pg_index = header->args.pgbase >> PAGE_SHIFT;
416 /* At this point, header->page_aray is a (sequential) list of nfs_pages.
420 par = alloc_parallel(header);
431 for (i = pg_index; i < header->page_array.npages; i++) {
437 header->pnfs_error = -EINVAL;
445 bio = do_add_page_to_bio(bio, header->page_array.npages - i,
450 header->pnfs_error = PTR_ERR(bio);
461 header->res.count = header->args.count;