Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp339174imm; Wed, 29 Aug 2018 23:30:51 -0700 (PDT) X-Google-Smtp-Source: ANB0VdYeOer1UtMtVk9bZ74f4spYJ033peuH7Isk4T5QlThg4NYIM37Ot7VSUYbMuwt+vNzORSwc X-Received: by 2002:a62:591a:: with SMTP id n26-v6mr9144258pfb.94.1535610650965; Wed, 29 Aug 2018 23:30:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1535610650; cv=none; d=google.com; s=arc-20160816; b=e2oeJMq7PN6H4nM+NfDAU2z04Z1wO6D7F/jMEXlbkOt6wtUwh0w1pD+HphdHxIZ2uj JGcbbwnOZ+oN7key6lbhFYagsJlmNHBgZ47YTtxjiF4NXk5xsqUp2aLwfTzMmb9AMgl0 W0ke+T7iNN2BilPvMdR4bZdnAEN1ufqkbZ/3K7RaQqQgIL25Mm/8irpzTzUx4v1VMWAi 8ORUcz5W1M//8iBT+mNo8vfV2Nu11iqBOrH5zEjlgXYA2I1Xkr7QGUE3wXLrSET3pkG1 OMy43Awj1yZ24V7YvCpsz+H8AOaph7DmHO+21wwAZsX0b2uyDBt/qcIUNGimzTenrB9J tjLg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dmarc-filter:dkim-signature:dkim-signature :arc-authentication-results; bh=+UdECnjaFsyKxps9SoGt/iVLbobLpYIPGjdc0hwIRNI=; b=XlTy+AIyEVAq+2WaOZqGK3BpIgNCFrLLARhMuQwDoNyfhDVIN1boTVC/Onfl2lBxf6 oomWHIQOT0rWkxy0TeOYoPyttTpr0I1d+SSNwFVfEosv47h4vpbDRSsfNhdC3o9dlc3/ CCnoFWwnHG6LtUYgVlneco9i8iez9lOghYNYZcPfC4JcjPN5Zhj4uD4BwYO+93yYAVqW Z7+1/R70MycA3hKE5ubGLYsaMx9nbFNd6IRd0/tQtxJlCXcnTM4LNFmKKEXT7+Z3d5Yv ySfzRnetU7zMFj6uPP6RsNSwwMbZ6aESNtcKni5WTarDecghtdDXGCCx3MGSxNvhOYCA 5mdA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=g34HBhUS; dkim=pass header.i=@codeaurora.org header.s=default header.b=jmsRO++h; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e22-v6si5786460pgi.111.2018.08.29.23.30.31; Wed, 29 Aug 2018 23:30:50 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=g34HBhUS; dkim=pass header.i=@codeaurora.org header.s=default header.b=jmsRO++h; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727544AbeH3K3q (ORCPT + 99 others); Thu, 30 Aug 2018 06:29:46 -0400 Received: from smtp.codeaurora.org ([198.145.29.96]:41774 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726169AbeH3K3q (ORCPT ); Thu, 30 Aug 2018 06:29:46 -0400 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id 67AB260540; Thu, 30 Aug 2018 06:29:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1535610551; bh=u1lVH3gqAVx7Y19DG84Mbogvv49ovpmHzzeWofauX3I=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=g34HBhUShsF6pF4RmSgTY50WSi06rWlDC8OmGmm6+xh+/dkcrNDw9TfMDCoMxjoey +SHQrGJOcio1lJZ5r/siKQQChbbIMKxyUhTzBZHtFxKWtIoELNrxLvzoMQZnA7fcti qfM5S7DYdHPbsDjxB+w5lt8XD7diASe1Lt+ed/tY= X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on pdx-caf-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.8 required=2.0 tests=ALL_TRUSTED,BAYES_00, DKIM_SIGNED,T_DKIM_INVALID autolearn=no autolearn_force=no version=3.4.0 Received: from codeaurora.org (blr-c-bdr-fw-01_globalnat_allzones-outside.qualcomm.com [103.229.19.19]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: stummala@smtp.codeaurora.org) by smtp.codeaurora.org (Postfix) with ESMTPSA id 1FE9B6032C; Thu, 30 Aug 2018 06:29:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1535610548; bh=u1lVH3gqAVx7Y19DG84Mbogvv49ovpmHzzeWofauX3I=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=jmsRO++hKtVeE1A0dp5Pt9uuQutPMJf7o2508BWQGwRAzBaNfZkUbePsz4S/nOV6y nbukA393U6RFPvuD1eGJQPNVMwJORTBPqt+1ArbwBX18X/FKDtDvOqgjPrQ1klPUdQ ltpiZoKqJZFf5HlzLCzKg+g+I7h+VkHpKpZ3zTWI= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 1FE9B6032C Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=stummala@codeaurora.org Date: Thu, 30 Aug 2018 11:59:03 +0530 From: Sahitya Tummala To: Jaegeuk Kim Cc: linux-kernel@vger.kernel.org, linux-f2fs-devel@lists.sourceforge.net Subject: Re: [f2fs-dev] [PATCH] f2fs: avoid wrong decrypted data from disk Message-ID: <20180830062903.GC12489@codeaurora.org> References: <20180827225226.14272-1-jaegeuk@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180827225226.14272-1-jaegeuk@kernel.org> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Aug 27, 2018 at 03:52:26PM -0700, Jaegeuk Kim wrote: > 1. Create a file in an encrypted directory > 2. Do GC & drop caches > 3. Read stale data before its bio for metapage was not issued yet > > Signed-off-by: Jaegeuk Kim > --- > fs/f2fs/data.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c > index 382c1ef9a9e4..c3557fd4a0bd 100644 > --- a/fs/f2fs/data.c > +++ b/fs/f2fs/data.c > @@ -1550,6 +1550,13 @@ static int f2fs_mpage_readpages(struct address_space *mapping, > bio = NULL; > } > if (bio == NULL) { > + /* > + * If the page is under writeback, we need to wait for > + * its completion to see the correct decrypted data. > + */ > + if (unlikely(f2fs_encrypted_file(inode))) > + f2fs_wait_on_block_writeback(F2FS_I_SB(inode), block_nr); > + I am not sure if this really helps the case. When the data is being moved by GC, the writeback is set on the encrypted page which belongs to meta mapping. But before that writeback could complete, the read will happen on the original file where it's corresponding page will not have any writeback set, right? > bio = f2fs_grab_read_bio(inode, block_nr, nr_pages, > is_readahead ? REQ_RAHEAD : 0); > if (IS_ERR(bio)) { > -- > 2.17.0.441.gb46fe60e1d-goog > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Linux-f2fs-devel mailing list > Linux-f2fs-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel -- -- Sent by a consultant of the Qualcomm Innovation Center, Inc. The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.