Advertisement
Guest User

Untitled

a guest
Jul 18th, 2019
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.13 KB | None | 0 0
  1. struct bio {
  2. sector_t bi_sector;
  3. struct bio *bi_next; /* request queue link */
  4. struct block_device *bi_bdev;
  5. unsigned long bi_flags; /* status, command, etc */
  6. unsigned long bi_rw; /* bottom bits READ/WRITE, top bits priority
  7. * top bits priority
  8. */
  9.  
  10. unsigned short bi_vcnt; /* how many bio_vec's */
  11. unsigned short bi_idx; /* current index into bvl_vec */
  12.  
  13. /* Number of segments in this BIO after
  14. * physical address coalescing is performed.
  15. */
  16. unsigned short bi_phys_segments;
  17.  
  18. /* Number of segments after physical and DMA remapping
  19. * hardware coalescing is performed.
  20. */
  21. unsigned short bi_hw_segments;
  22.  
  23. unsigned int bi_size; /* residual I/O count */
  24.  
  25. /*
  26. * To keep track of the max hw size, we account for the
  27. * sizes of the first and last virtually mergeable segments
  28. * in this bio
  29. */
  30. unsigned int bi_hw_front_size;
  31. unsigned int bi_hw_back_size;
  32.  
  33. unsigned int bi_max_vecs; /* max bvl_vecs we can hold */
  34.  
  35. struct bio_vec *bi_io_vec; /* the actual vec list */
  36.  
  37. bio_end_io_t *bi_end_io;
  38. atomic_t bi_cnt; /* pin count */
  39.  
  40. void *bi_private;
  41.  
  42. bio_destructor_t *bi_destructor; /* destructor */
  43. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement