X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=fs%2Fblock_dev.c;h=1e86823a9cbda37f8451269d91a50f90d00c9566;hb=beb0082efdb9ed54c3a3ca45a778224d59976cc5;hp=c7bda5cd3da74daa998d1fda16c3e78240d7e872;hpb=4ba25a496f62129a2ad8c2436ab2b402752dc66c;p=~andy%2Flinux diff --git a/fs/block_dev.c b/fs/block_dev.c index c7bda5cd3da..1e86823a9cb 100644 --- a/fs/block_dev.c +++ b/fs/block_dev.c @@ -592,7 +592,7 @@ static struct block_device *bd_acquire(struct inode *inode) return bdev; } -static inline int sb_is_blkdev_sb(struct super_block *sb) +int sb_is_blkdev_sb(struct super_block *sb) { return sb == blockdev_superblock; } @@ -1519,7 +1519,7 @@ ssize_t blkdev_aio_write(struct kiocb *iocb, const struct iovec *iov, blk_start_plug(&plug); ret = __generic_file_aio_write(iocb, iov, nr_segs, &iocb->ki_pos); - if (ret > 0 || ret == -EIOCBQUEUED) { + if (ret > 0) { ssize_t err; err = generic_write_sync(file, pos, ret); @@ -1542,7 +1542,7 @@ static ssize_t blkdev_aio_read(struct kiocb *iocb, const struct iovec *iov, return 0; size -= pos; - if (size < iocb->ki_left) + if (size < iocb->ki_nbytes) nr_segs = iov_shorten((struct iovec *)iov, nr_segs, size); return generic_file_aio_read(iocb, iov, nr_segs, pos); }