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 X-Spam-Level: X-Spam-Status: No, score=-3.5 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A6998ECE58E for ; Wed, 9 Oct 2019 13:27:35 +0000 (UTC) Received: from lists.ozlabs.org (lists.ozlabs.org [203.11.71.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 59924218AC for ; Wed, 9 Oct 2019 13:27:35 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="0B7UVdev" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 59924218AC Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=linuxfoundation.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=linux-erofs-bounces+linux-erofs=archiver.kernel.org@lists.ozlabs.org Received: from bilbo.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 46pFPw4c72zDqLp for ; Thu, 10 Oct 2019 00:27:32 +1100 (AEDT) Authentication-Results: lists.ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=linuxfoundation.org (client-ip=198.145.29.99; helo=mail.kernel.org; envelope-from=gregkh@linuxfoundation.org; receiver=) Authentication-Results: lists.ozlabs.org; dmarc=none (p=none dis=none) header.from=linuxfoundation.org Authentication-Results: lists.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.b="0B7UVdev"; dkim-atps=neutral Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 46pFPh185xzDqKq for ; Thu, 10 Oct 2019 00:27:20 +1100 (AEDT) Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 61915218DE; Wed, 9 Oct 2019 13:27:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1570627637; bh=WwDDvSvraps9ciVLSl8VsuQOGydQQjhVL47eDig+Vbw=; h=Subject:To:Cc:From:Date:In-Reply-To:From; b=0B7UVdevyCEuLA0nSVYC0Qeh2WGOAC6hz8LWl107LcNlxGD217FepR9Uu1P6VW+Is zH4jcr5QOTiEyzNB5u6IrOno9+UP6TIl0rDLXqLX1sqzG+vIG6fnWDokxi5tw02zYa Ak/H6WX3A32+LyZcnLA0hd0U9qn1VLvVz7ol66YI= Subject: Patch "staging: erofs: avoid endless loop of invalid lookback distance 0" has been added to the 5.3-stable tree To: 20190819103426.87579-7-gaoxiang25@huawei.com, gaoxiang25@huawei.com, gregkh@linuxfoundation.org, linux-erofs@lists.ozlabs.org, miaoxie@huawei.com, yuchao0@huawei.com From: Date: Wed, 09 Oct 2019 15:27:07 +0200 In-Reply-To: <20191009100554.165048-4-gaoxiang25@huawei.com> Message-ID: <1570627627187166@kroah.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ANSI_X3.4-1968 Content-Transfer-Encoding: 8bit X-stable: commit X-Patchwork-Hint: ignore X-BeenThere: linux-erofs@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development of Linux EROFS file system List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: stable-commits@vger.kernel.org Errors-To: linux-erofs-bounces+linux-erofs=archiver.kernel.org@lists.ozlabs.org Sender: "Linux-erofs" This is a note to let you know that I've just added the patch titled staging: erofs: avoid endless loop of invalid lookback distance 0 to the 5.3-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: staging-erofs-avoid-endless-loop-of-invalid-lookback-distance-0.patch and it can be found in the queue-5.3 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let know about it. >From foo@baz Wed 09 Oct 2019 03:24:16 PM CEST From: Gao Xiang Date: Wed, 9 Oct 2019 18:05:53 +0800 Subject: staging: erofs: avoid endless loop of invalid lookback distance 0 To: Greg Kroah-Hartman , , Chao Yu Cc: , Miao Xie , Gao Xiang Message-ID: <20191009100554.165048-4-gaoxiang25@huawei.com> From: Gao Xiang commit 598bb8913d015150b7734b55443c0e53e7189fc7 upstream. As reported by erofs-utils fuzzer, Lookback distance should be a positive number, so it should be actually looked back rather than spinning. Fixes: 02827e1796b3 ("staging: erofs: add erofs_map_blocks_iter") Cc: # 4.19+ Signed-off-by: Gao Xiang Reviewed-by: Chao Yu Link: https://lore.kernel.org/r/20190819103426.87579-7-gaoxiang25@huawei.com [ Gao Xiang: Since earlier kernels don't define EFSCORRUPTED, let's use EIO instead. ] Signed-off-by: Gao Xiang Signed-off-by: Greg Kroah-Hartman --- drivers/staging/erofs/zmap.c | 6 ++++++ 1 file changed, 6 insertions(+) --- a/drivers/staging/erofs/zmap.c +++ b/drivers/staging/erofs/zmap.c @@ -350,6 +350,12 @@ static int vle_extent_lookback(struct z_ switch (m->type) { case Z_EROFS_VLE_CLUSTER_TYPE_NONHEAD: + if (!m->delta[0]) { + errln("invalid lookback distance 0 at nid %llu", + vi->nid); + DBG_BUGON(1); + return -EIO; + } return vle_extent_lookback(m, m->delta[0]); case Z_EROFS_VLE_CLUSTER_TYPE_PLAIN: map->m_flags &= ~EROFS_MAP_ZIPPED; Patches currently in stable-queue which might be from gaoxiang25@huawei.com are queue-5.3/staging-erofs-fix-an-error-handling-in-erofs_readdir.patch queue-5.3/staging-erofs-detect-potential-multiref-due-to-corrupted-images.patch queue-5.3/staging-erofs-avoid-endless-loop-of-invalid-lookback-distance-0.patch queue-5.3/staging-erofs-some-compressed-cluster-should-be-submitted-for-corrupted-images.patch queue-5.3/staging-erofs-add-two-missing-erofs_workgroup_put-for-corrupted-images.patch