 buffer_head  ,    
      <linux/buffer_head.h>.

    ,    -
 .

struct buffer_head {

unsigned long     b state;         /*    */
atomic t          b count;         /*    */
struct buffer_head *b_this_page;    /*    

  */
Struct page        *b_page;         /*    */'
sector t          b blocknr;       /*    */
u32               b_size;          /*   ( ) */
char              *b data;         /*     */
struct block device *b bdev;         /*   */
bh_end_io_t       *b_end_io;       /*   - */
void              *b_private;      /*    */
struct list_head  b_assoc_buffers; /*    */

};

 b_ state    .   -
     ,    . 13.1.
       bh_state_bits, -
    <linux/buffer_head.h>.

 13.1.    bh state

  

BH_Uptodate             

BH_Dirty                (    
 ,        )

BH_Lock                   -  ,
  ,    

BH_Req                   

BH_Mapped                    
BH_New                          
BH_Async_Read             
BH_Async_Write            
BH_Delay                    

BH_Boundary                  
         

 bh_state_bits      
 BH_PrivateStart.       ,  -
  ,      -
 .  ,       BH_PrivateStart,
    -    -
 ,       b_state.

296                                                                     13