Reads a specified block and returns the bh
struct buffer_head * __bread_gfp(struct block_device * bdev, sector_t block, unsigned size, gfp_t gfp);
bdev
the block_device to read from
block
number of block
size
size (in bytes) to read
gfp
page allocation flag
Reads a specified block, and returns buffer head that contains it. The page cache can be allocated from non-movable area not to prevent page migration if you set gfp to zero. It returns NULL if the block was unreadable.