Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp2555938pxj; Mon, 10 May 2021 05:51:40 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyOgL8rr8fKDXoL0vWtReneQjA4GZYrBPaIe3CarviA/jXxAyck9X85pVg5nnGHPr+mMtwc X-Received: by 2002:a17:906:2596:: with SMTP id m22mr25867720ejb.175.1620651100194; Mon, 10 May 2021 05:51:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620651100; cv=none; d=google.com; s=arc-20160816; b=qqMVhx8cu2z9TF8co7UHmhljLS2EB59a2tMHDdyHfW0zVz2C2zES0cf5bxHoqOCyO9 lFJZWrmTUd0PoZybhtR8N9+1BFfQadzaoih7vYYIwvXWM69My8xHIUzxaH+QlYieBJno r04ebOleCh6uMZ4E8ux/L1N8TxxRcuHS+4Yk8lfZ7847TpB76bWOGtAV207nOGAXWDYu yYJGBArCHpxYvbE2IKAkoH6YtPkZGG/F+I6iUbpBm436sSA/bWfXHuPeLb+CRgy/rOFN Dqh6yRpBbPx+MjGQG7Vx8BfxKCp6YLeQ1SiEhbo7UtZGKfZoBjI01uXLPxo2uJ0we80N zbJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=8WvRXSEGpSUDg3IGDbDU5C/I0KQ7VoBNfW56KR9/HXU=; b=Vc0h+WqqZ7sx4wIWku6fibQ0EWCDgKmOXLvEoSYp4ay3NWCt0LHcnXYWN3i3+1iBRo XQNRRGGezEkdF6V1TTmJJcTk1js7jMyawhD/WMf9rxS26fzLpltqtxPS38jWz3cAjPhB ECQjLBqr0WxSYC5RyQoFRX11keCOP3h87H0DawsT8aVjYITqUXeTMGpSmZG5itGHnxwZ ag0jw501JEmb6mo9DZ1L+il5vBaNNg1S+aoXrHbCxh8U7TllUbNEuoWjzl7OCwTYqIY4 AbH/MzqDAHx87lXoB7/Zg4ZHc67Hm6nJhISWfLb2sge6KVoXlqr9MYlw1qkc4vs7U+9W kuvQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=dOs9CJIo; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id u14si12877134ejb.680.2021.05.10.05.51.16; Mon, 10 May 2021 05:51:40 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=dOs9CJIo; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1349049AbhEJMsB (ORCPT + 99 others); Mon, 10 May 2021 08:48:01 -0400 Received: from mail.kernel.org ([198.145.29.99]:34976 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238272AbhEJLRS (ORCPT ); Mon, 10 May 2021 07:17:18 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id A43A0616EA; Mon, 10 May 2021 11:12:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1620645177; bh=NnXrD86QDaepdkZjCNN7ZgN4nfylby90UqM9E5K6xzI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=dOs9CJIoDEwQFl+n47fPM540l8oV8KdBv3VjyGhUP1Z9eDj63erAy2zeIcbjD+D8g wemgnww4+gLuSLZ84cX8t7CNb+27LOVvXOl/nxg7bHtHSB6RaqqG111yDQNImM7Ziz ifBhx3E2t5mcG4RwaCV8CJba7dr9CjW+MlNlFVQk= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Joe Thornber , Ming-Hung Tsai , Mike Snitzer Subject: [PATCH 5.12 377/384] dm space map common: fix division bug in sm_ll_find_free_block() Date: Mon, 10 May 2021 12:22:46 +0200 Message-Id: <20210510102027.203333857@linuxfoundation.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210510102014.849075526@linuxfoundation.org> References: <20210510102014.849075526@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Joe Thornber commit 5208692e80a1f3c8ce2063a22b675dd5589d1d80 upstream. This division bug meant the search for free metadata space could skip the final allocation bitmap's worth of entries. Fix affects DM thinp, cache and era targets. Cc: stable@vger.kernel.org Signed-off-by: Joe Thornber Tested-by: Ming-Hung Tsai Signed-off-by: Mike Snitzer Signed-off-by: Greg Kroah-Hartman --- drivers/md/persistent-data/dm-space-map-common.c | 2 ++ 1 file changed, 2 insertions(+) --- a/drivers/md/persistent-data/dm-space-map-common.c +++ b/drivers/md/persistent-data/dm-space-map-common.c @@ -339,6 +339,8 @@ int sm_ll_find_free_block(struct ll_disk */ begin = do_div(index_begin, ll->entries_per_block); end = do_div(end, ll->entries_per_block); + if (end == 0) + end = ll->entries_per_block; for (i = index_begin; i < index_end; i++, begin = 0) { struct dm_block *blk;