Received: by 2002:ac0:a582:0:0:0:0:0 with SMTP id m2-v6csp2342138imm; Thu, 11 Oct 2018 08:48:10 -0700 (PDT) X-Google-Smtp-Source: ACcGV62DQ/9XWfElHU/bAcvpSckLJm/iG01QTUPkzNHiyiWvs62vQabdWn+jeWwkrHMxN8edy1ls X-Received: by 2002:a63:2f42:: with SMTP id v63-v6mr1896255pgv.298.1539272890674; Thu, 11 Oct 2018 08:48:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1539272890; cv=none; d=google.com; s=arc-20160816; b=o6Q/6dMU6e9at7HVaiN3cNZz9W0rYo5BASQpRy/lo63aDGMWhBLjK5t958Q9pVQ0dv lEqIZlDqqtbUOtv2mFP5X3t321+sAeNX+x27AIk1AxtFdmS7po22ggGQzo3eXE/C9RHH xoQL6L5bUv+5eCDRBRZKyREejeaO72V79BakiV+1GQndjXbvlNWyQThHk3QUY6KiRpcU ypFLP6KbNap7L8Mew5pP6tJ3RSGc+L/uUaKzKnzOVWjP7oX7Rfl3aN2jg4JCmLpONv0B YJTktV2YmhTr2Gi9x1Tlc/j+TcmqftucA/bmFRtECfKDFZKee9DZTP81o/WZ+/E0/QUf ngjA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=cqbZuMcQMlf3mwSTwJsaandy6n9EOuIzf8JdrdZv35Y=; b=LwsdITD9MGVfT4XfBofBbo+zWYMaSWa+iaoUF6blS0RWLB3juG8VJcGDP5jGLsyN/N Meawn0r2gTHlMbWpxIyqEmy928X816ldRNxUbV2j0EYG2mZvswZBhbxlC5NWvuNdsDGt 3IFs9dwZIMoDX2DDthaKiiSXgTUiq5REEjy6a1WofSVifEkze3g9GEACPXrpzc2/B9fU CPTp5k4exq64kst3XzRklNSj+nflQ48H7+r+jRGGlpvXFWa3RZgMagsbXFP4nSrE4Me5 rohcweGxez4b57fdLd9k1ua7bRsMfLvCmgXhMiM8ioHrIDV2QT81blGi+nfXDYLg4vLH iz8Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=NjDVeeNZ; 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 t33-v6si27825674pgk.141.2018.10.11.08.47.55; Thu, 11 Oct 2018 08:48:10 -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=@kernel.org header.s=default header.b=NjDVeeNZ; 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 S1731337AbeJKXNQ (ORCPT + 99 others); Thu, 11 Oct 2018 19:13:16 -0400 Received: from mail.kernel.org ([198.145.29.99]:45732 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726762AbeJKXNP (ORCPT ); Thu, 11 Oct 2018 19:13:15 -0400 Received: from localhost (ip-213-127-77-176.ip.prioritytelecom.net [213.127.77.176]) (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 EBA0420652; Thu, 11 Oct 2018 15:45:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1539272730; bh=6yi8L2b1cBeWj/9VL74GYPEzVFRw0MxavDakRWztKmU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=NjDVeeNZR0a7zWZsjeXNEBk46gJ1GshyxTBHjQSU4bGxi5zDUua/0mVOalT2A8Scr /S7YsJ7EwgbmSLhcX1vjUVwS5wVMVmgdqylrwHJVIw5p+BhqPIGM2rMPQ+YnZUHskz CBzKGi/nntKJmp5DzH1o2w6871pCxdYBkUAtLxCM= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Joe Thornber , Mike Snitzer Subject: [PATCH 4.14 19/45] dm cache metadata: ignore hints array being too small during resize Date: Thu, 11 Oct 2018 17:39:46 +0200 Message-Id: <20181011152509.687556424@linuxfoundation.org> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181011152508.885515042@linuxfoundation.org> References: <20181011152508.885515042@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.14-stable review patch. If anyone has any objections, please let me know. ------------------ From: Joe Thornber commit 4561ffca88c546f96367f94b8f1e4715a9c62314 upstream. Commit fd2fa9541 ("dm cache metadata: save in-core policy_hint_size to on-disk superblock") enabled previously written policy hints to be used after a cache is reactivated. But in doing so the cache metadata's hint array was left exposed to out of bounds access because on resize the metadata's on-disk hint array wasn't ever extended. Fix this by ignoring that there are no on-disk hints associated with the newly added cache blocks. An expanded on-disk hint array is later rewritten upon the next clean shutdown of the cache. Fixes: fd2fa9541 ("dm cache metadata: save in-core policy_hint_size to on-disk superblock") Cc: stable@vger.kernel.org Signed-off-by: Joe Thornber Signed-off-by: Mike Snitzer Signed-off-by: Greg Kroah-Hartman --- drivers/md/dm-cache-metadata.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) --- a/drivers/md/dm-cache-metadata.c +++ b/drivers/md/dm-cache-metadata.c @@ -1454,8 +1454,8 @@ static int __load_mappings(struct dm_cac if (hints_valid) { r = dm_array_cursor_next(&cmd->hint_cursor); if (r) { - DMERR("dm_array_cursor_next for hint failed"); - goto out; + dm_array_cursor_end(&cmd->hint_cursor); + hints_valid = false; } }