indirect.c (a6cbcd4a4a85e2fdb0b3344b88df2e8b3d526b9e) | indirect.c (31b140398ce56ab41646eda7f02bcb78d6a4c916) |
---|---|
1/* 2 * linux/fs/ext4/indirect.c 3 * 4 * from 5 * 6 * linux/fs/ext4/inode.c 7 * 8 * Copyright (C) 1992, 1993, 1994, 1995 --- 672 unchanged lines hidden (view full) --- 681 atomic_inc(&inode->i_dio_count); 682 smp_mb(); 683 if (unlikely(ext4_test_inode_state(inode, 684 EXT4_STATE_DIOREAD_LOCK))) { 685 inode_dio_done(inode); 686 goto locked; 687 } 688 ret = __blockdev_direct_IO(rw, iocb, inode, | 1/* 2 * linux/fs/ext4/indirect.c 3 * 4 * from 5 * 6 * linux/fs/ext4/inode.c 7 * 8 * Copyright (C) 1992, 1993, 1994, 1995 --- 672 unchanged lines hidden (view full) --- 681 atomic_inc(&inode->i_dio_count); 682 smp_mb(); 683 if (unlikely(ext4_test_inode_state(inode, 684 EXT4_STATE_DIOREAD_LOCK))) { 685 inode_dio_done(inode); 686 goto locked; 687 } 688 ret = __blockdev_direct_IO(rw, iocb, inode, |
689 inode->i_sb->s_bdev, iter->iov, 690 offset, iter->nr_segs, | 689 inode->i_sb->s_bdev, iter, offset, |
691 ext4_get_block, NULL, NULL, 0); 692 inode_dio_done(inode); 693 } else { 694locked: | 690 ext4_get_block, NULL, NULL, 0); 691 inode_dio_done(inode); 692 } else { 693locked: |
695 ret = blockdev_direct_IO(rw, iocb, inode, iter->iov, 696 offset, iter->nr_segs, ext4_get_block); | 694 ret = blockdev_direct_IO(rw, iocb, inode, iter, 695 offset, ext4_get_block); |
697 698 if (unlikely((rw & WRITE) && ret < 0)) { 699 loff_t isize = i_size_read(inode); 700 loff_t end = offset + count; 701 702 if (end > isize) 703 ext4_truncate_failed_write(inode); 704 } --- 674 unchanged lines hidden --- | 696 697 if (unlikely((rw & WRITE) && ret < 0)) { 698 loff_t isize = i_size_read(inode); 699 loff_t end = offset + count; 700 701 if (end > isize) 702 ext4_truncate_failed_write(inode); 703 } --- 674 unchanged lines hidden --- |