From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1C266C433EF for ; Fri, 3 Dec 2021 06:51:24 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1378601AbhLCGyq (ORCPT ); Fri, 3 Dec 2021 01:54:46 -0500 Received: from dfw.source.kernel.org ([139.178.84.217]:47324 "EHLO dfw.source.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233948AbhLCGyp (ORCPT ); Fri, 3 Dec 2021 01:54:45 -0500 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id DDEF362942 for ; Fri, 3 Dec 2021 06:51:21 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4AF4DC53FAD; Fri, 3 Dec 2021 06:51:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1638514281; bh=34SFPgg3ArvbMFrw5JC591DMTXjD/TO+MiQWb5X3ym8=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=QBhHl6RWBlamf3vNxCoGNKiLxekNfYSbEqncAKb/7+EwY2XQf3e/9iy1wheuldXCu Sx5qvAOSMf1CClb8ISSEkPDREEfOAAJy1Qa9cZLEo7ruf/PM5w5h/wxTdveTJHMUK5 PfMzjphMwcKMXFsZojqKPHuSd9fusZiR6hczBkH95656wPdPEe5yeFu/kSm+Qtgg7n JY7I80xTjqa9Y42kHOfXE2T0nClAUAFtQTkwxwLDXs0XRBbs1cZ8Bko4x9zU4wQjCR L+XWcTe2qYEqrAGeBAFZ8HXDCuRlpgSYYh1+61VVf6m21JVxhMQkOsPySxUS3rV/jv irT7LbGG4D/Cw== Message-ID: Date: Fri, 3 Dec 2021 14:51:18 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.3.2 Subject: Re: [f2fs-dev] [PATCH 5/6] f2fs: implement iomap operations Content-Language: en-US To: Jaegeuk Kim , Eric Biggers Cc: linux-kernel@vger.kernel.org, linux-f2fs-devel@lists.sourceforge.net References: <20211116214510.2934905-1-jaegeuk@kernel.org> <20211116214510.2934905-5-jaegeuk@kernel.org> <1ba0f002-42c7-b085-0c54-6071664ba79b@kernel.org> From: Chao Yu In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2021/12/3 5:28, Jaegeuk Kim wrote: > On 12/02, Jaegeuk Kim wrote: >> On 12/02, Eric Biggers wrote: >>> On Thu, Dec 02, 2021 at 11:00:47AM -0800, Jaegeuk Kim wrote: >>>> On 12/02, Jaegeuk Kim wrote: >>>>> On 12/02, Eric Biggers wrote: >>>>>> On Thu, Dec 02, 2021 at 10:04:11PM +0800, Chao Yu wrote: >>>>>>> On 2021/12/2 12:15, Eric Biggers wrote: >>>>>>>> On Thu, Dec 02, 2021 at 11:10:41AM +0800, Chao Yu wrote: >>>>>>>>> Why not relocating this check before f2fs_map_blocks()? >>>>>>> >>>>>>> Wait, it supports DIO in multi-device image after commit 71f2c8206202 >>>>>>> ("f2fs: multidevice: support direct IO"), how about >>>>>>> checking with f2fs_allow_multi_device_dio()? >>>>>>> >>>>>>> Thanks, >>>>>>> >>>>>> >>>>>> Okay, that was not the case when I sent this patch originally. We'll need to >>>>>> update this to support multiple devices. >>>>> >>>>> Chao/Eric, does this make sense? >>>>> >>>>> --- a/fs/f2fs/data.c >>>>> +++ b/fs/f2fs/data.c >>>>> @@ -4070,11 +4070,10 @@ static int f2fs_iomap_begin(struct inode *inode, loff_t offset, loff_t length, >>>>> } >>>>> if (WARN_ON_ONCE(!__is_valid_data_blkaddr(map.m_pblk))) >>>>> return -EINVAL; >>>>> - iomap->addr = blks_to_bytes(inode, map.m_pblk); >>>>> >>>>> - if (WARN_ON_ONCE(f2fs_is_multi_device(F2FS_I_SB(inode)))) >>>>> - return -EINVAL; >>>>> - iomap->bdev = inode->i_sb->s_bdev; >>>>> + iomap->bdev = map->m_multidev_dio ? map.m_bdev : >>>> >>>> correction: map.m_multidev_dio >>>> >>> >>> I guess so, but why doesn't f2fs_map_blocks() just always set m_bdev to the >>> correct block device? What is the point of m_multidev_dio? >> >> It seems we can simply assign iomap->bdev = map.m_bdev, and remove >> map->m_multidev_dio. > > Ok, it was used in previous get_block flow, but I think it'd be worth to keep it > to show by f2fs_map_blocks tracepoint. Yes, it was added for that. Thanks, > >> >>> >>> - Eric >> >> >> _______________________________________________ >> Linux-f2fs-devel mailing list >> Linux-f2fs-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel > > > _______________________________________________ > Linux-f2fs-devel mailing list > Linux-f2fs-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel >