Received: by 2002:a5b:505:0:0:0:0:0 with SMTP id o5csp1627172ybp; Fri, 4 Oct 2019 18:53:26 -0700 (PDT) X-Google-Smtp-Source: APXvYqxgru4PigI+uHHF8Qth3sU3nMcFPdB2NXGSOmRzOgnPO2JGeUfRL2mFyhhh+Ceb+Kd89Aia X-Received: by 2002:a05:6402:1355:: with SMTP id y21mr18390641edw.303.1570240406428; Fri, 04 Oct 2019 18:53:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1570240406; cv=none; d=google.com; s=arc-20160816; b=1F7xtif8aGL8k9s9lcpe+zFMs6Qe5imO5UWGo3NF0MUOxIwZbuW+3E3kbzdt3r7Ugy NfylQMVhFfLteUiak5SarWPAjJ7pnMH19q4RF4OdZGaNacFw/GLtctD6KsrSS+gIJpyo n/MlBTteoMHEgzSFQ5nqsutrR+1oevQfTuuDU9xEcOj2hk8M18egj71NpbO99joZlDud ptgermi2rH5gg7hMzbNi60OiyX6oOf+eXzCzMiLVOGnOlOrN8OkMhwSdcQV9JEdyauN3 Do3sq2t0vVm1EYYGwEr4HKIGKqGVhqry4HdKygOE9OBg5g8UhtbfcDv40q9Djr4nEiTZ W/Fg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature; bh=QsfvGFuRohKr1l6pObvG2zaoMC/SPwYl/b1JcIlr95c=; b=jueQ08KtlJ8Z40ec8Q3+WXCkE6DKhdsnIXYlEFWVD7SxvMHnT3Y3KYz7KO6Xa7DUeB JR2b92vcrb/G0YH8nVqbUDsgo3mtYBeh79KVXGQux2xejyptt8vg9CU1aIosu0tloY5N ZeZWu+PUS7EGNi+cDQnaqA96NqSd2LxVVCIfQe8WFQKJ97UiR+MRjWDoaPKAgj6QbZET f8jjOLGlEzjz3J1zlPb8fKpeRCssuXQ7WrvSE/0SzatyVvsAsIevTHi7HYdGmyQu55Kh 367JH9PmDv9geq0pgP6h9xGtm1MP7cQQBoG0bcEeJOsxQzT1Dbq47AklwQtQfXV7CD1b UsUw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@sifive.com header.s=google header.b=AoBRZZiy; 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 b35si4830339edb.204.2019.10.04.18.53.03; Fri, 04 Oct 2019 18:53:26 -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=@sifive.com header.s=google header.b=AoBRZZiy; 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 S1726427AbfJEBts (ORCPT + 99 others); Fri, 4 Oct 2019 21:49:48 -0400 Received: from mail-pg1-f195.google.com ([209.85.215.195]:44139 "EHLO mail-pg1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726269AbfJEBts (ORCPT ); Fri, 4 Oct 2019 21:49:48 -0400 Received: by mail-pg1-f195.google.com with SMTP id i14so4704027pgt.11 for ; Fri, 04 Oct 2019 18:49:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; h=from:to:cc:subject:date:message-id; bh=QsfvGFuRohKr1l6pObvG2zaoMC/SPwYl/b1JcIlr95c=; b=AoBRZZiyqE2wu0IBRSVdfsYjxtvIDFc3OFQ3/Q68YAZySmonyeEsWhuaR4uILfkOUz b+xjnizRVuvqQXE0M9iRa9q+5fph3BCYk0aEg8NDiT1gc0Fg4rjpz/W1vu9aTgWcTZYH MWKAdMtkoJULfy5aZXPyw+7pb6rIDJ8a2nmUez/mFCUwzR7Au5yef+mzhLaCowgzdKvR yx2ziB6ARAWAap2YmLIIhYtiusy3Ko7oayx7bguSzUNQT7fKBQqgoiO7YUTsqvMNiSMQ IIQ4Ufne5uaSTeJsdft2L3TdI6B4Aw8zP6AyL+a3Ln5OsGmrTtKJ6Nan+B/dKGHYunI+ wcYg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=QsfvGFuRohKr1l6pObvG2zaoMC/SPwYl/b1JcIlr95c=; b=tmCSnwQ0Bf6dzekPHtem0gDdEcp96gUqPg5qZ10P5DmtKMW88RMZ/QAYJfQ4SwkzEi x/YRuqzY/1WOi66bc1PygcVHHz8H8hiyxlg7TcH5rxOTtSlY0Nje4ILupi430f62dSRa oeJWzXlObT7f2o5GBnBDxq/juEpr9uOkcwbRPvEGowQ9w77K6i6t/c2Wi9EbXyeeaUpU RSr/RNP9b1hLoOT9McHVktBKAddOSK3YG/tQzSGXsSPpCp6VOlYdqWEIliwawaoQm6jN gSrZ3mtwVA9ebB2MGptycNDD9aUL/KjPtoHqKcW7qGT7Knx7xMD7OQCn/Iowzx4DDStV gcHw== X-Gm-Message-State: APjAAAVWtb/VuYPqsKiJAU35qvKqgT8f4z/Uj/0f8teg2Gzit4hmQ6QL lpC1ejCgm4+V8OsRVEHF5iV76jRcWyY= X-Received: by 2002:a63:705b:: with SMTP id a27mr18180320pgn.136.1570240187537; Fri, 04 Oct 2019 18:49:47 -0700 (PDT) Received: from nuc7.sifive.com ([12.206.222.5]) by smtp.gmail.com with ESMTPSA id b185sm7529508pfg.14.2019.10.04.18.49.46 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 04 Oct 2019 18:49:46 -0700 (PDT) From: Alan Mikhak X-Google-Original-From: Alan Mikhak < alan.mikhak@sifive.com > To: linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, kishon@ti.com, lorenzo.pieralisi@arm.com, bhelgaas@google.com, palmer@sifive.com, paul.walmsley@sifive.com Cc: Alan Mikhak Subject: [PATCH] PCI: endpoint: cast the page number to phys_addr_t Date: Fri, 4 Oct 2019 18:49:37 -0700 Message-Id: <1570240177-8934-1-git-send-email-alan.mikhak@sifive.com> X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Alan Mikhak Modify pci_epc_mem_alloc_addr() to cast the variable 'pageno' from type 'int' to 'phys_addr_t' before shifting left. This cast is needed to avoid treating bit 31 of 'pageno' as the sign bit which would otherwise get sign-extended to produce a negative value. When added to the base address of PCI memory space, the negative value would produce an invalid physical address which falls before the start of the PCI memory space. Signed-off-by: Alan Mikhak --- drivers/pci/endpoint/pci-epc-mem.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/pci/endpoint/pci-epc-mem.c b/drivers/pci/endpoint/pci-epc-mem.c index 2bf8bd1f0563..d2b174ce15de 100644 --- a/drivers/pci/endpoint/pci-epc-mem.c +++ b/drivers/pci/endpoint/pci-epc-mem.c @@ -134,7 +134,7 @@ void __iomem *pci_epc_mem_alloc_addr(struct pci_epc *epc, if (pageno < 0) return NULL; - *phys_addr = mem->phys_base + (pageno << page_shift); + *phys_addr = mem->phys_base + ((phys_addr_t)pageno << page_shift); virt_addr = ioremap(*phys_addr, size); if (!virt_addr) bitmap_release_region(mem->bitmap, pageno, order); -- 2.7.4