~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Linux Cross Reference
Linux-2.6.17/Documentation/block/request.txt

Version: ~ [ 2.6.16 ] ~ [ 2.6.17 ] ~
Architecture: ~ [ ia64 ] ~ [ i386 ] ~ [ arm ] ~ [ ppc ] ~ [ sparc64 ] ~

  1 
  2 struct request documentation
  3 
  4 Jens Axboe <axboe@suse.de> 27/05/02
  5 
  6 1.0
  7 Index
  8 
  9 2.0 Struct request members classification
 10 
 11         2.1 struct request members explanation
 12 
 13 3.0
 14 
 15 
 16 2.0
 17 Short explanation of request members
 18 
 19 Classification flags:
 20 
 21         D       driver member
 22         B       block layer member
 23         I       I/O scheduler member
 24 
 25 Unless an entry contains a D classification, a device driver must not access
 26 this member. Some members may contain D classifications, but should only be
 27 access through certain macros or functions (eg ->flags).
 28 
 29 <linux/blkdev.h>
 30 
 31 2.1
 32 Member                          Flag    Comment
 33 ------                          ----    -------
 34 
 35 struct list_head queuelist      BI      Organization on various internal
 36                                         queues
 37 
 38 void *elevator_private          I       I/O scheduler private data
 39 
 40 unsigned char cmd[16]           D       Driver can use this for setting up
 41                                         a cdb before execution, see
 42                                         blk_queue_prep_rq
 43 
 44 unsigned long flags             DBI     Contains info about data direction,
 45                                         request type, etc.
 46 
 47 int rq_status                   D       Request status bits
 48 
 49 kdev_t rq_dev                   DBI     Target device
 50 
 51 int errors                      DB      Error counts
 52 
 53 sector_t sector                 DBI     Target location
 54 
 55 unsigned long hard_nr_sectors   B       Used to keep sector sane
 56 
 57 unsigned long nr_sectors        DBI     Total number of sectors in request
 58 
 59 unsigned long hard_nr_sectors   B       Used to keep nr_sectors sane
 60 
 61 unsigned short nr_phys_segments DB      Number of physical scatter gather
 62                                         segments in a request
 63 
 64 unsigned short nr_hw_segments   DB      Number of hardware scatter gather
 65                                         segments in a request
 66 
 67 unsigned int current_nr_sectors DB      Number of sectors in first segment
 68                                         of request
 69 
 70 unsigned int hard_cur_sectors   B       Used to keep current_nr_sectors sane
 71 
 72 int tag                         DB      TCQ tag, if assigned
 73 
 74 void *special                   D       Free to be used by driver
 75 
 76 char *buffer                    D       Map of first segment, also see
 77                                         section on bouncing SECTION
 78 
 79 struct completion *waiting      D       Can be used by driver to get signalled
 80                                         on request completion
 81 
 82 struct bio *bio                 DBI     First bio in request
 83 
 84 struct bio *biotail             DBI     Last bio in request
 85 
 86 request_queue_t *q              DB      Request queue this request belongs to
 87 
 88 struct request_list *rl         B       Request list this request came from

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.