[{"id":3676134,"web_url":"http://patchwork.ozlabs.org/comment/3676134/","msgid":"<CA+=Fv5Q1tZQwnanw99NbvzT-QenfYz7vUdY02_TuPqHX32ZAiA@mail.gmail.com>","date":"2026-04-11T10:40:29","subject":"Re: [PATCH v4 00/24] PCI: Convert all dynamic sysfs attributes to\n static","submitter":{"id":90300,"url":"http://patchwork.ozlabs.org/api/people/90300/","name":"Magnus Lindholm","email":"linmag7@gmail.com"},"content":"On Sat, Apr 11, 2026 at 10:01 AM Krzysztof Wilczyński\n<kwilczynski@kernel.org> wrote:\n>\n> Hello,\n>\n> This series converts every dynamically allocated PCI sysfs attribute to\n> a static const definition.  After the full series, pci_sysfs_init() and\n> sysfs_initialized are gone, and every sysfs file is created by the\n> driver model at device_add() time.\n>\n> Currently, the PCI resource files (resourceN, resourceN_wc) and the\n> legacy bus files (legacy_io, legacy_mem) are created dynamically\n> from two unsynchronised paths:\n>\n> Path A: late_initcall\n>\n>   pci_sysfs_init                        (late_initcall)\n>     sysfs_initialized = 1\n>     for_each_pci_dev\n>       pci_create_sysfs_dev_files\n>         sysfs_create_bin_file           (resourceN, resourceN_wc)\n>     pci_find_next_bus\n>       pci_create_legacy_files\n>         sysfs_create_bin_file           (legacy_io, legacy_mem)\n>\n> Path B: device registration / hotplug\n>\n>   pci_bus_add_devices\n>     pci_bus_add_device\n>       pci_create_sysfs_dev_files\n>         if (!sysfs_initialized) return  <- only guard\n>         sysfs_create_bin_file           (resourceN, resourceN_wc)\n>\n> On most ACPI systems this does not race because PCI enumeration\n> completes at subsys_initcall time, before pci_sysfs_init() runs:\n>\n>   subsys_initcall (level 4):\n>     acpi_pci_root_add\n>       pci_bus_add_device\n>         pci_create_sysfs_dev_files\n>           if (!sysfs_initialized)          <- not yet set\n>             return -EACCES\n>\n>   late_initcall (level 7):\n>     pci_sysfs_init\n>       sysfs_initialized = 1\n>       for_each_pci_dev\n>         pci_create_sysfs_dev_files         <- creates the files, no race\n>\n> On Devicetree platforms the host controller is a platform driver that\n> probes via the driver model, often on a workqueue, and overlaps with the\n> late_initcall:\n>\n>   CPU 0 (late_initcall)                CPU 1 (driver probe)\n>   ---------------------------          ----------------------------\n>   pci_sysfs_init()\n>     sysfs_initialized = 1\n>     for_each_pci_dev(pdev)             pci_bus_add_device(pdev)\n>       pci_create_sysfs_dev_files()       pci_create_sysfs_dev_files()\n>         sysfs_create_bin_file()            sysfs_create_bin_file()\n>                                              -> \"duplicate filename\"\n>\n> The same happens on ACPI when probing is asynchronous (hv_pci on\n> Azure, RISC-V with ACPI).\n>\n> The duplicate causes sysfs_create_bin_file() to fail with -EEXIST.\n> pci_create_resource_files() then calls pci_remove_resource_files() in\n> its error unwind, tearing down files the other thread created and\n> still references through pdev->res_attr[].  This has caused kernel\n> panics on i.MX6 and boot failures on other platforms.\n>\n> Several different fixes have been proposed over the years: reordering\n> the sysfs_initialized assignment, adding locks, checking\n> pci_dev_is_added(), setting pdev->res_attr[] to NULL after kfree\n> (which only prevents a double-free on the teardown path, not the\n> error unwind removing the other thread's files).  None would address the\n> root cause.\n>\n> This has been reported a few times:\n>\n>   - https://lore.kernel.org/linux-pci/20250702155112.40124-1-heshuan@bytedance.com/\n>   - https://lore.kernel.org/linux-pci/b51519d6-ce45-4b6d-8135-c70169bd110e@h-partners.com/\n>   - https://lore.kernel.org/linux-pci/1702093576-30405-1-git-send-email-ssengar@linux.microsoft.com/\n>   - https://lore.kernel.org/linux-pci/SY0P300MB04687548090B73E40AF97D8897B82@SY0P300MB0468.AUSP300.PROD.OUTLOOK.COM/\n>   - https://lore.kernel.org/linux-pci/20230105174736.GA1154719@bhelgaas/\n>   - https://lore.kernel.org/linux-pci/m3eebg9puj.fsf@t19.piap.pl/\n>   - https://lore.kernel.org/linux-pci/20200716110423.xtfyb3n6tn5ixedh@pali/\n>   - https://lore.kernel.org/linux-pci/1366196798-15929-1-git-send-email-artem.savkov@gmail.com/\n>   - https://bugzilla.kernel.org/show_bug.cgi?id=215515\n>   - https://bugzilla.kernel.org/show_bug.cgi?id=216888\n>\n> With static attributes the driver model creates sysfs entries once per\n> device at device_add() time, under the device lock, eliminating the\n> late_initcall iteration and the race along with it.\n>\n>         Krzysztof\n>\n> ---\n> Changes in v4:\n>   https://lore.kernel.org/linux-pci/20260410055040.39233-1-kwilczynski@kernel.org/\n>\n>    - Added new Reviewed-by tags.\n>    - Added pci_resource_is_io() and pci_resource_is_mem() helpers\n>      for resource type checks, replacing the open-coded bitwise\n>      flag tests in pci_mmap_resource(), pci_resource_io(), and\n>      Alpha's pci_mmap_resource(), as per Ilpo Järvinen's\n>      suggestion.\n>    - Split the __pci_mmap_fits() cleanup into two patches.  An\n>      overflow fix for zero-length BARs, which now includes a\n>      Fixes: tag referencing the original Alpha PCI sysfs commit,\n>      and the WARN macro removal is a separate cleanup as per Ilpo\n>      Järvinen's suggestion.\n>    - Added a missing Fixes: tag to the Alpha lockdown check,\n>      referencing the commit that added the check to the generic\n>      path but missed Alpha's implementation.\n>    - Added PCI_LEGACY_IO_SIZE and PCI_LEGACY_MEM_SIZE macros to\n>      replace the raw literals used for legacy address space sizes.\n>      These are used in both Alpha's pci_mmap_legacy_page_range()\n>      and the static legacy attribute definitions, as per Ilpo\n>      Järvinen's suggestion.\n>    - Replaced sysfs_update_groups() in the BAR resize path with\n>      sysfs_remove_groups() before the resize and sysfs_create_groups()\n>      after, restoring the original teardown before BAR resize\n>      ordering.  This was reported by Sashiko, see:\n>      https://sashiko.dev/#/patchset/20260410055040.39233-1-kwilczynski%40kernel.org?part=7\n>    - Defined pci_dev_resource_attr_groups as a NULL macro when\n>      HAVE_PCI_MMAP and ARCH_GENERIC_PCI_MMAP_RESOURCE are both\n>      absent, so the resize path compiles unconditionally without\n>      #ifdef guards in the function body.  This was reported by\n>      Sashiko, see:\n>      https://sashiko.dev/#/patchset/20260410055040.39233-1-kwilczynski%40kernel.org?part=7\n>    - Moved the pci_legacy_has_sparse() prototype into the patch\n>      that introduces the function, alongside the existing\n>      pci_adjust_legacy_attr() declaration, to fix a bisection\n>      issue where Alpha would warn on -Wmissing-prototypes.\n>      This was reported by Sashiko, see:\n>      https://sashiko.dev/#/patchset/20260410055040.39233-1-kwilczynski%40kernel.org?part=18\n>\n> Changes in v3:\n>   https://lore.kernel.org/linux-pci/20210910202623.2293708-1-kw@linux.com/\n>\n>   - Updated for modern kernel releases and expanded scope.  The\n>     v2 only covered the generic resource files.  This version\n>     also converts Alpha's sparse/dense resource files and the\n>     legacy bus attributes, removing pci_sysfs_init() entirely.\n>   - Split the single macro definition into three distinct ones\n>     (per I/O, UC, and WC), to make sure that each carries only\n>     the callbacks its resource type needs.\n>   - Updated to use the new .bin_size callback, as the attributes\n>     are const, to replace using a->size directly, which was not\n>     ideal.  This required changes to pci_llseek_resource(), to\n>     ensure that it would work for device and bus-level attributes.\n>   - Updated the __resource_resize_store() to include CAP_SYS_ADMIN\n>     capabilities check.\n>   - Added the security_locked_down() check to Alpha's\n>     pci_mmap_resource(), to align with other architectures.\n>\n> Changes in v2:\n>   https://lore.kernel.org/linux-pci/20210825212255.878043-1-kw@linux.com/\n>\n>   - Refactored code so that the macros, helpers and internal\n>     functions can be used to correctly leverage the read(),\n>     write() and mmap() callbacks rather than to use the\n>     .is_bin_visible() callback to set up sysfs objects\n>     internals as this is not supported.\n>   - Refactored some if-statements to check for a resource\n>     flag first, and then call either arch_can_pci_mmap_io()\n>     or arch_can_pci_mmap_wc(), plus store result of testing\n>     for IORESOURCE_MEM and IORESOURCE_PREFETCH flags into\n>     a boolean variable, as per Bjorn Helgaas' suggestion.\n>   - Renamed pci_read_resource_io() and pci_write_resource_io()\n>     callbacks so that these are not specifically tied to I/O\n>     BARs read() and write() operations also as per Bjorn\n>     Helgaas' suggestion.\n>   - Updated style for code handling bitwise operations to\n>     match the style that is preferred as per Bjorn Helgaas'\n>     suggestion.\n>   - Updated commit messages adding more details about the\n>     implementation as requested by Bjorn Helgaas.\n>\n> Krzysztof Wilczyński (24):\n>   PCI/sysfs: Use PCI resource accessor macros\n>   PCI: Add pci_resource_is_io() and pci_resource_is_mem() helpers\n>   PCI/sysfs: Only allow supported resource types in I/O and MMIO helpers\n>   PCI/sysfs: Use BAR length in pci_llseek_resource() when attr->size is\n>     zero\n>   PCI/sysfs: Add CAP_SYS_ADMIN check to __resource_resize_store()\n>   PCI/sysfs: Add static PCI resource attribute macros\n>   PCI/sysfs: Convert PCI resource files to static attributes\n>   PCI/sysfs: Convert __resource_resize_store() to use static attributes\n>   PCI/sysfs: Add stubs for pci_{create,remove}_sysfs_dev_files()\n>   PCI/sysfs: Limit pci_sysfs_init() late_initcall compile scope\n>   alpha/PCI: Add security_locked_down() check to pci_mmap_resource()\n>   alpha/PCI: Use BAR index in sysfs attr->private instead of resource\n>     pointer\n>   alpha/PCI: Use PCI resource accessor macros\n>   alpha/PCI: Clean up pci_mmap_resource()\n>   alpha/PCI: Fix __pci_mmap_fits() overflow for zero-length BARs\n>   alpha/PCI: Remove WARN from __pci_mmap_fits()\n>   alpha/PCI: Add static PCI resource attribute macros\n>   alpha/PCI: Convert resource files to static attributes\n>   PCI/sysfs: Remove pci_{create,remove}_sysfs_dev_files()\n>   PCI: Add macros for legacy I/O and memory address space sizes\n>   alpha/PCI: Compute legacy size in pci_mmap_legacy_page_range()\n>   PCI/sysfs: Add __weak pci_legacy_has_sparse() helper\n>   PCI/sysfs: Convert legacy I/O and memory attributes to static\n>     definitions\n>   PCI/sysfs: Remove pci_create_legacy_files() and pci_sysfs_init()\n>\n>  arch/alpha/include/asm/pci.h   |  13 +-\n>  arch/alpha/kernel/pci-sysfs.c  | 373 +++++++++++----------\n>  arch/powerpc/include/asm/pci.h |   2 -\n>  drivers/pci/bus.c              |   1 -\n>  drivers/pci/pci-sysfs.c        | 575 +++++++++++++++++++--------------\n>  drivers/pci/pci.h              |  16 +-\n>  drivers/pci/probe.c            |   6 -\n>  drivers/pci/remove.c           |   3 -\n>  include/linux/pci.h            |  39 ++-\n>  9 files changed, 578 insertions(+), 450 deletions(-)\n>\n\nHi ,\n\nApplied the series on an Alpha UP2000+, built and booted\nsuccessfully. PCI enumeration and device initialization looked\nnormal, I saw no relevant sysfs/PCI warnings in dmesg, and PCI\nsysfs resource files for tested devices looked sane.\n\nFrom the Alpha side, this looks good to me.\n\nTested-by: Magnus Lindholm <linmag7@gmail.com>\nAcked-by: Magnus Lindholm <linmag7@gmail.com>","headers":{"Return-Path":"\n <linuxppc-dev+bounces-19646-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=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=j6I3QOdS;\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-19646-incoming=patchwork.ozlabs.org@lists.ozlabs.org;\n receiver=patchwork.ozlabs.org)","lists.ozlabs.org;\n arc=pass smtp.remote-ip=\"2a00:1450:4864:20::632\" arc.chain=google.com","lists.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com","lists.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=j6I3QOdS;\n\tdkim-atps=neutral","lists.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=gmail.com\n (client-ip=2a00:1450:4864:20::632; helo=mail-ej1-x632.google.com;\n envelope-from=linmag7@gmail.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)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4ft9F53Bg0z1y2d\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 11 Apr 2026 20:40:57 +1000 (AEST)","from boromir.ozlabs.org (localhost [127.0.0.1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4ft9F00lRMz2ypm;\n\tSat, 11 Apr 2026 20:40:52 +1000 (AEST)","from mail-ej1-x632.google.com (mail-ej1-x632.google.com\n [IPv6:2a00:1450:4864:20::632])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 4ft9Dy0Gz7z2ymg\n\tfor <linuxppc-dev@lists.ozlabs.org>; Sat, 11 Apr 2026 20:40:49 +1000 (AEST)","by mail-ej1-x632.google.com with SMTP id\n a640c23a62f3a-b9c3e2cf3c0so446675266b.1\n        for <linuxppc-dev@lists.ozlabs.org>;\n Sat, 11 Apr 2026 03:40:49 -0700 (PDT)"],"ARC-Seal":["i=2; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1775904051;\n\tcv=pass;\n b=aaPOJ9s2FurjbKe2Z4hKWVJyALyyDLpECD78QcgMHV6x6HHg5/VL3y7UUKnMA/run0lIpgWENQ8Z0T+SpJsa2ozLlLcNvHvLMjxQYTXpbm4djWOa2i4cHA1+cZ4C4/lgY1vfSy7W9yjStZNcR7Q5L0LuO78xPhZSztpcmEjaTAZqF6P9bamorOtq/4uM/aM15qbiZcJptr4DA08UHSGs7lDimOTPVuA3u+taMK5iUAdqhE74BQackqSgnq8iWKDHFFqVF2xtl+9en13AFgsZb/JYUVHdqeml+FQWZzsfR5BHkd+U48zopRQ+ZC3UlwAPe46Becl3kokYc7cgZCQYcQ==","i=1; a=rsa-sha256; t=1775904042; cv=none;\n        d=google.com; s=arc-20240605;\n        b=Hh7j/x7+CPZM7buqZt7JRlwdCkpC1ny80bGcohWR/BFc8N78SpZlPvOw8aGCXlgTN+\n         +iRzAhQ2HBkdPJ3BPFpggoRsuAafESLwHKgEY384RYiH407rz6pnxCYRGB6hBs33IdLh\n         Bjp7mfyAAWYFe1+AFRy6ZXDROvOzsxUVrgySFvmuJhcvyY3fnemAncOiGA9Wvkcx7/lZ\n         iIaHJtmP4tdQAJX3gw77ZZwJLIRNzxaLY8fl0jO2vqd+xWYNTglE1lMV9bxlQPOJpl//\n         GBw+9iirPtOUqgJivCQRYF1rFCQkbvg4cIIi5TOsfWCDtnyaYeV84CWnOTQnhfh/r/tI\n         kMEw=="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=lists.ozlabs.org; s=201707;\n\tt=1775904051; c=relaxed/relaxed;\n\tbh=CsqzNkDnXitYu6WtxNz/ljnO1ZLIoc3+9EuFkHTOA9o=;\n\th=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject:\n\t To:Cc:Content-Type;\n b=D3rhRR1nV4YkZpZRajH4Navmkv3bv3tJ5X1SbMfXG3WXuDtL2RKKZBkGySBpouCCQjR0mXYhB2jy3MQrJhWEYfYjXeGXa/JEAqXBocpCLr8MUl3uFp2z0b8isXRAT0P0TLrI2MfaDNO5XNi4LnPyIVuTCRbANvq7t4B/I/R20/Q3/by6Gg9tIDExAutKnf8s3UsR9x78Qet8ztlljUC0IATvb4hHaZ7VPdceNMUXdt+ss9BPJK9S2l9m7S2ahidyaEtc1GTirEqASXh7oPdXkZbEuonRIrrAZ/kJGDanFiOJj4UVOzYKS/QAbs8qXFcq/saH+wO/vxfJbnIX1xo+tg==","i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;\n s=arc-20240605;\n        h=content-transfer-encoding:cc:to:subject:message-id:date:from\n         :in-reply-to:references:mime-version:dkim-signature;\n        bh=CsqzNkDnXitYu6WtxNz/ljnO1ZLIoc3+9EuFkHTOA9o=;\n        fh=Cuo20izZM3siqo9YR7dYzPBLD9kH0iYKjzMsfo/5Iac=;\n        b=jW+5AoRGi3qC7hautC0bQ1Uz82+p8XKzz4rEZ5oTjUand/KwEv6WbRtii8g3R5Kj3C\n         WpCroc+0HGn4NQZQ/bVCTEMf5E5CMrbmp6W87HWlixwFray4v3XMe5R6zhQzuz0zxckn\n         fBxCiDie/+OyIJp34W2kCTMrRziiWwYVqCeE5U3cJvpEk6J3Z9yPQ2YDLSMOHy489U61\n         htzmFKW5ivBBE03/99YLu8GS/njGCTV1/7v3eGUVMAXUmtgSJ1qQo/JWTxQ2pU2xUou8\n         96qumKu18STSInwdz3j3qTG0b9uVSrJ+HCiDr+NaaWst2HIEIBHhI7bm6J++I3YhVWx4\n         XQ3A==;\n        darn=lists.ozlabs.org"],"ARC-Authentication-Results":["i=2; lists.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com; dkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=j6I3QOdS; dkim-atps=neutral;\n spf=pass (client-ip=2a00:1450:4864:20::632; helo=mail-ej1-x632.google.com;\n envelope-from=linmag7@gmail.com;\n receiver=lists.ozlabs.org) smtp.mailfrom=gmail.com","i=1; mx.google.com; arc=none"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=gmail.com; s=20251104; t=1775904042; x=1776508842;\n darn=lists.ozlabs.org;\n        h=content-transfer-encoding:cc:to:subject:message-id:date:from\n         :in-reply-to:references:mime-version:from:to:cc:subject:date\n         :message-id:reply-to;\n        bh=CsqzNkDnXitYu6WtxNz/ljnO1ZLIoc3+9EuFkHTOA9o=;\n        b=j6I3QOdSLp6GhvV3B2bWyeCRvxH2+hhyVQYyzRgzrmJxt7OULtDDMil0izYiKTPNa0\n         tPCGJQDa8HqkeULySvB26XJa9475pRlS83Bmd/ov+fVfCAI0vpMfnzqMVWJbUWRoYySw\n         IWhwJpwZqdSDAuXqsyZYIxnkcYXYx0Sp8WytHx/A4sssXfgZLJr9D3bwSn12OFqNHtS2\n         7OLkJsgQ1h4hkEXI8io3GxWTFguYy58QtJeR5W3NYh4M8vIoutsf191tSJkh5ofq2OpM\n         OGcvuIAM+Hx1UTe3mvKiqYC97I+eDPwNm80hOASVV7I/1fCMyVShZLxv/0T2ckwa+JjJ\n         jsVg==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=1e100.net; s=20251104; t=1775904042; x=1776508842;\n        h=content-transfer-encoding:cc:to:subject:message-id:date:from\n         :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from\n         :to:cc:subject:date:message-id:reply-to;\n        bh=CsqzNkDnXitYu6WtxNz/ljnO1ZLIoc3+9EuFkHTOA9o=;\n        b=WONfAGeElWSgtE55qoD/I/XSbA40edqCeHawA/NJmOaghYDS0y2EDnS/GY6cwguMk9\n         V3G5yv5EwaCTDXnwYuuKuUr0bWRMpH1mlkRV4DFllgfCQmqF2e+JH6l1vRtAOb5thYOS\n         yDc8i+ZTPurEqqOW3xAEeCmhdiIuWSfOXYbFI/3+6CrY/xy1zgNUSgsBMsnH8Y/iNEFl\n         7ejVP77kHtqt3f3zH63xuwGdYUWrTIj0rNTaApmlDAezBorzHBDUh5xonRv8hCdu5zX5\n         NUnpx1VmGtWSNm2NUbG+QaW7VnWeh2E3yMvYVmai7BA4Jl/FRV4ZIbefApGHhiyvudUV\n         gdZw==","X-Forwarded-Encrypted":"i=1;\n AJvYcCU6tlGhfoGzZv0BuiUVia6/uH2C92MFTj8SSEDibAiBFfBdvv1KIZrfb5hX7W1IqRS+jBO66yAdO1ZHsmY=@lists.ozlabs.org","X-Gm-Message-State":"AOJu0Yy1wuvIaeCeHhWUmR69iXbxG31OpKmoS0eOcUOSUICBMuyRjPxi\n\tPTrckrYgPqFzawI1bFj0OriV3rTAnwus7oUrfdgklNhN0d3kUcwXNskbAK7A/oMCeXG0r3lM6wq\n\t1c+/+APR/poeQ6oxR7bwvN/Hp+SUrCdc=","X-Gm-Gg":"AeBDietmJzni37UPYHfPcsR8Z1JVWPHCheQurS9FowikO+ejWxWwaE2o+8+VN3d82qN\n\tyiYMIU8Vi8SRPNXtgHzjLrTCqXV2hYN2IBoF9UAwCEMcq4kZ5RBUAcyDVUuhhF6C8uyAd2m9lXx\n\tO4p4ZyWYhytXxeBA76LaNIPbob0imq/lBpajEnNpa/e5Xv6tWONIVWMLo29kHWjmbObUH2rjbEu\n\t0BdJKL5pV6CRQauoahJXFmr7ADjkSiiw2nYrbHwWbT0fNTLbGbH3hocj5WZt1zxbWRc0MSajPhm\n\t06EwcItdvxiuwwKdnxQzVX37vfUfJEfUvQHQVyMS8YuHULVAkw==","X-Received":"by 2002:a17:907:1b1b:b0:b9d:3c22:b2c8 with SMTP id\n a640c23a62f3a-b9d724f0c56mr414074566b.1.1775904041152; Sat, 11 Apr 2026\n 03:40:41 -0700 (PDT)","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","References":"<20260411080148.471335-1-kwilczynski@kernel.org>","In-Reply-To":"<20260411080148.471335-1-kwilczynski@kernel.org>","From":"Magnus Lindholm <linmag7@gmail.com>","Date":"Sat, 11 Apr 2026 12:40:29 +0200","X-Gm-Features":"AQROBzBL0ISJ1oDzmS1WdKnfmR7mJ-8b5qly2wKGmSLW0OsznpAbrTTOYjF1FCI","Message-ID":"\n <CA+=Fv5Q1tZQwnanw99NbvzT-QenfYz7vUdY02_TuPqHX32ZAiA@mail.gmail.com>","Subject":"Re: [PATCH v4 00/24] PCI: Convert all dynamic sysfs attributes to\n static","To":"=?utf-8?q?Krzysztof_Wilczy=C5=84ski?= <kwilczynski@kernel.org>","Cc":"Bjorn Helgaas <bhelgaas@google.com>, Bjorn Helgaas <helgaas@kernel.org>,\n  Manivannan Sadhasivam <mani@kernel.org>,\n Lorenzo Pieralisi <lpieralisi@kernel.org>,  Matt Turner <mattst88@gmail.com>,\n Richard Henderson <richard.henderson@linaro.org>,\n  Christophe Leroy <chleroy@kernel.org>,\n Madhavan Srinivasan <maddy@linux.ibm.com>,\n  Michael Ellerman <mpe@ellerman.id.au>, Nicholas Piggin <npiggin@gmail.com>,\n Dexuan Cui <decui@microsoft.com>,\n =?utf-8?q?Krzysztof_Ha=C5=82asa?= <khalasa@piap.pl>,\n  Lukas Wunner <lukas@wunner.de>, \"Oliver O'Halloran\" <oohall@gmail.com>,\n  Saurabh Singh Sengar <ssengar@microsoft.com>,\n Shuan He <heshuan@bytedance.com>,\n  Srivatsa Bhat <srivatsabhat@microsoft.com>,\n =?utf-8?q?Ilpo_J=C3=A4rvinen?= <ilpo.jarvinen@linux.intel.com>,\n  linux-pci@vger.kernel.org, linux-alpha@vger.kernel.org,\n  linuxppc-dev@lists.ozlabs.org","Content-Type":"text/plain; charset=\"UTF-8\"","Content-Transfer-Encoding":"quoted-printable","X-Spam-Status":"No, score=0.1 required=3.0 tests=ARC_SIGNED,ARC_VALID,\n\tDKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,\n\tFREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,\n\tSPF_HELO_NONE,SPF_PASS autolearn=disabled version=4.0.1 OzLabs 8","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on lists.ozlabs.org"}},{"id":3676236,"web_url":"http://patchwork.ozlabs.org/comment/3676236/","msgid":"<20260412063803.GA2085076@rocinante>","date":"2026-04-12T06:38:03","subject":"Re: [PATCH v4 00/24] PCI: Convert all dynamic sysfs attributes to\n static","submitter":{"id":86709,"url":"http://patchwork.ozlabs.org/api/people/86709/","name":"Krzysztof Wilczyński","email":"kwilczynski@kernel.org"},"content":"Hello,\n\n> This series converts every dynamically allocated PCI sysfs attribute to\n> a static const definition.  After the full series, pci_sysfs_init() and\n> sysfs_initialized are gone, and every sysfs file is created by the\n> driver model at device_add() time.\n\nA note on testing:\n\n  0-day bot (recent test runs; newer builds will arrive later):\n    - https://lore.kernel.org/linux-pci/202604121312.sF0Ua4gP-lkp@intel.com\n    - https://lore.kernel.org/linux-pci/202604111631.lrwAylMM-lkp@intel.com\n    - https://lore.kernel.org/linux-pci/202603170336.zSLrDvlj-lkp@intel.com\n    - https://lore.kernel.org/linux-pci/202603122052.tMV5rzNq-lkp@intel.com\n    - https://lore.kernel.org/linux-pci/202603081334.b91RGVS6-lkp@intel.com\n    - https://lore.kernel.org/linux-pci/202603060207.pnGfKgGa-lkp@intel.com\n\n  KernelCI (for the \"for-kernelci\" branch):\n    - https://dashboard.kernelci.org/tree/linux-pci/for-kernelci/209e2cfd205a8aad4bae32e6f82b96b20902aa74\n    - https://dashboard.kernelci.org/tree/linux-pci/for-kernelci/70293477e2c0ae8cbc250098818e726e1d658b53\n    - https://dashboard.kernelci.org/tree?ts=pci\n\n  Sashiko's feedback:\n    - https://sashiko.dev/#/patchset/20260411080148.471335-1-kwilczynski%40kernel.org\n    - https://sashiko.dev/#/patchset/20260410055040.39233-1-kwilczynski%40kernel.org\n\nI sadly do not own any Alpha or PowerPC hardware, so when I was testing\nthese architectures while working on the series, it would be only under\nQEMU.\n\nThat said, Magnus Lindholm was able to test the series on the Alpha\nhardware he owns, see:\n\n  - https://lore.kernel.org/linux-pci/CA+=Fv5Q1tZQwnanw99NbvzT-QenfYz7vUdY02_TuPqHX32ZAiA@mail.gmail.com\n\nLorenzo Pieralisi did some testing reported outside the mailing list (we\ntalked on IRC), on the platform he had issues before, and while the issues\nwere more with procfs races, similar to the sysfs ones this series aims to\nfix, he didn't notice regressions when having this series applied.\n\nThank you!\n\n\tKrzysztof","headers":{"Return-Path":"\n <linuxppc-dev+bounces-19654-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=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=P5VfRa+f;\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-19654-incoming=patchwork.ozlabs.org@lists.ozlabs.org;\n receiver=patchwork.ozlabs.org)","lists.ozlabs.org;\n arc=none smtp.remote-ip=172.105.4.254","lists.ozlabs.org;\n dmarc=pass (p=quarantine dis=none) header.from=kernel.org","lists.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=P5VfRa+f;\n\tdkim-atps=neutral","lists.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=kernel.org\n (client-ip=172.105.4.254; helo=tor.source.kernel.org;\n envelope-from=kwilczynski@kernel.org; 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 4ftgpc2sG6z1xtJ\n\tfor <incoming@patchwork.ozlabs.org>; Sun, 12 Apr 2026 16:38:16 +1000 (AEST)","from boromir.ozlabs.org (localhost [127.0.0.1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4ftgpX53vxz2ygp;\n\tSun, 12 Apr 2026 16:38:12 +1000 (AEST)","from tor.source.kernel.org (tor.source.kernel.org [172.105.4.254])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 4ftgpW0crQz2yYJ\n\tfor <linuxppc-dev@lists.ozlabs.org>; Sun, 12 Apr 2026 16:38:10 +1000 (AEST)","from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])\n\tby tor.source.kernel.org (Postfix) with ESMTP id 0E39A60008;\n\tSun, 12 Apr 2026 06:38:06 +0000 (UTC)","by smtp.kernel.org (Postfix) with ESMTPSA id 24957C19424;\n\tSun, 12 Apr 2026 06:38:05 +0000 (UTC)"],"ARC-Seal":"i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1775975892;\n\tcv=none;\n b=kOVmfvEx1jgT8rBX5mZWBW+P8qUP02fx3aby7ozHOClkmlFtg0Sq5nzEOhImAwR7aVfO/ovgJM0pN+HPryBXwqz9iHM+sN13kS9TPZtC5FuFWQWSb0hrmHZbA6TX63BFMzSj1ULxJGXwwIxmQCZKa3Umx8dIJmt/ei9ySyo3Xx8fd4BK3mDj1KNpfa7HCeAlTUyNbv/P+l5KylnR9iYm+Zli9R54Aa+2DP0snMfKFAFlYXBCet4eJBDIEKXG9HTkFSKAj4G7AOcbss8UU0AzFcEgz7nFdNoJxNKtO5Orj16EAtVxpYSQBJK9q0ncfstrpQCzLKEe3t4YIcdNPQczZw==","ARC-Message-Signature":"i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707;\n\tt=1775975892; c=relaxed/relaxed;\n\tbh=JAYAoSnp852ajT0S2qoNTL7kDXQ6p6KT2mhr5M16bSA=;\n\th=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version:\n\t Content-Type:Content-Disposition:In-Reply-To;\n b=fkS/ScPZI3ZVMKa0aJ9C6HcRVmKzFrRgIgmqZuLL+06W2ws7J4Ua5WhZVUW+AwAf8ewWEHmmtJ6lzPijaL0qAhCutrnN9D9M6UsknL6eOiJPlRwKko0E1fzKzOCMbInU1M12mytPfw5pbCCXNRvo3YnqO83f0dYynL5vpv16TCOR/2WsLC1O8VlnE1g4d+wr4igQQr40KQal69rYNU6jFtkJClcAgX6Qa7YVNEXpsyAv6Xox4rxDaMz7B+yarH7HzvqH3gxr5H3XUVqZzOYVRI4VZ7y+zoKMct43Z5x/BWtDYYTf4PU5E+wo6aVx5OJ6ISZiWsubUANV9GgzWuIqCw==","ARC-Authentication-Results":"i=1; lists.ozlabs.org;\n dmarc=pass (p=quarantine dis=none) header.from=kernel.org;\n dkim=pass (2048-bit key;\n unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=P5VfRa+f; dkim-atps=neutral;\n spf=pass (client-ip=172.105.4.254; helo=tor.source.kernel.org;\n envelope-from=kwilczynski@kernel.org;\n receiver=lists.ozlabs.org) smtp.mailfrom=kernel.org","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;\n\ts=k20201202; t=1775975885;\n\tbh=sTTFTGEFAtVBl1AdOtumfXjQUbSRjk8/CzL0mvAKNBU=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=P5VfRa+f8Bq9oWoKaDhwdknQhKG1iG4zqj8NDKZCwDkCRnFuMMtzbLsYJ8ZAkCO7J\n\t 1NTU9Ns9AyZ78ETJA5JsSiDLVJTjWhRly1gI7ROcrNjI5svAVdmCuzivmqDB+/sf2+\n\t gn6YLD8CzuODxIw77WI72qIfRwsz8M6xWenUrgrvgwFHnZO9KLKf6EOG5wGDNmv9+/\n\t VFuxPdCyAMqun5yluXF/5J2+vJyY2e6IKlBGFVJh3OEUEGFAtHvvdYQNVsT8imj8qr\n\t gNk5WoFPNJ6bQ8vrKRzLl9Uv8jYidJCInvkefrkbLmapzgVFWX5RQ0dGB+V2FcS0e5\n\t 2K2SF97vJwIoA==","Date":"Sun, 12 Apr 2026 15:38:03 +0900","From":"Krzysztof =?utf-8?q?Wilczy=C5=84ski?= <kwilczynski@kernel.org>","To":"Bjorn Helgaas <bhelgaas@google.com>","Cc":"Bjorn Helgaas <helgaas@kernel.org>,\n Manivannan Sadhasivam <mani@kernel.org>,\n Lorenzo Pieralisi <lpieralisi@kernel.org>,\n Magnus Lindholm <linmag7@gmail.com>, Matt Turner <mattst88@gmail.com>,\n Richard Henderson <richard.henderson@linaro.org>,\n Christophe Leroy <chleroy@kernel.org>,\n Madhavan Srinivasan <maddy@linux.ibm.com>,\n Michael Ellerman <mpe@ellerman.id.au>, Nicholas Piggin <npiggin@gmail.com>,\n Dexuan Cui <decui@microsoft.com>,\n Krzysztof =?utf-8?q?Ha=C5=82asa?= <khalasa@piap.pl>,\n Lukas Wunner <lukas@wunner.de>, Oliver O'Halloran <oohall@gmail.com>,\n Saurabh Singh Sengar <ssengar@microsoft.com>,\n Shuan He <heshuan@bytedance.com>, Srivatsa Bhat <srivatsabhat@microsoft.com>,\n Ilpo =?utf-8?b?SsOkcnZpbmVu?= <ilpo.jarvinen@linux.intel.com>,\n linux-pci@vger.kernel.org, linux-alpha@vger.kernel.org,\n linuxppc-dev@lists.ozlabs.org","Subject":"Re: [PATCH v4 00/24] PCI: Convert all dynamic sysfs attributes to\n static","Message-ID":"<20260412063803.GA2085076@rocinante>","References":"<20260411080148.471335-1-kwilczynski@kernel.org>","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=us-ascii","Content-Disposition":"inline","In-Reply-To":"<20260411080148.471335-1-kwilczynski@kernel.org>","X-Spam-Status":"No, score=-0.2 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED,\n\tDKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS\n\tautolearn=disabled version=4.0.1 OzLabs 8","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on lists.ozlabs.org"}},{"id":3676238,"web_url":"http://patchwork.ozlabs.org/comment/3676238/","msgid":"<20260412063927.GB2085076@rocinante>","date":"2026-04-12T06:39:27","subject":"Re: [PATCH v4 00/24] PCI: Convert all dynamic sysfs attributes to\n static","submitter":{"id":86709,"url":"http://patchwork.ozlabs.org/api/people/86709/","name":"Krzysztof Wilczyński","email":"kwilczynski@kernel.org"},"content":"Hello,\n\n> > This series converts every dynamically allocated PCI sysfs attribute to\n> > a static const definition.  After the full series, pci_sysfs_init() and\n> > sysfs_initialized are gone, and every sysfs file is created by the\n> > driver model at device_add() time.\n\n[...]\n> Applied the series on an Alpha UP2000+, built and booted\n> successfully. PCI enumeration and device initialization looked\n> normal, I saw no relevant sysfs/PCI warnings in dmesg, and PCI\n> sysfs resource files for tested devices looked sane.\n> \n> >From the Alpha side, this looks good to me.\n> \n> Tested-by: Magnus Lindholm <linmag7@gmail.com>\n> Acked-by: Magnus Lindholm <linmag7@gmail.com>\n\nI appreciate you taking the time to test this.\n\nThank you!\n\n\tKrzysztof","headers":{"Return-Path":"\n <linuxppc-dev+bounces-19655-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=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=fzDgUNaO;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ozlabs.org\n (client-ip=112.213.38.117; helo=lists.ozlabs.org;\n envelope-from=linuxppc-dev+bounces-19655-incoming=patchwork.ozlabs.org@lists.ozlabs.org;\n receiver=patchwork.ozlabs.org)","lists.ozlabs.org;\n arc=none smtp.remote-ip=\"2600:3c04:e001:324:0:1991:8:25\"","lists.ozlabs.org;\n dmarc=pass (p=quarantine dis=none) header.from=kernel.org","lists.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=fzDgUNaO;\n\tdkim-atps=neutral","lists.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=kernel.org\n (client-ip=2600:3c04:e001:324:0:1991:8:25; helo=tor.source.kernel.org;\n envelope-from=kwilczynski@kernel.org; receiver=lists.ozlabs.org)"],"Received":["from lists.ozlabs.org (lists.ozlabs.org [112.213.38.117])\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 4ftgr62JSBz1xtJ\n\tfor <incoming@patchwork.ozlabs.org>; Sun, 12 Apr 2026 16:39:34 +1000 (AEST)","from boromir.ozlabs.org (localhost [127.0.0.1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4ftgr53dCgz2ygp;\n\tSun, 12 Apr 2026 16:39:33 +1000 (AEST)","from tor.source.kernel.org (tor.source.kernel.org\n [IPv6:2600:3c04:e001:324:0:1991:8:25])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 4ftgr45VFhz2yYJ\n\tfor <linuxppc-dev@lists.ozlabs.org>; Sun, 12 Apr 2026 16:39:32 +1000 (AEST)","from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])\n\tby tor.source.kernel.org (Postfix) with ESMTP id E843E60180;\n\tSun, 12 Apr 2026 06:39:29 +0000 (UTC)","by smtp.kernel.org (Postfix) with ESMTPSA id 5D572C19424;\n\tSun, 12 Apr 2026 06:39:29 +0000 (UTC)"],"ARC-Seal":"i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1775975973;\n\tcv=none;\n b=SBFjTGmKc8Yzw486PxINTzo1nxW0N5qHvkUKkp3M3uPbx1/VMbeYx+ZypScGIvsdsZY7eYeIJO7Lz/s2O3Nz/1aiw+DZ6VdZ9rGN7f/W1++MPK7mWQ965A7VhRs0BezfSJ7W7PtTgoEegwwBXBJ0qViPq7HXt0YrmbLZfWWRzjFoksdW74Gz7h2iveqwaJe3vyFEqODB7fuyPZWAj+nsnKjmz1Ezd6a9kh9zh1LhqRTsBVbUfpz20qgSrT6v+x21ULddyV1YVOatVr/EhpFUsRrcEChfwtNXE0XMK/FKC8+e2L8Z/k2MrQnQPoUn2hU9uvMWWPrdUTt6e8YO5RBk/A==","ARC-Message-Signature":"i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707;\n\tt=1775975973; c=relaxed/relaxed;\n\tbh=xrF+NAOJr5PHK1XhKKroJJAPe29WPLu85oOYz9G28l8=;\n\th=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version:\n\t Content-Type:Content-Disposition:In-Reply-To;\n b=QR1gAQPpJYUR0/elO8vWWYgiLaBjl3rpNs6uiHv693l+wN+VSDgpD7qLsUcnH0VGga1bVLIdpYpNLvtOvJLKaCulOs1+OlOLIxJqcgmvId1m2puWdr8i/T+RkED6q1lVnc5EHYgKqvTbDjzB3yl2f+8IXOhCHV8QsAxYld6utG3hzDgfJopf7hdrsdgehjcjuUYUpiSv1xycQ10GuW+8TRz6Oj7nLKneLFW4C5SfTDIxBb/Xq7dwKVFoAcvsHLiDmmXf4jyJaamuGh9uq3uYy874YdSmmh8a8HTpct5Ua4e1dO484zTuO+2MLEBrRxpZ0b6sRWopbfVCWxI2tk4WLQ==","ARC-Authentication-Results":"i=1; lists.ozlabs.org;\n dmarc=pass (p=quarantine dis=none) header.from=kernel.org;\n dkim=pass (2048-bit key;\n unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=fzDgUNaO; dkim-atps=neutral;\n spf=pass (client-ip=2600:3c04:e001:324:0:1991:8:25;\n helo=tor.source.kernel.org; envelope-from=kwilczynski@kernel.org;\n receiver=lists.ozlabs.org) smtp.mailfrom=kernel.org","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;\n\ts=k20201202; t=1775975969;\n\tbh=6Gfvk1vJ2dWhGGDn2YFpAnYsydfbb+BI5a9oo2uq30E=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=fzDgUNaOpqjoITWmDRNxW4jtZPGtgJ7WfRkMr5BJ41p7XiNmc8SOh0oCq4J2j7rTo\n\t NLoLDHRbHh0ni4t2ntideLvnua/072uDENzgIqhbS0RaxWVW55BtBmzAFmIzCUU3mn\n\t IEPrzVC/2RLvIq8EEBIOw/UwRuls+qzyw9rP21KECkimIYAzCXeGf/29CFFOqIfk1q\n\t toob/klVXFfK/YjkeEBJmZrGOZt05PUE1NRMqFqJoYl2gDzwZpzLhJgxzIBkZhe5H5\n\t B6RiLd2mV6WsFlTWMuctrbIuLo4s3TxoPbGl0M1VhYnzWpa11NuiBKcFEjUq5504Ff\n\t xDQ5Ux/em3l4w==","Date":"Sun, 12 Apr 2026 15:39:27 +0900","From":"Krzysztof =?utf-8?q?Wilczy=C5=84ski?= <kwilczynski@kernel.org>","To":"Magnus Lindholm <linmag7@gmail.com>","Cc":"Bjorn Helgaas <bhelgaas@google.com>, Bjorn Helgaas <helgaas@kernel.org>,\n Manivannan Sadhasivam <mani@kernel.org>,\n Lorenzo Pieralisi <lpieralisi@kernel.org>, Matt Turner <mattst88@gmail.com>,\n Richard Henderson <richard.henderson@linaro.org>,\n Christophe Leroy <chleroy@kernel.org>,\n Madhavan Srinivasan <maddy@linux.ibm.com>,\n Michael Ellerman <mpe@ellerman.id.au>, Nicholas Piggin <npiggin@gmail.com>,\n Dexuan Cui <decui@microsoft.com>,\n Krzysztof =?utf-8?q?Ha=C5=82asa?= <khalasa@piap.pl>,\n Lukas Wunner <lukas@wunner.de>, Oliver O'Halloran <oohall@gmail.com>,\n Saurabh Singh Sengar <ssengar@microsoft.com>,\n Shuan He <heshuan@bytedance.com>, Srivatsa Bhat <srivatsabhat@microsoft.com>,\n Ilpo =?utf-8?b?SsOkcnZpbmVu?= <ilpo.jarvinen@linux.intel.com>,\n linux-pci@vger.kernel.org, linux-alpha@vger.kernel.org,\n linuxppc-dev@lists.ozlabs.org","Subject":"Re: [PATCH v4 00/24] PCI: Convert all dynamic sysfs attributes to\n static","Message-ID":"<20260412063927.GB2085076@rocinante>","References":"<20260411080148.471335-1-kwilczynski@kernel.org>\n <CA+=Fv5Q1tZQwnanw99NbvzT-QenfYz7vUdY02_TuPqHX32ZAiA@mail.gmail.com>","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=us-ascii","Content-Disposition":"inline","In-Reply-To":"\n <CA+=Fv5Q1tZQwnanw99NbvzT-QenfYz7vUdY02_TuPqHX32ZAiA@mail.gmail.com>","X-Spam-Status":"No, score=-0.2 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED,\n\tDKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS\n\tautolearn=disabled version=4.0.1 OzLabs 8","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on lists.ozlabs.org"}}]