Message ID | 20250312225949.969716-5-michal.winiarski@intel.com (mailing list archive) |
---|---|
State | New |
Delegated to: | Bjorn Helgaas |
Headers | show
Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.11]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1E6101F2B87; Wed, 12 Mar 2025 23:00:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=192.198.163.11 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741820454; cv=fail; b=MbpnGSLH2PdLMdPokoD5xwruR0njB5iS1qFCs5jGPbYogGHxcnMymyETkeIEId70GXy6k2eQ5P0+qqG7FN996xyLCCkAPi9rgIRt6cd7poBFDCgDRQfHUN97FWoh1dcyBlvM2cQGHUHspAXHm27qCJ07DxVMdk1W8XwqXF/wUvQ= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741820454; c=relaxed/simple; bh=Pl/A6OZOzP1FciVNappVWkmGksNokHBdNIeBXZtzVCQ=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=cCOv9Ve2ZBCkSmLJqps4T2/z3ABub0V2mkvUwCiJsR0BGrgeaTEy+Ja2e361xhc+cdfEIol437H5ysOOCPsDfEXmQ3iLS5FPZb9Vv9RRqCFK9IiaQheueGBff50QAOOO2+KDRwE1sauf+EdqG24pqWOy0eXW8wA8F03aEKsl82U= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=IN0VT4vR; arc=fail smtp.client-ip=192.198.163.11 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="IN0VT4vR" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1741820453; x=1773356453; h=from:to:cc:subject:date:message-id:in-reply-to: references:content-transfer-encoding:mime-version; bh=Pl/A6OZOzP1FciVNappVWkmGksNokHBdNIeBXZtzVCQ=; b=IN0VT4vRjt7XYvFxEKIQHmmD5iiglovET5/cz1/yzQBKwzGyodX+OsAj bAduJLn6AnyCOe+E63P3wcvBCX2UgPiH5et30yaYilJD4wU0u4VUth2uM qeValu4lLpSA8+1f8zcE9YeA7sqeYV9MoMajXsOu7RiaBDO78/FpsIS9B N0yC5eznXljDokNQlGo8cVKhdDRottI9zbnQNjpx+tIBExCzLAhtK+IBm yQwu4iYLRJfabPXTrIEbWI4YTu9jHhx9aIEX3xkAsighZ10h6wxyIcVMf 7ljepoE3yUOq3FYrSZ5V3KbM6Vd3rWV9dxECLA8NGV1eUGhnVS6l8IyXS Q==; X-CSE-ConnectionGUID: H4vxfpRwSHqq8QROoFLIGg== X-CSE-MsgGUID: bsgmZXioSDe7k2YKlCPk0Q== X-IronPort-AV: E=McAfee;i="6700,10204,11371"; a="53571060" X-IronPort-AV: E=Sophos;i="6.14,243,1736841600"; d="scan'208";a="53571060" Received: from fmviesa006.fm.intel.com ([10.60.135.146]) by fmvoesa105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Mar 2025 16:00:53 -0700 X-CSE-ConnectionGUID: yWAf2mh8TjCXIrLixs7JwA== X-CSE-MsgGUID: XT43lK2sRPi2XAKMvvJvyw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.14,243,1736841600"; d="scan'208";a="120580837" Received: from orsmsx903.amr.corp.intel.com ([10.22.229.25]) by fmviesa006.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Mar 2025 16:00:52 -0700 Received: from orsmsx603.amr.corp.intel.com (10.22.229.16) by ORSMSX903.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.2.1544.14; Wed, 12 Mar 2025 16:00:51 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.44 via Frontend Transport; Wed, 12 Mar 2025 16:00:51 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.177) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.44; Wed, 12 Mar 2025 16:00:51 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Phrw/IIG7b9TzRjSbg6y9Ed+945wNZwdz8m1PmbOKWeSJgxCrM9Ik89DZGk9DUmx8GNvYIG1gReEH7ByF2cb447b1M2p1r8JhmFi59qN0n8Ne9UU4SOs0jKOYWbgTk80H7E32p6/NNVCoMU7TdmHHTzoMdbil0YfTikNpnsmUS6gNzXLq+bsOjHfaOgxq2zXpt0bfq1ZUtzwM68B0THxLgW33BShfh6fPtwzBcr7uisT8x2N9+l0TT+QsFO2G00WPtR1xQW5nL+tL2Ar1ISRyaBPPEhJ1JlH8tW1vEn9ptV8/Y0MaEM4IxtlAX6dJsUaGrdJ7IFGnRu1iwTd9xec9A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=1K0+Ijt/56IoawP/qq7xkL5uj/o67iq36TByQongDKY=; b=cCnP3d+LxOorpFZBu+0id6lCZLDhrv7e5+3P4W56d1uGjwtRKf9bkoJGY5CAyXwzu7ikOmnG89oZ0hchYQnccrYZB35xa0kfAs49kEhHZ57QV99WVCoH4f8MBTNjChS5X+GhPA5MHKtFlmd2oi8pO/td7j7sZAxx1rVsGeyie5in//Lpi/8KNP0CjqgfNVNlLPC2G16BF7KIbXbBplMA0/SzRLhlrZLJofGy5KpGv8XkMAUXtMaguS5mpnE1t/qh+SxDsSXrE8tW6JockAdroD6rmFIhISOauhOmP75vM3MmlyZy/JmSvQT7Y80DLPzC/uEVe51hosTy/x4uqkTwow== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; Received: from DM4PR11MB5373.namprd11.prod.outlook.com (2603:10b6:5:394::7) by SA1PR11MB6735.namprd11.prod.outlook.com (2603:10b6:806:25e::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8511.27; Wed, 12 Mar 2025 23:00:48 +0000 Received: from DM4PR11MB5373.namprd11.prod.outlook.com ([fe80::927a:9c08:26f7:5b39]) by DM4PR11MB5373.namprd11.prod.outlook.com ([fe80::927a:9c08:26f7:5b39%6]) with mapi id 15.20.8511.026; Wed, 12 Mar 2025 23:00:48 +0000 From: =?utf-8?q?Micha=C5=82_Winiarski?= <michal.winiarski@intel.com> To: <linux-pci@vger.kernel.org>, <intel-xe@lists.freedesktop.org>, <dri-devel@lists.freedesktop.org>, <linux-kernel@vger.kernel.org>, "Bjorn Helgaas" <bhelgaas@google.com>, =?utf-8?q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>, =?utf-8?q?Krzy?= =?utf-8?q?sztof_Wilczy=C5=84ski?= <kw@linux.com>, =?utf-8?q?Ilpo_J=C3=A4rvi?= =?utf-8?q?nen?= <ilpo.jarvinen@linux.intel.com> CC: Rodrigo Vivi <rodrigo.vivi@intel.com>, Michal Wajdeczko <michal.wajdeczko@intel.com>, Lucas De Marchi <lucas.demarchi@intel.com>, =?utf-8?q?Thomas_Hellstr=C3=B6m?= <thomas.hellstrom@linux.intel.com>, Maarten Lankhorst <maarten.lankhorst@linux.intel.com>, Maxime Ripard <mripard@kernel.org>, Thomas Zimmermann <tzimmermann@suse.de>, David Airlie <airlied@gmail.com>, Simona Vetter <simona@ffwll.ch>, Matt Roper <matthew.d.roper@intel.com>, =?utf-8?q?Micha=C5=82_Winiarski?= <michal.winiarski@intel.com> Subject: [PATCH v5 4/6] PCI/IOV: Check that VF BAR fits within the reservation Date: Wed, 12 Mar 2025 23:59:47 +0100 Message-ID: <20250312225949.969716-5-michal.winiarski@intel.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250312225949.969716-1-michal.winiarski@intel.com> References: <20250312225949.969716-1-michal.winiarski@intel.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-ClientProxiedBy: VI1PR09CA0177.eurprd09.prod.outlook.com (2603:10a6:800:120::31) To DM4PR11MB5373.namprd11.prod.outlook.com (2603:10b6:5:394::7) Precedence: bulk X-Mailing-List: linux-pci@vger.kernel.org List-Id: <linux-pci.vger.kernel.org> List-Subscribe: <mailto:linux-pci+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:linux-pci+unsubscribe@vger.kernel.org> MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM4PR11MB5373:EE_|SA1PR11MB6735:EE_ X-MS-Office365-Filtering-Correlation-Id: 971794af-d29d-4f92-5cf5-08dd61b9ba60 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|376014|7416014; X-Microsoft-Antispam-Message-Info: =?utf-8?q?v4mR60wkgw+zQ4MmesoSQrR8Lq7ohHE?= =?utf-8?q?porMvP5n92RMO/xlynvN29NU5IOUvu2jEy0uHF6pFSiVVr+QR7D3CsaLJVUf7/Q5a?= =?utf-8?q?H6QFj9+4ggG7z3Dyms3Xt4E8Vlp9tprUJIMc7lMGt2kIBCycHY9AwEX9yOiol9X3e?= =?utf-8?q?mK+soHNOQozmPC7S+psntaKkCAmATb0naRdMr5fLmZMj7HHzfs45ic03RjofEaq2c?= =?utf-8?q?outSlgFTCEE9oY8cHm1ZkDrLxhLt72Dy48kOtgsDKjxvaLIybD8DjfidJ1be7nvc6?= =?utf-8?q?P6uXiN8Idp9yecwa7HNp3h+P7X54+izXwb+KCryVwLLdx96jPxpCWjbu2nHG7u3aT?= =?utf-8?q?wmgwBHNUB7pTmZxyhsQTqgc+z1Wd95Bu4CoMPjPXtb9L6TGd4CbMogE4DPBQ6u2+2?= =?utf-8?q?WHfAy7UyCt+iPUg9o81lrObTRPJikM1107/PDwN0jLq0c8XpiA6qGaRSiBLgcoCXa?= =?utf-8?q?Q6JEKQ2fxDO8qTWa2Hn00IQBbj9GXGWIT1BSmsFvkFVILjD9e7ohGvRxNTXopOoWY?= =?utf-8?q?12GOKiyEXuTe/Y66Rki7RYIDAlLvZlfPy4Cma4VnqsovHuM8oA14u2Pvlh1Il+j6t?= =?utf-8?q?PR4OLvHLLB3LPPvpmovOEFfs6rNwEzIwAVaI0L6AG1025ncvZAqrVuw3yVphMXgWZ?= =?utf-8?q?AxYnugWHmeRf6+QJ/rcRCCHPwXQ2M89go6Pl2P/aKym77ipZmxF+zcrPEbJd8OTuT?= =?utf-8?q?yrrkenuvrYE0LRcb9nTluajAncYjeCaXZH5iZBveK/1XzjdH3FMd0lfaRJOycuigS?= =?utf-8?q?0p838iV42S/diSKKRaDrsJOgP5eYlnxCrwxJWwHd42f6Z0Rpd0+4CBhcdZdNf0OH+?= =?utf-8?q?b6ylevMq7M5U6m21gBvvig3mOCYK77xnHUXjqc9U6CRUNbwp2iJ8QgUjT4ZWtrtJl?= =?utf-8?q?rOU/+dHEmbN5Hu1vooDWu24Z8BNuT34qvF2Uch86z394R0pkaED4cK3Cbhuj7ostl?= =?utf-8?q?tSue0fuxPX4cvtQ9ts89XAUd2fNVYxl8EA+VoV6H9wlryyTRlUsk2W1kgpWP8A1AG?= =?utf-8?q?v+zbXLevIZ3TrVx+2EgOHhl0lSsIgi37aT+78gp97Kt0BinmkT0qB3c1Dex5sFulm?= =?utf-8?q?t5kPXT6JmXW3UQv137vmeT4U1s13P1BcDElvbxUBwW4ZfCnN3Hu4g9WmuaPGyXtZa?= =?utf-8?q?ldSpIXz3y+Itf2IGTAux17rHpIOIgbZ38nDdLc69CaveaFvSeJw+ALqbPojM+bpN8?= =?utf-8?q?+ya0AdUrrW8mbQsdw00KA5s8CJFZ/mGx51ilNdedxGOJvj32SzbXj7FtO5ZGZBPsZ?= =?utf-8?q?LJfRiuauyuQT0OyU7LnbMZ9Kgp211VQhpge/Cib6a902oC5/ld9xmWpPKlbYP/8xs?= =?utf-8?q?VADQtOfVfS96?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM4PR11MB5373.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(376014)(7416014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?E/6QifM9dF02bK4D+0kG8hbgCB34?= =?utf-8?q?v1yE3MDwUVLE1bbFW1ebM7QR5rouonOVNl0CB8YiOvs/xSOTBo3Rmv6UPtiLbaXHJ?= =?utf-8?q?UYkEahWKSkUEqGYsm39R8X9ZSPZZ+Kq89MNUVFJuGT6sKM4aawrkiW74tbU/nMsMY?= =?utf-8?q?vZlZAI7TjKctk0m+pdl39LU1rHyJv1OMBz4mJAGTiH/hTDWJuUzMfeGmONRforz7x?= =?utf-8?q?oswy+v6vkuK3fn11ZKz++nZGjW0sxHELj1vxtkZriZGCKURGt7xQaiRJ2wnyR1hoI?= =?utf-8?q?G4BOclqnwV+5dELCHqHZMUua2FFeiXxSyxaPqXFxIW7EJBhfnlyV7E/QTaeJ108zM?= =?utf-8?q?fi7sqfO0A7NHwmfMdKBPOdGqFtL9sE7CjeS5rvfMDn4W9uV5BAOGPL4bbQTJRKVRu?= =?utf-8?q?x24T92JgoT+XoZWIQUOFUtD/IYUGFCTSDqI3ElnxqILxCYo7uh9L7vjJlDFO7qhs6?= =?utf-8?q?k51x0WxfrewleZIWR1T2fTGjVXW9IMkK3ikjU6MjeHv3CNRbr+K11E4fPYbl1+97Z?= =?utf-8?q?5ITICOi9gWTJarHKNwj+/W+fhkHMvnucmieVUROqPWZCTq9haKZ77vCmg/HRumkPe?= =?utf-8?q?7JQfAIpWLr87n+4queHNNHRMwZUdmUKaAZgoYDzVPGurcaSApZytVN54yLQ38QBYv?= =?utf-8?q?AHDPSdvcESF/iUEF+425SIYMF/NDqyEHpEpe64uD6zT+BqMvE9SQcRfXv/wmCfZji?= =?utf-8?q?2xYcffBmw5gKgJ+wKMfmT2/13QU/aFt/PAIxxwDbVV2Ea4OWNkeRHQrw2wxpofvir?= =?utf-8?q?IUX4I/rWyRNSoikz4O8Pj1DVCB4IpGY/Fox5WFj9rgkyUUHOyjto97uQi0A8zR0jz?= =?utf-8?q?h2YJiiohqQGwQPNagK5FRxzRyUf/QC9JjvSMxuyn1je1Thy6MEWc3UwO8q/Sd0ouK?= =?utf-8?q?WPdLYplGr2DpRzjQ+LKV7N39s/P3jZ7Zf93wKmV9PEtfNyYWC2C8bdginb7QxLP/w?= =?utf-8?q?DXV3oxUMPqRDUZGyG/XZW57Up7v/rLXInvfrChNudzhOgpKdMmGZ/iAyUo7vwbKNM?= =?utf-8?q?/MkRO2Ongut/NVTJtpg1T5nCjn0yJ8x3LC2l4fnHn2qjlC2G/hECPn0pnsVqDTDFD?= =?utf-8?q?cUkUOGyzHBliA433W3zGf0MdIFz5T4Cace9X/T7uLiGBrypo/7nQe1rpPhf27Smwk?= =?utf-8?q?Tmdw7Dvp8Ibmsnq+Q37kS11M4FogSJMoLk696kujvfvJCv8KMKP9DNRx9eHTGATbD?= =?utf-8?q?emWAblG32RLtmUcMuw49q7+KR8tcAKPbQD5kLqbXuefQV9GY/WsGJkvAbtftk7DRM?= =?utf-8?q?rVuac5k5l9C4ij3Tz1PaQScfKfSXprkJ4U7xCMrlhh8KDjAv/mnht8yTJmOWtdsrb?= =?utf-8?q?pZ9KAfLXVs8fENvgEpJI9H2KOqmpI0J/GYeh0H0IYyEvPd6tEfKwx8HMs2pxCVnl6?= =?utf-8?q?uocc4647AzG9ZokaccQY35sMvgsKiAonKGG22FYRTVFpYFHkqL2vxSiWPpzSvQzvU?= =?utf-8?q?zcRLO5egMac72BQ3Wsbckv9mpaVETPoy/80b5a4g02Q/4/NG6BvVMOkgZq8BnVJmx?= =?utf-8?q?g68+MBO3QkdfKkkPEOc7hWLnf5jg5pLF0w=3D=3D?= X-MS-Exchange-CrossTenant-Network-Message-Id: 971794af-d29d-4f92-5cf5-08dd61b9ba60 X-MS-Exchange-CrossTenant-AuthSource: DM4PR11MB5373.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Mar 2025 23:00:48.1870 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: mYXAPKpn7Y2XwZRNWMx+lekYmkWxYJmqt6Q9SU3LS56lKRlXpsGh9k1L6+7+WBOAvvjvQFq3/QoLqK/Y08AK+hKiUm2PuyELUPJZ/4zBbAs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR11MB6735 X-OriginatorOrg: intel.com |
Series |
PCI: VF resizable BAR
|
expand
|
diff --git a/drivers/pci/iov.c b/drivers/pci/iov.c index 7cc17e898cea7..d6d63083884e6 100644 --- a/drivers/pci/iov.c +++ b/drivers/pci/iov.c @@ -646,8 +646,13 @@ static int sriov_enable(struct pci_dev *dev, int nr_virtfn) nres = 0; for (i = 0; i < PCI_SRIOV_NUM_BARS; i++) { + resource_size_t vf_bar_sz = + pci_iov_resource_size(dev, + pci_resource_num_from_vf_bar(i)); bars |= (1 << pci_resource_num_from_vf_bar(i)); res = &dev->resource[pci_resource_num_from_vf_bar(i)]; + if (vf_bar_sz * nr_virtfn > resource_size(res)) + continue; if (res->parent) nres++; }
When the resource representing VF MMIO BAR reservation is created, its size is always large enough to accommodate the BAR of all SR-IOV Virtual Functions that can potentially be created (total VFs). If it's not possible to accommodate all VFs - the resource is not assigned and no VFs can be created. The following patch will allow VF BAR size to be modified by drivers at a later point in time, which means that the check for resource assignment is no longer sufficient. Add an additional check that verifies that VF BAR for all enabled VFs fits within the underlying reservation resource. Signed-off-by: Michał Winiarski <michal.winiarski@intel.com> --- drivers/pci/iov.c | 5 +++++ 1 file changed, 5 insertions(+)