• Nikolay Borisov's avatar
    btrfs: Factor out read portion of btrfs_get_blocks_direct · 1c8d0175
    Nikolay Borisov authored
    Currently this function handles both the READ and WRITE dio cases. This
    is facilitated by a bunch of 'if' statements, a goto short-circuit
    statement and a very perverse aliasing of "!created"(READ) case
    by setting lockstart = lockend and checking for lockstart < lockend for
    detecting the write. Let's simplify this mess by extracting the
    READ-only code into a separate __btrfs_get_block_direct_read function.
    This is only the first step, the next one will be to factor out the
    write side as well. The end goal will be to have the common locking/
    unlocking code in btrfs_get_blocks_direct and then it will call either
    the read|write subvariants. No functional changes.
    Signed-off-by: default avatarNikolay Borisov <nborisov@suse.com>
    Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
    1c8d0175
inode.c 285 KB