Show a cover letter.

GET /api/1.2/covers/2230178/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 2230178,
    "url": "http://patchwork.ozlabs.org/api/1.2/covers/2230178/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/linuxppc-dev/cover/20260429122617.7324-1-ilpo.jarvinen@linux.intel.com/",
    "project": {
        "id": 2,
        "url": "http://patchwork.ozlabs.org/api/1.2/projects/2/?format=api",
        "name": "Linux PPC development",
        "link_name": "linuxppc-dev",
        "list_id": "linuxppc-dev.lists.ozlabs.org",
        "list_email": "linuxppc-dev@lists.ozlabs.org",
        "web_url": "https://github.com/linuxppc/wiki/wiki",
        "scm_url": "https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git",
        "webscm_url": "https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/",
        "list_archive_url": "https://lore.kernel.org/linuxppc-dev/",
        "list_archive_url_format": "https://lore.kernel.org/linuxppc-dev/{}/",
        "commit_url_format": "https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?id={}"
    },
    "msgid": "<20260429122617.7324-1-ilpo.jarvinen@linux.intel.com>",
    "list_archive_url": "https://lore.kernel.org/linuxppc-dev/20260429122617.7324-1-ilpo.jarvinen@linux.intel.com/",
    "date": "2026-04-29T12:26:06",
    "name": "[00/11] PCI: pci_resource_alignment() improvement + cleanups",
    "submitter": {
        "id": 83553,
        "url": "http://patchwork.ozlabs.org/api/1.2/people/83553/?format=api",
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@linux.intel.com"
    },
    "mbox": "http://patchwork.ozlabs.org/project/linuxppc-dev/cover/20260429122617.7324-1-ilpo.jarvinen@linux.intel.com/mbox/",
    "series": [
        {
            "id": 502049,
            "url": "http://patchwork.ozlabs.org/api/1.2/series/502049/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/linuxppc-dev/list/?series=502049",
            "date": "2026-04-29T12:26:06",
            "name": "PCI: pci_resource_alignment() improvement + cleanups",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/502049/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/covers/2230178/comments/",
    "headers": {
        "Return-Path": "\n <linuxppc-dev+bounces-20276-incoming=patchwork.ozlabs.org@lists.ozlabs.org>",
        "X-Original-To": [
            "incoming@patchwork.ozlabs.org",
            "linuxppc-dev@lists.ozlabs.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=ffDzJNUX;\n\tdkim-atps=neutral",
            "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ozlabs.org\n (client-ip=2404:9400:21b9:f100::1; helo=lists.ozlabs.org;\n envelope-from=linuxppc-dev+bounces-20276-incoming=patchwork.ozlabs.org@lists.ozlabs.org;\n receiver=patchwork.ozlabs.org)",
            "lists.ozlabs.org;\n arc=none smtp.remote-ip=192.198.163.18",
            "lists.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=linux.intel.com",
            "lists.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=ffDzJNUX;\n\tdkim-atps=neutral",
            "lists.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=linux.intel.com\n (client-ip=192.198.163.18; helo=mgamail.intel.com;\n envelope-from=ilpo.jarvinen@linux.intel.com; receiver=lists.ozlabs.org)"
        ],
        "Received": [
            "from lists.ozlabs.org (lists.ozlabs.org\n [IPv6:2404:9400:21b9:f100::1])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1 raw public key)\n server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g5Gkl2F0Bz1yHX\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 29 Apr 2026 22:26:38 +1000 (AEST)",
            "from boromir.ozlabs.org (localhost [127.0.0.1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4g5Gkk1jQ1z2yjp;\n\tWed, 29 Apr 2026 22:26:38 +1000 (AEST)",
            "from mgamail.intel.com (mgamail.intel.com [192.198.163.18])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 4g5Gkg0Zgtz2ySf\n\tfor <linuxppc-dev@lists.ozlabs.org>; Wed, 29 Apr 2026 22:26:32 +1000 (AEST)",
            "from fmviesa006.fm.intel.com ([10.60.135.146])\n  by fmvoesa112.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 29 Apr 2026 05:26:28 -0700",
            "from ijarvine-mobl1.ger.corp.intel.com (HELO localhost)\n ([10.245.245.212])\n  by fmviesa006-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 29 Apr 2026 05:26:24 -0700"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1777465598;\n\tcv=none;\n b=f+ysgLYWmwNPxuO9OCYxRy6RX1azvtBx3VSrtlE2zt+ybcJCkvHOmYtkL30IhF2uk7FgPsNnYHEWMLjhtF4st5COCHZkWFp98WHppD9IUpihMJy0Ulo6rv9c7apQGXSeDPBHq9bsQ4F9Ik3M/ARVFM9ZcQ+jxrvNd4hqBx2OnVECk3h8zjvNLkmZ0DFn9XPa08D8WNGpuzw6TR80RgsD0kbRtdF02phs+sWfu0dp6XFx8QSZ2i7n3M573gMgUU8MvpBvxnUA+mF3QelcAY7jusNCDHIlGF5qDjDbw4tQJ6tj+wRbnDy2DXaTgh+BEKCN5ZLIKAOVzmyOD99KJUurvg==",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707;\n\tt=1777465598; c=relaxed/relaxed;\n\tbh=blSVM7WjU1kRlDj3TK9DsSHo6TzO87ZSZqqbWB5NS9c=;\n\th=From:To:Cc:Subject:Date:Message-Id:MIME-Version:Content-Type;\n b=aOqrYzXWXmPIBQHuYOXciHdT+e4xm8vLmPn/8yB1XUmi9mndGnsrfAS+TU5OdWIbW7SJATK1Bc6EzCle/CoCV56pM6a97gX7nXSWFeJyvxHfCmGs56+YoyJywyalHbBWJ7zjBYlGe3cZMF7Dnv/o2KdVumgnsr2TDaXH3atGb4NIqxkhYp5f9+xMgFaGLNpDCUm1NwBVQxd4diA3G/S9gtD3CuYWalCP5CF2mZ54pVP2j9CZtssD1B/msjbw3wsrxRbvwfQRsX+ax+EW3nuwKWAnA5K37DdM/J1pFVSkXd4bzUXvwBlBy/JcfdM4gINGyu3XR9QuQJBsMVGponzU5w==",
        "ARC-Authentication-Results": "i=1; lists.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=linux.intel.com;\n dkim=pass (2048-bit key;\n unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256\n header.s=Intel header.b=ffDzJNUX; dkim-atps=neutral;\n spf=pass (client-ip=192.198.163.18; helo=mgamail.intel.com;\n envelope-from=ilpo.jarvinen@linux.intel.com;\n receiver=lists.ozlabs.org) smtp.mailfrom=linux.intel.com",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple;\n  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n  t=1777465595; x=1809001595;\n  h=from:to:cc:subject:date:message-id:mime-version:\n   content-transfer-encoding;\n  bh=StUIvDAZe7jSwmt+KbusiTw3cp/VUh8LhDiUJd1ZEnM=;\n  b=ffDzJNUXi4Jr+UuhOsZEXR6lFprxd2ZG/FNcOY13E+68VPUmf/2rUUD+\n   YuMeOnUtQUpuOZ0c3s6cVBXmNu/LbTFeSWcNcZXe6M1J201t5jtw9G4y6\n   mUdbpSUnlW+Rs2q9NpLPWZ+GLohw64GHtLFkS2X4a9glh17zH22de86Cp\n   mdEBxuWwqNP10+M917eHKZzf2K2BDqSW0JB2IgjT2Oeo10r8sUHxuqOXA\n   Aul0Nkgnx/r2EouBNptYD9nrbG+oxP3jjLU9RsX8TbIkO1zCkXaQimnni\n   Y2ezrc9quzQNMkVcFrWGete5o1qZloOfFKmUhjcERn17av26pa8G14vPj\n   Q==;",
        "X-CSE-ConnectionGUID": [
            "4T1jU3C2QgKjOOdeu2qnNg==",
            "e2ynKkGnQ/mCfV7EGabTDQ=="
        ],
        "X-CSE-MsgGUID": [
            "XplUtCQFTa6Cl15KsG3NpQ==",
            "UMOQ/jvuTpGe6w8nQEajNg=="
        ],
        "X-IronPort-AV": [
            "E=McAfee;i=\"6800,10657,11770\"; a=\"77557647\"",
            "E=Sophos;i=\"6.23,206,1770624000\";\n   d=\"scan'208\";a=\"77557647\"",
            "E=Sophos;i=\"6.23,206,1770624000\";\n   d=\"scan'208\";a=\"229669615\""
        ],
        "X-ExtLoop1": "1",
        "From": "=?utf-8?q?Ilpo_J=C3=A4rvinen?= <ilpo.jarvinen@linux.intel.com>",
        "To": "linux-pci@vger.kernel.org,\n\tBjorn Helgaas <bhelgaas@google.com>,\n\tShawn Jin <shawn.jin@asteralabs.com>,\n\tlinuxppc-dev@lists.ozlabs.org,\n\tMadhavan Srinivasan <maddy@linux.ibm.com>,\n\tMichael Ellerman <mpe@ellerman.id.au>,\n\tNicholas Piggin <npiggin@gmail.com>",
        "Cc": "linux-kernel@vger.kernel.org,\n =?utf-8?q?Ilpo_J=C3=A4rvinen?= <ilpo.jarvinen@linux.intel.com>",
        "Subject": "[PATCH 00/11] PCI: pci_resource_alignment() improvement + cleanups",
        "Date": "Wed, 29 Apr 2026 15:26:06 +0300",
        "Message-Id": "<20260429122617.7324-1-ilpo.jarvinen@linux.intel.com>",
        "X-Mailer": "git-send-email 2.39.5",
        "X-Mailing-List": "linuxppc-dev@lists.ozlabs.org",
        "List-Id": "<linuxppc-dev.lists.ozlabs.org>",
        "List-Help": "<mailto:linuxppc-dev+help@lists.ozlabs.org>",
        "List-Owner": "<mailto:linuxppc-dev+owner@lists.ozlabs.org>",
        "List-Post": "<mailto:linuxppc-dev@lists.ozlabs.org>",
        "List-Archive": "<https://lore.kernel.org/linuxppc-dev/>,\n  <https://lists.ozlabs.org/pipermail/linuxppc-dev/>",
        "List-Subscribe": "<mailto:linuxppc-dev+subscribe@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-digest@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-nomail@lists.ozlabs.org>",
        "List-Unsubscribe": "<mailto:linuxppc-dev+unsubscribe@lists.ozlabs.org>",
        "Precedence": "list",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain; charset=UTF-8",
        "Content-Transfer-Encoding": "8bit",
        "X-Spam-Status": "No, score=-2.3 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED,\n\tDKIM_VALID,RCVD_IN_DNSWL_MED,SPF_HELO_NONE,SPF_PASS autolearn=disabled\n\tversion=4.0.1 OzLabs 8",
        "X-Spam-Checker-Version": "SpamAssassin 4.0.1 (2024-03-25) on lists.ozlabs.org"
    },
    "content": "pci_resource_alignment() returns 0 when resource is already assigned\nand in case of disabled bridge windows. This has caused problems to\ncalculations relying on pci_resource_alignment():\n\nhttps://lore.kernel.org/linux-pci/LV8P221MB1472A24B9975F7C8E8D6BF929947A@LV8P221MB1472.NAMP221.PROD.OUTLOOK.COM/\n\nThis series reworks pci_resource_alignment() interface to return always\nnon-zero alignment if the resource exists. For assigned bridge windows,\nthe calculation is using heuristic based on size and start address\nalignment as calculating the alignment again is costly (would require\nsizing the entire sub-hierarchy).\n\nAs pci_resource_alignment() is becoming more complicated, it's also\nmoved to setup-res.c. While moving pci_resource_alignment()'s arguments\nare converted into const to tell compiler it can rely on resource\nremaining the same across the call.\n\nThis was intended to be part of a larger series that addresses some\nshortcomings in pci=realloc. The pci=realloc changes will recalculate\nbridge window sizes considering also assigned resources which required\nmaking these changes to pci_resource_alignment().\n\nAs this also relates to the issue linked above, I'm sending it already\nnow without pci=realloc changes that are still incomplete. The first\npatches originate from the large pci=realloc work but seem generally\nuseful even if independent of the alignment improvements so I've\nincluded them here without reorganizing the series to contain only\nalignment related changes.\n\nIlpo Järvinen (11):\n  PCI: Log all resource claims\n  PCI: Rename added to add_list\n  PCI: Consolidate add_list (aka realloc_head) empty sanity checks\n  PCI: Remove const removal cast\n  resource: Make resource_alignment() input const resource\n  powerpc/pseries: Make pseries_get_iov_fw_value() & pnv_iov_get()\n    pci_dev const\n  PCI: Make pci_sriov_resource_alignment() pci_dev const\n  PCI: Convert pci_resource_alignment() input parameters to const\n  PCI: Move pci_resource_alignment() to setup-res.c file\n  PCI: Lower bound bridge windown alignment\n  PCI: Return valid alignment for assigned resources\n\n arch/powerpc/include/asm/machdep.h         |  2 +-\n arch/powerpc/kernel/pci-common.c           |  2 +-\n arch/powerpc/platforms/powernv/pci-sriov.c |  4 +-\n arch/powerpc/platforms/powernv/pci.h       |  5 ++-\n arch/powerpc/platforms/pseries/setup.c     |  5 ++-\n drivers/pci/iov.c                          |  7 +--\n drivers/pci/pci.h                          | 24 ++++-------\n drivers/pci/setup-bus.c                    | 50 ++++++++++++----------\n drivers/pci/setup-cardbus.c                |  2 +-\n drivers/pci/setup-res.c                    | 37 ++++++++++++++++\n include/linux/ioport.h                     |  2 +-\n include/linux/pci.h                        |  8 ++--\n kernel/resource.c                          |  2 +-\n 13 files changed, 94 insertions(+), 56 deletions(-)\n\n\nbase-commit: 254f49634ee16a731174d2ae34bc50bd5f45e731"
}