From patchwork Sat Apr 4 19:13:12 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Monakhov X-Patchwork-Id: 458176 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 8C81614007F for ; Sun, 5 Apr 2015 05:18:52 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753006AbbDDTNo (ORCPT ); Sat, 4 Apr 2015 15:13:44 -0400 Received: from mailhub.sw.ru ([195.214.232.25]:20227 "EHLO relay.sw.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752889AbbDDTNm (ORCPT ); Sat, 4 Apr 2015 15:13:42 -0400 Received: from mct2.qa.sw.ru ([10.29.1.63]) by relay.sw.ru (8.13.4/8.13.4) with ESMTP id t34JDUJC024798; Sat, 4 Apr 2015 22:13:36 +0300 (MSK) From: Dmitry Monakhov To: linux-kernel@vger.kernel.org Cc: linux-fsdevel@vger.kernel.org, viro@zeniv.linux.org.uk, Dmitry Monakhov , linux-ext4@vger.kernel.org Subject: [PATCH 03/16] ext4: use is_xxx_kiocb instead of filp->fl_flags Date: Sat, 4 Apr 2015 23:13:12 +0400 Message-Id: <1428174805-853-4-git-send-email-dmonakhov@openvz.org> X-Mailer: git-send-email 1.9.3 In-Reply-To: <1428174805-853-1-git-send-email-dmonakhov@openvz.org> References: <1428174805-853-1-git-send-email-dmonakhov@openvz.org> Sender: linux-ext4-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-ext4@vger.kernel.org Cc: linux-ext4@vger.kernel.org Signed-off-by: Dmitry Monakhov --- fs/ext4/file.c | 12 +++++------- 1 files changed, 5 insertions(+), 7 deletions(-) diff --git a/fs/ext4/file.c b/fs/ext4/file.c index 598abbb..27cf1cc 100644 --- a/fs/ext4/file.c +++ b/fs/ext4/file.c @@ -95,7 +95,6 @@ ext4_file_write_iter(struct kiocb *iocb, struct iov_iter *from) struct inode *inode = file_inode(iocb->ki_filp); struct mutex *aio_mutex = NULL; struct blk_plug plug; - int o_direct = io_is_direct(file); int overwrite = 0; size_t length = iov_iter_count(from); ssize_t ret; @@ -105,18 +104,17 @@ ext4_file_write_iter(struct kiocb *iocb, struct iov_iter *from) * Unaligned direct AIO must be serialized; see comment above * In the case of O_APPEND, assume that we must always serialize */ - if (o_direct && + if (is_direct_kiocb(iocb) && ext4_test_inode_flag(inode, EXT4_INODE_EXTENTS) && !is_sync_kiocb(iocb) && - (file->f_flags & O_APPEND || - ext4_unaligned_aio(inode, from, pos))) { + (is_append_kiocb(iocb) || ext4_unaligned_aio(inode, from, pos))) { aio_mutex = ext4_aio_mutex(inode); mutex_lock(aio_mutex); ext4_unwritten_wait(inode); } mutex_lock(&inode->i_mutex); - if (file->f_flags & O_APPEND) + if (is_append_kiocb(iocb)) iocb->ki_pos = pos = i_size_read(inode); /* @@ -138,7 +136,7 @@ ext4_file_write_iter(struct kiocb *iocb, struct iov_iter *from) } iocb->private = &overwrite; - if (o_direct) { + if (is_direct_kiocb(iocb)) { blk_start_plug(&plug); @@ -182,7 +180,7 @@ ext4_file_write_iter(struct kiocb *iocb, struct iov_iter *from) if (err < 0) ret = err; } - if (o_direct) + if (is_direct_kiocb(iocb)) blk_finish_plug(&plug); errout: