Received: by 2002:a89:48b:0:b0:1f5:f2ab:c469 with SMTP id a11csp582763lqd; Wed, 24 Apr 2024 10:35:56 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCVlaYHXS+0au20pHPHMNR7KTRH4YYaxKVL6NGw4imud9OnjeVLfI0MWZ5h4H1j+zocwE1kp2rY3OK5bwf5FpcV/qjeRrSwAoj/bJMNrVw== X-Google-Smtp-Source: AGHT+IGuRhbhbi74y7ODAuY2I44bkLT4l1xJwxI5ZpPqf+FkYyRZPECnqHYPGVuZAuIa9bejid8O X-Received: by 2002:ad4:510e:0:b0:6a0:8987:f68 with SMTP id g14-20020ad4510e000000b006a089870f68mr3242064qvp.1.1713980156077; Wed, 24 Apr 2024 10:35:56 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1713980156; cv=pass; d=google.com; s=arc-20160816; b=QzUQnJWs2C/pTkNIfzZIuK59foktTgHY5TOz6n0XjQKH84AFFHeVxm4kHijlLcRUxu /zYSFscP25YWjpNQISWh6sMlZAO2L4wVFFVL6UWWWhZtYslh8QKcTBGvD0MVNIfgx21a oJV4IunVPPSxOjPdY8e4zp2b1ZyRJhSK5CZSJvY90RQh/ikinWTKdENrbSZyxsJNe+tE 5kQuBPW8VrvFKOyDMGCJbANSYvpxO8m7W4sU1pKptF2Y6mTSPSOjkoHDZP9mwDG/r+wU rZRS7zoBP/OS4nsbIDjdePEOH3eTEg4AeET8mFTwj8hT+6CDCnOTdjbazM2XLueHCRj3 BlmQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:cc:to :from:dkim-signature; bh=xmKgKACp3JhtOJBqJoIq/G/7KjOl0wLk3uLpujJ12+A=; fh=heZZgfI4OZ6nNnrPawWsZCKXiIAqSWRUVVM5Mq1HVjw=; b=OZzmxwDOfi2wm9Nr2FLUDSiV/PJj5IfpZOY7+VPx2iHGgpUHZ39Y7d/f7OX7hkwrW/ UlZ4SdB4lq2dQf/zJKpClnCsXwPu4OrgdtYLEGDDT7oekPl30Ry4DHhyeLTES8mYALg3 w5FauF9wvsyrH9MkeZi7qWmjS8C7NtzDzQKOVOhuihaMgwKBMabEcgbCq2LqRjXMlHTM v2GI1wSbSkV1l9ZxsNGfMTlBft32CL0qc+bydcoZexUa/vyOg+eVzF8/q+cAZ8/WH8+Q lWBn6LNRN0BzGc6Fm9oUQStK5UFq1owf6U1qkXX1C9TFksbAyFUDIHyMFzDQ/eMBNUNy pEig==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=C5owhCdw; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-157405-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-kernel+bounces-157405-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [147.75.199.223]) by mx.google.com with ESMTPS id gu15-20020a056214260f00b00699462a7385si16031589qvb.308.2024.04.24.10.35.55 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 Apr 2024 10:35:56 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-157405-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) client-ip=147.75.199.223; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=C5owhCdw; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-157405-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-kernel+bounces-157405-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id C89EB1C23730 for ; Wed, 24 Apr 2024 17:35:55 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id E826716D4C5; Wed, 24 Apr 2024 17:35:50 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="C5owhCdw" Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1FD7413777A for ; Wed, 24 Apr 2024 17:35:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1713980150; cv=none; b=PF4FBPL2EGBsxIKDtdkBUjzxwsgsaZHfqrUUyznLntGVjjcyxByFxjqPzvpKZ8wY00vMb3yci+ehhRpCb7EgYIqFMjGgwGqMpcOkPvNBDnMut8GdIJPtyFbQj6q/lSAnOAFAKTirOOVfbL/Fwu+d7AWg6F0FgwC6ditvtyxFAdc= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1713980150; c=relaxed/simple; bh=Zx21olM6TIaTxOuCCMQe79AYeFL/GNrR4k4CavTnoaI=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=sod3Q8YOAn8D/b5W/SWwOp/GHczPi+VYsCkNjVpq2k4SRh3NoJ09PwUd3yeOKLACfbi1wCFUZCUr/49jrEIvyW33TgAMFEDMW4dcU7sxDmtdhwUgtkfceGcYMqj83q4KL9Ui6E10zHywqQzfmE1WLePbEbg6rb5faI1zjI2wKsU= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=C5owhCdw; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id A1D0CC113CD; Wed, 24 Apr 2024 17:35:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1713980149; bh=Zx21olM6TIaTxOuCCMQe79AYeFL/GNrR4k4CavTnoaI=; h=From:To:Cc:Subject:Date:From; b=C5owhCdw5/jNzo4EXhhD4qYlKIO1w4wRmFxlqkBkF429P6nWjaizzpCPRdYDgUO/x SFiBdn+15eoCMyccee/urI38e+ynLSuKp/oRoN4mXM/96/svlcmanFAqODmcSDvge4 wQUonhmhf9DHZrBZ0566qz+IvE3nLr0oa5Dbj2DFK8GjZL8pOZBVEY7gomsn1nnq3V zXlJjhYzKKd3GhhFaRPG/6hJ7YlaoS2bI7miAeNHl+NSRH9PC9IpnVc5GbCr+q6VZP vOVbdrolEmedOWq4aNmfhYeT7Rortcgcv7OsjBze8oH93rpjK5BSoWefTalpogDFvI 49H/wulrmnuww== From: Jaegeuk Kim To: linux-kernel@vger.kernel.org, linux-f2fs-devel@lists.sourceforge.net Cc: Jaegeuk Kim , stable@kernel.org Subject: [PATCH] f2fs: fix false alarm on invalid block address Date: Wed, 24 Apr 2024 17:35:48 +0000 Message-ID: <20240424173548.1515606-1-jaegeuk@kernel.org> X-Mailer: git-send-email 2.44.0.769.g3c40516874-goog Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit f2fs_ra_meta_pages can try to read ahead on invalid block address which is not the corruption case. Cc: # v6.9+ Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=218770 Fixes: 31f85ccc84b8 ("f2fs: unify the error handling of f2fs_is_valid_blkaddr") Signed-off-by: Jaegeuk Kim --- fs/f2fs/checkpoint.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/fs/f2fs/checkpoint.c b/fs/f2fs/checkpoint.c index 5d05a413f451..55d444bec5c0 100644 --- a/fs/f2fs/checkpoint.c +++ b/fs/f2fs/checkpoint.c @@ -179,22 +179,22 @@ static bool __f2fs_is_valid_blkaddr(struct f2fs_sb_info *sbi, break; case META_SIT: if (unlikely(blkaddr >= SIT_BLK_CNT(sbi))) - goto err; + goto check_only; break; case META_SSA: if (unlikely(blkaddr >= MAIN_BLKADDR(sbi) || blkaddr < SM_I(sbi)->ssa_blkaddr)) - goto err; + goto check_only; break; case META_CP: if (unlikely(blkaddr >= SIT_I(sbi)->sit_base_addr || blkaddr < __start_cp_addr(sbi))) - goto err; + goto check_only; break; case META_POR: if (unlikely(blkaddr >= MAX_BLKADDR(sbi) || blkaddr < MAIN_BLKADDR(sbi))) - goto err; + goto check_only; break; case DATA_GENERIC: case DATA_GENERIC_ENHANCE: @@ -228,6 +228,7 @@ static bool __f2fs_is_valid_blkaddr(struct f2fs_sb_info *sbi, return true; err: f2fs_handle_error(sbi, ERROR_INVALID_BLKADDR); +check_only: return false; } -- 2.44.0.769.g3c40516874-goog