Message ID | 20250312225949.969716-5-michal.winiarski@intel.com (mailing list archive) |
---|---|
State | New |
Headers | show
Return-Path: <dri-devel-bounces@lists.freedesktop.org> X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 70DF5C28B28 for <dri-devel@archiver.kernel.org>; Wed, 12 Mar 2025 23:00:54 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id CE4A510E308; Wed, 12 Mar 2025 23:00:53 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.b="IN0VT4vR"; dkim-atps=neutral Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.11]) by gabe.freedesktop.org (Postfix) with ESMTPS id 05EFD10E7DD; Wed, 12 Mar 2025 23:00:52 +0000 (UTC) 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: R5SHPML0TuWZpirvLdlduw== X-CSE-MsgGUID: N9g4MEq1SRiDAJzwm5s2Jg== X-IronPort-AV: E=McAfee;i="6700,10204,11371"; a="53571066" X-IronPort-AV: E=Sophos;i="6.14,243,1736841600"; d="scan'208";a="53571066" 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) 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 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development <dri-devel.lists.freedesktop.org> List-Unsubscribe: <https://lists.freedesktop.org/mailman/options/dri-devel>, <mailto:dri-devel-request@lists.freedesktop.org?subject=unsubscribe> List-Archive: <https://lists.freedesktop.org/archives/dri-devel> List-Post: <mailto:dri-devel@lists.freedesktop.org> List-Help: <mailto:dri-devel-request@lists.freedesktop.org?subject=help> List-Subscribe: <https://lists.freedesktop.org/mailman/listinfo/dri-devel>, <mailto:dri-devel-request@lists.freedesktop.org?subject=subscribe> Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" <dri-devel-bounces@lists.freedesktop.org> |
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(+)