• Akinobu Mita's avatar
    vfs: make guard_bh_eod() more generic · 59d43914
    Akinobu Mita authored
    This patchset implements readpages() operation for block device by using
    mpage_readpages() which can create multipage BIOs instead of BIOs for each
    page and reduce system CPU time consumption.
    
    This patch (of 3):
    
    guard_bh_eod() is used in submit_bh() to allow us to do IO even on the odd
    last sectors of a device, even if the block size is some multiple of the
    physical sector size.  This makes guard_bh_eod() more generic and renames
    it guard_bio_eod() so that we can use it without struct buffer_head
    argument.
    
    The reason for this change is that using mpage_readpages() for block
    device requires to add this guard check in mpage code.
    Signed-off-by: default avatarAkinobu Mita <akinobu.mita@gmail.com>
    Cc: Jens Axboe <axboe@kernel.dk>
    Cc: Alexander Viro <viro@zeniv.linux.org.uk>
    Cc: Jeff Moyer <jmoyer@redhat.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    59d43914
buffer.c 88.7 KB