[{"id":3675142,"web_url":"http://patchwork.ozlabs.org/comment/3675142/","msgid":"<4203a8ea-25a3-72e1-c071-db371be045e1@linux.intel.com>","list_archive_url":null,"date":"2026-04-09T08:03:50","subject":"Re: [PATCH] PCI: release empty sibling resources during bridge window\n resize","submitter":{"id":83553,"url":"http://patchwork.ozlabs.org/api/people/83553/","name":"Ilpo Järvinen","email":"ilpo.jarvinen@linux.intel.com"},"content":"On Wed, 8 Apr 2026, Geramy Loveless wrote:\n\nThanks for the patch. The patch need some work but the general direction \nlooks acceptable.\n\nFYI, your patch is misformatted, tabs got eaten, probably something in \ntha way you send the email does that.\n\nPlease Cc also Cristian Cocos <cristi@ieee.org> on further submissions.\n\n> When pci_resize_resource() walks up the bridge hierarchy via\n> pbus_reassign_bridge_resources(), bridge windows with any child\n> resources are refused release. This prevents BAR resize on devices\n> behind multi-port PCIe switches (such as Thunderbolt docks) where\n> empty sibling downstream ports hold small reservations that block the\n> parent bridge window from being freed and re-sized.\n> \n> Add pci_bus_release_bridge_resources_safe() which verifies that a\n> resource subtree contains no active children before releasing it,\n> and use it in pbus_reassign_bridge_resources() to clear empty sibling\n> reservations so the bridge window can grow.\n> \n> Signed-off-by: Geramy Loveless <gloveless@jqluv.com>\n\nYou may want to add Suggested-by tag.\n\n> ---\n> drivers/pci/setup-bus.c | 30 +++++++++++++++++++++++++++---\n> 1 file changed, 27 insertions(+), 3 deletions(-)\n> \n> diff --git a/drivers/pci/setup-bus.c b/drivers/pci/setup-bus.c\n> index 4cf120ebe..9a3a23819 100644\n> --- a/drivers/pci/setup-bus.c\n> +++ b/drivers/pci/setup-bus.c\n> @@ -2297,6 +2297,30 @@\n> EXPORT_SYMBOL_GPL(pci_assign_unassigned_bridge_resources);\n> * release it when possible. If the bridge window contains assigned\n> * resources, it cannot be released.\n> */\n> +\n> +/*\n> + * Release child resources from a bridge window so it can be freed and\n> + * re-sized, but only if the entire subtree is empty (no active device\n> + * resources underneath). Walks the resource tree recursively to handle\n> + * arbitrarily deep bridge hierarchies. Returns true if the resources\n> + * were released or the window was already empty.\n> + */\n> +static bool pci_bus_release_bridge_resources_safe(struct pci_bus *bus,\n> + struct resource *res)\n> +{\n> + struct resource *child;\n> +\n> + for (child = res->child; child; child = child->sibling) {\n> + if (child->child &&\n> + !pci_bus_release_bridge_resources_safe(bus, child))\n> + return false;\n\nThis should walk bus devices and device resources using PCI side\niterators (not using the low-level resource list). This does not look \nsafe iteration anyway because the code is also removing entries from the \nresource tree (it only works because resource code leaves stale sibling \npointers which should be corrected one day).\n\nPCI side should be enough to capture all resources, and that way you \nstill have access to all PCI side structs.\n\nPerhaps sanity checking ! ->child at the end wouldn't hurt but it the\nrelease should be doable.\n\nYou should also pass the saved list and store any released resources so \nyou can properly rollback in case of a failure (I think the rollback \ncode will already just-work as long as you add the entries there).\n\n> + }\n> +\n> + if (res->child)\n> + pci_bus_release_bridge_resources(bus, res, whole_subtree);\n\nI think this could pass non-bridge window resources which looks wrong but \nyou need to rewrite the algorithm in this function anyway.\n\n> + return true;\n> +}\n> +\n> static int pbus_reassign_bridge_resources(struct pci_bus *bus, struct\n> resource *res,\n> struct list_head *saved)\n> {\n> @@ -2316,8 +2340,8 @@ static int pbus_reassign_bridge_resources(struct\n> pci_bus *bus, struct resource *\n> i = pci_resource_num(bridge, res);\n> - /* Ignore BARs which are still in use */\n> - if (!res->child) {\n> + if (!res->child ||\n> + pci_bus_release_bridge_resources_safe(bridge->subordinate, res)) {\n\nJust call this release always before checking !res->child.\n\nYou need to check bridge->subordinate before calling it.\n\n> ret = pci_dev_res_add_to_list(saved, bridge, res, 0, 0);\n> if (ret)\n> return ret;\n> @@ -2327,7 +2351,7 @@ static int pbus_reassign_bridge_resources(struct\n> pci_bus *bus, struct resource *\n> const char *res_name = pci_resource_name(bridge, i);\n> pci_warn(bridge,\n> - \"%s %pR: was not released (still contains assigned resources)\\n\",\n> + \"%s %pR: not released, active children present\\n\",\n> res_name, res);\n> }\n>","headers":{"Return-Path":"\n <linux-pci+bounces-52207-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-pci@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256\n header.s=Intel header.b=kwWHT6ES;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c09:e001:a7::12fc:5321; helo=sto.lore.kernel.org;\n envelope-from=linux-pci+bounces-52207-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com\n header.b=\"kwWHT6ES\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=192.198.163.17","smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=linux.intel.com","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=linux.intel.com"],"Received":["from sto.lore.kernel.org (sto.lore.kernel.org\n [IPv6:2600:3c09:e001:a7::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4frsrz1DQ2z1xtJ\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 09 Apr 2026 18:04:03 +1000 (AEST)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sto.lore.kernel.org (Postfix) with ESMTP id 615CC3007BA9\n\tfor <incoming@patchwork.ozlabs.org>; Thu,  9 Apr 2026 08:04:00 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 45898389E1A;\n\tThu,  9 Apr 2026 08:03:59 +0000 (UTC)","from mgamail.intel.com (mgamail.intel.com [192.198.163.17])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id C925737883C\n\tfor <linux-pci@vger.kernel.org>; Thu,  9 Apr 2026 08:03:57 +0000 (UTC)","from orviesa008.jf.intel.com ([10.64.159.148])\n  by fmvoesa111.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 09 Apr 2026 01:03:57 -0700","from ijarvine-mobl1.ger.corp.intel.com (HELO localhost)\n ([10.245.245.197])\n  by orviesa008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 09 Apr 2026 01:03:54 -0700"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1775721839; cv=none;\n b=MGSoCFOQ/piTE6SX0/vp9fbfIaBrLdRW3qXf1gU9sBTRSAPwtTsdMA7zn4BlXfARDbFp7s9C7yMLI3gNzozT/z/N0IbX4xM3NJC8ubXcTnJ9ihmxaNY0/6H+NvBZltE/y/InS3xuGQsd0vsHQINiqwOgU1xRYSLxcGhgAyqutdo=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1775721839; c=relaxed/simple;\n\tbh=vLMuceyb1911q6XVoxtnDGiburqo0GjA6HdzZrSxkKo=;\n\th=From:Date:To:cc:Subject:In-Reply-To:Message-ID:References:\n\t MIME-Version:Content-Type;\n b=VvUOgz2Aaii1gjo/lUdv/aDIgo4gvFXci5MOf9521qxDAggxah8Y4DusjLttnskUyT6QrmCq26/15R+2vhuI+10Wj9anycPnaiPwTfbC5wXzWeYEGureFJa1EifSpoaViqwMjdTyL80PNFP5ssuocHarmhmvmE4lbmin0EwteI0=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=linux.intel.com;\n spf=pass smtp.mailfrom=linux.intel.com;\n dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com\n header.b=kwWHT6ES; arc=none smtp.client-ip=192.198.163.17","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple;\n  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n  t=1775721838; x=1807257838;\n  h=from:date:to:cc:subject:in-reply-to:message-id:\n   references:mime-version;\n  bh=vLMuceyb1911q6XVoxtnDGiburqo0GjA6HdzZrSxkKo=;\n  b=kwWHT6ESqH9LDFbFadrm3J9f/Y4sj7DQyx4E2NHyV8mHqfdMJbh7+n5I\n   RmhORiUaVyRGsaOVIBAk3Wa3ger7RKt/uKxrlCybnxMNG1yLPmVqBE3Yl\n   p7S1uiHlyzBpfqJsPNBLhu8NwELwDIydeUiFJRkP3HRc0Sg4bWE3ny5nE\n   L6wqbaltg8d4zI0SZd8SYKh48AQZk2h9UMBDlpRFwJ3WpJVDaI6sYfRUh\n   C5OBPP1IZ/TszzgtP8dPCr20+3+EDNl3u2BpKxS+H1iwyRfm8DtlS67kd\n   NIy/S4QSThwJU9fbZrhh6Jdwy7dVMghX34mJ72VwChDqwyxqgEEpst9dx\n   g==;","X-CSE-ConnectionGUID":["GPaIjS4sSuSyepGYsA2+SQ==","RsGcdkChSXqMDpAXj4otTQ=="],"X-CSE-MsgGUID":["zo0J/rMrQSqwHIONPl22KA==","b8cICYO5Rq6MrO4zBwuPtg=="],"X-IronPort-AV":["E=McAfee;i=\"6800,10657,11753\"; a=\"76608477\"","E=Sophos;i=\"6.23,169,1770624000\";\n   d=\"scan'208\";a=\"76608477\"","E=Sophos;i=\"6.23,169,1770624000\";\n   d=\"scan'208\";a=\"228632823\""],"X-ExtLoop1":"1","From":"=?utf-8?q?Ilpo_J=C3=A4rvinen?= <ilpo.jarvinen@linux.intel.com>","Date":"Thu, 9 Apr 2026 11:03:50 +0300 (EEST)","To":"Geramy Loveless <gloveless@jqluv.com>","cc":"linux-pci@vger.kernel.org, Cristian Cocos <cristi@ieee.org>","Subject":"Re: [PATCH] PCI: release empty sibling resources during bridge window\n resize","In-Reply-To":"\n <CAGpo2meKY6SXsESU-D0PGgbESLqdF8UBF-tmThxOvk2XUDpEzw@mail.gmail.com>","Message-ID":"<4203a8ea-25a3-72e1-c071-db371be045e1@linux.intel.com>","References":"\n <CAGpo2meKY6SXsESU-D0PGgbESLqdF8UBF-tmThxOvk2XUDpEzw@mail.gmail.com>","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","Content-Type":"text/plain; charset=US-ASCII"}},{"id":3675328,"web_url":"http://patchwork.ozlabs.org/comment/3675328/","msgid":"<f2cf6508-e2e8-d567-66f3-51b094585434@linux.intel.com>","list_archive_url":null,"date":"2026-04-09T13:26:43","subject":"Re: [PATCH] PCI: release empty sibling resources during bridge window\n resize","submitter":{"id":83553,"url":"http://patchwork.ozlabs.org/api/people/83553/","name":"Ilpo Järvinen","email":"ilpo.jarvinen@linux.intel.com"},"content":"On Thu, 9 Apr 2026, Geramy Loveless wrote:\n\n> Perfect I’ll get started on these changes, while I’m here, does the other bug create\n> a cascade of problems if fixed? \n\nHi,\n\nI'm not sure what \"other bug\" refers to?\n\nIf you meant Cristian problem, he seemed to have empty bridge windows \nwhich this approach should be able to solve without extra problems \nexpected.\n\nIf you refer to the resource entries having dangling resource tree \npointers (sibling, etc.), it's not a big problem when the resource entry \nhas been detached from the tree. It has some impact on whether \nresource_assigned() can always be trusted so it would be nice to clear all \nthose links on removal (the current remove algorithm shortcuts the \nsubtree).","headers":{"Return-Path":"\n <linux-pci+bounces-52213-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-pci@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256\n header.s=Intel header.b=n0Ne5uNF;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c09:e001:a7::12fc:5321; helo=sto.lore.kernel.org;\n envelope-from=linux-pci+bounces-52213-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com\n header.b=\"n0Ne5uNF\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=192.198.163.9","smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=linux.intel.com","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=linux.intel.com"],"Received":["from sto.lore.kernel.org (sto.lore.kernel.org\n [IPv6:2600:3c09:e001:a7::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fs1Cc164cz1xy1\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 09 Apr 2026 23:35:40 +1000 (AEST)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sto.lore.kernel.org (Postfix) with ESMTP id 60DFB300BBB9\n\tfor <incoming@patchwork.ozlabs.org>; Thu,  9 Apr 2026 13:26:52 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 5115C40DFA4;\n\tThu,  9 Apr 2026 13:26:51 +0000 (UTC)","from mgamail.intel.com (mgamail.intel.com [192.198.163.9])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 4EE042749DC\n\tfor <linux-pci@vger.kernel.org>; Thu,  9 Apr 2026 13:26:48 +0000 (UTC)","from orviesa008.jf.intel.com ([10.64.159.148])\n  by fmvoesa103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 09 Apr 2026 06:26:48 -0700","from ijarvine-mobl1.ger.corp.intel.com (HELO localhost)\n ([10.245.245.197])\n  by orviesa008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 09 Apr 2026 06:26:46 -0700"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1775741211; cv=none;\n b=YzZt3L3coofhurXd1ErhQd0p8fu+dqB24XPOLSNHGmb/OkzwfALf5uGWpDbG1hjmO9Hl/m/zO+LTcJ8QdYJx2/x7z7fWPxD7GxhleKFFI1lIMC618AN3+s0u8WgMu8QDrsqXxMIgkx10gUyzuVD66FcpH9LhWLTHTzzchBnx+WM=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1775741211; c=relaxed/simple;\n\tbh=LdDisOMGiGNWzGjHA1VjgRKrig7jD6aUWtcfv6Nfl2k=;\n\th=From:Date:To:cc:Subject:In-Reply-To:Message-ID:References:\n\t MIME-Version:Content-Type;\n b=eEyLvAi3jQx7KnlLNmhUMLK7scW9FAP1XqwsOHx+F2cOgUuYfYXNBxAg8ypdeh1DgCUmbCeMRK5NcASMS223w2ZKtA7vDFM4SEneG6aWOs7ZR1R7xK0ZXp1OOTKtpcLfKKf1OuluHaO8Er3lteRqovIRtDIyyYE8cTvwdo08QXs=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=linux.intel.com;\n spf=pass smtp.mailfrom=linux.intel.com;\n dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com\n header.b=n0Ne5uNF; arc=none smtp.client-ip=192.198.163.9","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple;\n  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n  t=1775741209; x=1807277209;\n  h=from:date:to:cc:subject:in-reply-to:message-id:\n   references:mime-version;\n  bh=LdDisOMGiGNWzGjHA1VjgRKrig7jD6aUWtcfv6Nfl2k=;\n  b=n0Ne5uNF40byPj+dYv8aYHI9bXhcsN3oXvzyJBWqMLxPzVjDVWnuKP0L\n   x5QINtkYc6Q9OgHhuXfCRb6XgeVUxIZbGG1jLVG0WnYSszkeXsgF8/eFP\n   tEyYwKPC4o75xQX2xhOHyjCiV5sAnHfO6Ol9VxOn/CGy7xij7yKkNIqMM\n   HQdbwa005BQfdEooOtd3ZnYX5x1vfCpz6Ko6LZdgqTBUyx5ubEkEFexbm\n   F3pGZ1hqI7rutT2+X6tvSXYPJsNVBiJRcqsh5lk0p1FiqugzOKGLurfhg\n   nyY3L10ToleqIQqGtBh/6pbo3MhjKm0kehqRGBgydolkyeBCQjqwTEuId\n   Q==;","X-CSE-ConnectionGUID":["owFwKTKEQp+yDH848Jyrsw==","+a3KZ+yFSbCe/HWMzKtiNw=="],"X-CSE-MsgGUID":["Fddk/FpsSyegNf8vN1Y/kw==","Ks5xYG8+TQORPQUJCt2meg=="],"X-IronPort-AV":["E=McAfee;i=\"6800,10657,11754\"; a=\"87442380\"","E=Sophos;i=\"6.23,169,1770624000\";\n   d=\"scan'208\";a=\"87442380\"","E=Sophos;i=\"6.23,169,1770624000\";\n   d=\"scan'208\";a=\"228700593\""],"X-ExtLoop1":"1","From":"=?utf-8?q?Ilpo_J=C3=A4rvinen?= <ilpo.jarvinen@linux.intel.com>","Date":"Thu, 9 Apr 2026 16:26:43 +0300 (EEST)","To":"Geramy Loveless <gloveless@jqluv.com>","cc":"linux-pci@vger.kernel.org, cristi@ieee.org","Subject":"Re: [PATCH] PCI: release empty sibling resources during bridge window\n resize","In-Reply-To":"\n <CAGpo2mcyLhY6muz9Zgg3zD=Ux-HT8RXeMvbUi27a+SX=VxCRPQ@mail.gmail.com>","Message-ID":"<f2cf6508-e2e8-d567-66f3-51b094585434@linux.intel.com>","References":"\n <CAGpo2meKY6SXsESU-D0PGgbESLqdF8UBF-tmThxOvk2XUDpEzw@mail.gmail.com>\n <4203a8ea-25a3-72e1-c071-db371be045e1@linux.intel.com>\n <CAGpo2mcyLhY6muz9Zgg3zD=Ux-HT8RXeMvbUi27a+SX=VxCRPQ@mail.gmail.com>","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","Content-Type":"multipart/mixed; boundary=\"8323328-1390774046-1775741203=:968\""}},{"id":3675479,"web_url":"http://patchwork.ozlabs.org/comment/3675479/","msgid":"<29a5ee31baf8be7d07617beea016c3f6d03934bf.camel@ieee.org>","list_archive_url":null,"date":"2026-04-09T19:32:11","subject":"Re: [PATCH] PCI: release empty sibling resources during bridge\n window resize","submitter":{"id":93107,"url":"http://patchwork.ozlabs.org/api/people/93107/","name":"Cristian Cocos","email":"cristi@ieee.org"},"content":"This looks very encouraging!\n\nThanks for keeping me in the loop!\n\nC\n\nOn Thu, 2026-04-09 at 16:26 +0300, Ilpo Järvinen wrote:\n> On Thu, 9 Apr 2026, Geramy Loveless wrote:\n> \n> > Perfect I’ll get started on these changes, while I’m here, does the\n> > other bug create\n> > a cascade of problems if fixed? \n> \n> Hi,\n> \n> I'm not sure what \"other bug\" refers to?\n> \n> If you meant Cristian problem, he seemed to have empty bridge windows\n> which this approach should be able to solve without extra problems \n> expected.\n> \n> If you refer to the resource entries having dangling resource tree \n> pointers (sibling, etc.), it's not a big problem when the resource\n> entry \n> has been detached from the tree. It has some impact on whether \n> resource_assigned() can always be trusted so it would be nice to\n> clear all \n> those links on removal (the current remove algorithm shortcuts the \n> subtree).","headers":{"Return-Path":"\n <linux-pci+bounces-52232-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-pci@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=ieee.org header.i=@ieee.org header.a=rsa-sha256\n header.s=google header.b=DFTcXGv9;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=172.234.253.10; helo=sea.lore.kernel.org;\n envelope-from=linux-pci+bounces-52232-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (1024-bit key) header.d=ieee.org header.i=@ieee.org\n header.b=\"DFTcXGv9\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=209.85.219.51","smtp.subspace.kernel.org;\n dmarc=pass (p=reject dis=none) header.from=ieee.org","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=ieee.org"],"Received":["from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fs9764KtWz1xy1\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 10 Apr 2026 05:32:18 +1000 (AEST)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sea.lore.kernel.org (Postfix) with ESMTP id 6143C3006B4C\n\tfor <incoming@patchwork.ozlabs.org>; Thu,  9 Apr 2026 19:32:16 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 4946A1DC1AB;\n\tThu,  9 Apr 2026 19:32:15 +0000 (UTC)","from mail-qv1-f51.google.com (mail-qv1-f51.google.com\n [209.85.219.51])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id A619C1A9F91\n\tfor <linux-pci@vger.kernel.org>; Thu,  9 Apr 2026 19:32:12 +0000 (UTC)","by mail-qv1-f51.google.com with SMTP id\n 6a1803df08f44-89f68634786so13943756d6.1\n        for <linux-pci@vger.kernel.org>; Thu, 09 Apr 2026 12:32:12 -0700 (PDT)","from [192.168.153.215] ([73.29.38.247])\n        by smtp.gmail.com with ESMTPSA id\n 6a1803df08f44-8ac849db735sm5131396d6.2.2026.04.09.12.32.10\n        (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n        Thu, 09 Apr 2026 12:32:10 -0700 (PDT)"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1775763135; cv=none;\n b=afTCHOk2nTUrirZVBHNDsuiOJwejLbL/8zvU91K0spRIYp8Q9siXMK0bImPnmT8NecMDhQW5BJoOLfZmAjM3bQlhDqFB58PTM6TvmL4EsxOQVFT0HFD4DDL33a4zNogaBmUZUXIeMpwMteovyr3vyPdvcJlLpQmuXEScn1vttik=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1775763135; c=relaxed/simple;\n\tbh=1Y3vWU4/Gx46OWMgl0V6uLO5tsglc91TmNM0hatILyY=;\n\th=Message-ID:Subject:From:To:Cc:Date:In-Reply-To:References:\n\t Content-Type:MIME-Version;\n b=utb9rUSV3ouxs8bfYa1qJ4V03mA3xlJvO4Uwo4fPy/GhGRGg0+h870G0oz9nGoPOt+e2NC+J5xtt9JcvxGWPQvqEDB5QAPBNhpP1GdXYRdGThVKyXS3ovockguOGTVclMo8oJiePMq6kKXGTN9gRaYs1k6aExDnjftJseOONphw=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=reject dis=none) header.from=ieee.org;\n spf=pass smtp.mailfrom=ieee.org;\n dkim=pass (1024-bit key) header.d=ieee.org header.i=@ieee.org\n header.b=DFTcXGv9; arc=none smtp.client-ip=209.85.219.51","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=ieee.org; s=google; t=1775763131; x=1776367931;\n darn=vger.kernel.org;\n        h=mime-version:user-agent:content-transfer-encoding:references\n         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject\n         :date:message-id:reply-to;\n        bh=1Y3vWU4/Gx46OWMgl0V6uLO5tsglc91TmNM0hatILyY=;\n        b=DFTcXGv9tIeDXQjv23dsiG5RuXEwVuMbPt2vqqSV6Io6ZqmgMD+73Dj+JN6gkaSkwj\n         kKq6VKNQFZmH7vutJeaOB/K4lqO5ttkVN0m1iPJZh78m0/F2XrZq24SaxrGPLO5Jx91R\n         wq8vsR4KNYGpk7CO5Hew93/vnPTVcrIkjDXp4=","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=1e100.net; s=20251104; t=1775763131; x=1776367931;\n        h=mime-version:user-agent:content-transfer-encoding:references\n         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-gg\n         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;\n        bh=1Y3vWU4/Gx46OWMgl0V6uLO5tsglc91TmNM0hatILyY=;\n        b=LZGvNKV5klYAeMlBeX4BfLMh7oqOki+vXb6C3FU0A/PGsdxz0VmfbA4i2dSIEHZ+ZC\n         b3NizluvlRW2iQzKa8kJJELfHuLLdByboaYHFv06vgPgYS5W+oDZzYfHHMFKJus5jmRS\n         LvYNQYSaDeh5fa87CVcUXAiY/U2SSAFsuWy91/Wr+Ap2lXZuyF4OXDdLJbJx7xYP5Te8\n         r8URU+Y41N9Di5kYvQRaHT/xTl/NhJjBn/WgtLH0sdUKhRwIwzM9dgzad/bxLOn2RAcd\n         CppbeyWctc+ermV426owXricGOskKKSVJq4CgZgIe1oOhZtz9BqHaFKMSQBCorKO4+ZB\n         RWoQ==","X-Gm-Message-State":"AOJu0Yz7Q82nEltWuVbE3qZ9I8etOZjPa/1SMV0Ck6C7xjXqnKKm5SZD\n\tDxxcDabmqo9iI2VbR5WiASTEjhSdM/EW9gcZjyfDTM/nRAd3U3nfYlolLM5z6UFu6sITCBRnUBZ\n\tEHa/61g==","X-Gm-Gg":"AeBDiesP7K9ahfZaU+SCEZClmTZ7aJ2TO3Jio7ROkN2YpTSwT/A9nPqz/E/QscysV5P\n\trnYs25rdi90nDW6wariBpgvJniZOU6QKg10b73rUhl5bI5KtBHtujjbYrwmCqfHJUlJjZ+99F9Z\n\tbFop8FXvYcN/KLwdTAJvArj1ngIjZnIDgdfVv5mMFUNf9q/AwIHtRRGv9cySrRtv2KdLt49wIb+\n\ts1jjaYBZbmhIvTb0mrsZN+IX9IYTqcXU0XL6CSwIzQmCiYSvw4tERubRSfobiyODdtPSJG13GAv\n\tX2Se0JcFKywwu2PFzAWY73CiFK8GZ7sIaaft6pMzUWciHXjLamA96AWpwJEb7NrbpheqZkPTUqi\n\t0VIWIA0v2nLBXqp3ATLH9URWeEmvFWWsTpBggGTUH/PcRHHYxt8ME71ZL8ZUKPSlpavUbfui5rP\n\tbnuN4ukO2E4KQRz1Cw0TfuB1Y=","X-Received":"by 2002:a05:6214:2263:b0:89c:da2b:4903 with SMTP id\n 6a1803df08f44-8ac86220b2amr1486186d6.46.1775763131090;\n        Thu, 09 Apr 2026 12:32:11 -0700 (PDT)","Message-ID":"<29a5ee31baf8be7d07617beea016c3f6d03934bf.camel@ieee.org>","Subject":"Re: [PATCH] PCI: release empty sibling resources during bridge\n window resize","From":"Cristian Cocos <cristi@ieee.org>","To":"Ilpo =?iso-8859-1?q?J=E4rvinen?= <ilpo.jarvinen@linux.intel.com>,\n  Geramy Loveless <gloveless@jqluv.com>","Cc":"linux-pci@vger.kernel.org","Date":"Thu, 09 Apr 2026 15:32:11 -0400","In-Reply-To":"<f2cf6508-e2e8-d567-66f3-51b094585434@linux.intel.com>","References":"\n\t<CAGpo2meKY6SXsESU-D0PGgbESLqdF8UBF-tmThxOvk2XUDpEzw@mail.gmail.com>\n\t <4203a8ea-25a3-72e1-c071-db371be045e1@linux.intel.com>\n\t <CAGpo2mcyLhY6muz9Zgg3zD=Ux-HT8RXeMvbUi27a+SX=VxCRPQ@mail.gmail.com>\n\t <f2cf6508-e2e8-d567-66f3-51b094585434@linux.intel.com>","Content-Type":"text/plain; charset=\"UTF-8\"","Content-Transfer-Encoding":"quoted-printable","User-Agent":"Evolution 3.60.0 (by Flathub.org) ","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"}}]