Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp2651238pxj; Mon, 14 Jun 2021 04:04:29 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxIJjxNFARAXuxGP3Sex2DNLozGwvM27bjwxhZ9dVgWG0kMqQ1zawtJFxcvRKgOd/tJhSw4 X-Received: by 2002:aa7:de1a:: with SMTP id h26mr16055964edv.176.1623668669588; Mon, 14 Jun 2021 04:04:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1623668669; cv=none; d=google.com; s=arc-20160816; b=culbeENrggjRct1uVf9m+H8xu2C4G4Hvb74lRj+QK2BeVLFR01e6R7VIyNkrZt4NqU cv0V4qMdWYHjGo9r5nOoWGo0wHUzuZKXxd96aEfm64+CAI6xw2KGiic/qqzD1nyOeC85 iPROnpNRm3WMs9U3mWICylVwiVBxpJhsSNrFSrBJvagzvrFdcgyCRui4aEPht2SaDtXy 8lBq2IlGAUdKSMygx17JEmARpXNI1pGgGqsl3KoVIGkeoTcykBc0XMsgxbEwVVBwzt++ SXmG59Vm/YDAhMrKxRKI1bPzGA+RlQw1SOQP/2Kn5JRzfDb+yZqdPIe9u1jGgN7fndEl 8HkA== 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=M/16H3JM+CG+iDED6cHKXhN6jPo7YgiK/GIc0NcskFQ=; b=AUqciFI+OX39wY3fT/vJbs6YMTxj4tfUuQjU7knqAlVrU/LoelUTVUMo0KV4S5IjJZ 1KHRz8lhGX1FNxbbejjW1IDDGP9kFcBwxMaCJGuCXdwhXCxe73NyaW5oeGh6PRty2IEB 8sr73kWGY5wMWLvV24XSO3zc5wpsttwG5xM1vqT3261nu4iwJQ1KyBm3ahCqydP6zlzM k1yU6OICxTnI7cR2E0nyZ/rTHpqyCLVkKIWEgP+iKEv5xRN991ssrLGYa83sBZ6ue9rk 94gEHIgOSQ9km7XCTwSAnMEcmBZE0i25bMhTHGS/S8Cg9FRya5TUvVL/L7IPLjSLUw6s vG3A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=ardE2Yy2; 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 jz16si12212120ejb.168.2021.06.14.04.04.07; Mon, 14 Jun 2021 04:04:29 -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=ardE2Yy2; 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 S234995AbhFNLEg (ORCPT + 99 others); Mon, 14 Jun 2021 07:04:36 -0400 Received: from mail.kernel.org ([198.145.29.99]:58288 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234868AbhFNKyo (ORCPT ); Mon, 14 Jun 2021 06:54:44 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id D2514613B2; Mon, 14 Jun 2021 10:40:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1623667225; bh=Yl+uSzJrXU/T1rjMigbL8ARDVORP+1HyJq7z6XFioZM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ardE2Yy26BAYMeWPxRzZ/dsfloZoUUZRn+YYnnHFvVBV3Pp/FPZGkY87wDmQXtdk7 DsrPdwgHwZry9n+AUO0Fv9qOkapNeDPO/ek2XU5iXjIGgGyKxHFUCLogfEsv//NVp9 rvRgV1HVXg+HEesl3Or/rKh6Urx9c7OBUzvGwLMg= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Paolo Bonzini Subject: [PATCH 5.4 75/84] kvm: fix previous commit for 32-bit builds Date: Mon, 14 Jun 2021 12:27:53 +0200 Message-Id: <20210614102648.912571411@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210614102646.341387537@linuxfoundation.org> References: <20210614102646.341387537@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: Paolo Bonzini commit 4422829e8053068e0225e4d0ef42dc41ea7c9ef5 upstream. array_index_nospec does not work for uint64_t on 32-bit builds. However, the size of a memory slot must be less than 20 bits wide on those system, since the memory slot must fit in the user address space. So just store it in an unsigned long. Signed-off-by: Paolo Bonzini Signed-off-by: Greg Kroah-Hartman --- include/linux/kvm_host.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) --- a/include/linux/kvm_host.h +++ b/include/linux/kvm_host.h @@ -1051,8 +1051,8 @@ __gfn_to_hva_memslot(struct kvm_memory_s * table walks, do not let the processor speculate loads outside * the guest's registered memslots. */ - unsigned long offset = array_index_nospec(gfn - slot->base_gfn, - slot->npages); + unsigned long offset = gfn - slot->base_gfn; + offset = array_index_nospec(offset, slot->npages); return slot->userspace_addr + offset * PAGE_SIZE; }