inode.c (a6cbcd4a4a85e2fdb0b3344b88df2e8b3d526b9e) inode.c (31b140398ce56ab41646eda7f02bcb78d6a4c916)
1/*
2 * Copyright (C) 2007 Oracle. All rights reserved.
3 *
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public
6 * License v2 as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it will be useful,

--- 7469 unchanged lines hidden (view full) ---

7478 &BTRFS_I(inode)->runtime_flags))) {
7479 inode_dio_done(inode);
7480 flags = DIO_LOCKING | DIO_SKIP_HOLES;
7481 wakeup = false;
7482 }
7483
7484 ret = __blockdev_direct_IO(rw, iocb, inode,
7485 BTRFS_I(inode)->root->fs_info->fs_devices->latest_bdev,
1/*
2 * Copyright (C) 2007 Oracle. All rights reserved.
3 *
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public
6 * License v2 as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it will be useful,

--- 7469 unchanged lines hidden (view full) ---

7478 &BTRFS_I(inode)->runtime_flags))) {
7479 inode_dio_done(inode);
7480 flags = DIO_LOCKING | DIO_SKIP_HOLES;
7481 wakeup = false;
7482 }
7483
7484 ret = __blockdev_direct_IO(rw, iocb, inode,
7485 BTRFS_I(inode)->root->fs_info->fs_devices->latest_bdev,
7486 iter->iov, offset, iter->nr_segs,
7487 btrfs_get_blocks_direct, NULL,
7486 iter, offset, btrfs_get_blocks_direct, NULL,
7488 btrfs_submit_direct, flags);
7489 if (rw & WRITE) {
7490 if (ret < 0 && ret != -EIOCBQUEUED)
7491 btrfs_delalloc_release_space(inode, count);
7492 else if (ret >= 0 && (size_t)ret < count)
7493 btrfs_delalloc_release_space(inode,
7494 count - (size_t)ret);
7495 else

--- 1524 unchanged lines hidden ---
7487 btrfs_submit_direct, flags);
7488 if (rw & WRITE) {
7489 if (ret < 0 && ret != -EIOCBQUEUED)
7490 btrfs_delalloc_release_space(inode, count);
7491 else if (ret >= 0 && (size_t)ret < count)
7492 btrfs_delalloc_release_space(inode,
7493 count - (size_t)ret);
7494 else

--- 1524 unchanged lines hidden ---