Commit graph

1,426,898 commits

Author SHA1 Message Date
Jani Nikula
ac16a7ec04 drm/i915/cdclk: drop i915_drv.h include
intel_cdclk.c no longer needs i915_drv.h. Drop it.

Reviewed-by: Mika Kahola <mika.kahola@intel.com>
Link: https://patch.msgid.link/20251121112200.3435099-1-jani.nikula@intel.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2025-11-25 16:32:10 +02:00
Heiko Carstens
509c34924d s390/vdso: Get rid of -m64 flag handling
The compiler/assembler flag -m64 is added and removed at two locations.
This pointless exercise is a leftover to keep the 31 and 64 bit vdso
Makefiles as symmetrical as possible. Given that the 31 bit vdso code
does not exist anymore, remove the -m64 flag handling.

Suggested-by: Jens Remus <jremus@linux.ibm.com>
Reviewed-by: Jens Remus <jremus@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
2025-11-25 15:28:08 +01:00
Heiko Carstens
c0087d807a s390/vdso: Rename vdso64 to vdso
Since compat is gone there is only a 64 bit vdso left.
Remove the superfluous "64" suffix everywhere.

Reviewed-by: Jens Remus <jremus@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
2025-11-25 15:28:07 +01:00
Heiko Carstens
b3bdfdf1f9 s390: Rename head64.S to head.S
All the code is 64 bit, therefore remove the superfluous suffix.

Reviewed-by: Jens Remus <jremus@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
2025-11-25 15:28:07 +01:00
Jens Remus
5e811b922e s390/vdso: Use common STABS_DEBUG and DWARF_DEBUG macros
This simplifies the vDSO linker script.  The ELF_DETAILS macro was not
used in addition, as done on arm64 and powerpc, as that would introduce
an empty .modinfo section.

Note that this rearranges the .comment section to follow after all of
the debug sections.

Signed-off-by: Jens Remus <jremus@linux.ibm.com>
Reviewed-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
2025-11-25 15:28:07 +01:00
Helge Deller
dca7da2443 parisc: Do not reprogram affinitiy on ASP chip
The ASP chip is a very old variant of the GSP chip and is used e.g. in
HP 730 workstations. When trying to reprogram the affinity it will crash
with a HPMC as the relevant registers don't seem to be at the usual
location.  Let's avoid the crash by checking the sversion. Also note,
that reprogramming isn't necessary either, as the HP730 is a just a
single-CPU machine.

Signed-off-by: Helge Deller <deller@gmx.de>
Cc: stable@vger.kernel.org
2025-11-25 15:23:02 +01:00
Jason Gunthorpe
152c862c17 iommupt: Fix unlikely flows in increase_top()
Since increase_top() does it's own READ_ONCE() on top_of_table, the
caller's prior READ_ONCE() could be inconsistent and the first time
through the loop we may actually already have the right level if two
threads are racing map.

In this case new_level will be left uninitialized.

Further all the exits from the loop have to either commit to the new top
or free any memory allocated so the early return must be a goto err_free.

Make it so the only break from the loop always sets new_level to the right
value and all other exits go to err_free. Use pts.level (the pts
represents the top we are stacking) within the loop instead of new_level.

Fixes: dcd6a011a8 ("iommupt: Add map_pages op")
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Closes: https://lore.kernel.org/r/aRwgNW9PiW2j-Qwo@stanley.mountain
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Reviewed-by: Alejandro Jimenez <alejandro.j.jimenez@oracle.com>
Reviewed-by: Vasant Hegde <vasant.hegde@amd.com>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2025-11-25 15:11:49 +01:00
Jinhui Guo
2381a1b40b iommu/amd: Propagate the error code returned by __modify_irte_ga() in modify_irte_ga()
The return type of __modify_irte_ga() is int, but modify_irte_ga()
treats it as a bool. Casting the int to bool discards the error code.

To fix the issue, change the type of ret to int in modify_irte_ga().

Fixes: 57cdb720ea ("iommu/amd: Do not flush IRTE when only updating isRun and destination fields")
Cc: stable@vger.kernel.org
Signed-off-by: Jinhui Guo <guojinhui.liam@bytedance.com>
Reviewed-by: Vasant Hegde <vasant.hegde@amd.com>
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2025-11-25 15:10:23 +01:00
Marc Zyngier
b1e24e05e1 PCI: host-generic: Move bridge allocation outside of pci_host_common_init()
Having the host bridge allocation inside pci_host_common_init() results
in a lot of complexity in the pcie-apple driver (the only direct user
of this function outside of core PCI code).

It forces the allocation of driver-specific tracking structures outside
of the bridge allocation, which in turn requires it to use inefficient
data structures to match the bridge and the private structure as needed.

Instead, let the bridge structure be passed to pci_host_common_init(),
allowing the driver to allocate it together with the private data,
as it is usually intended. The driver can then retrieve the bridge
via the owning device attached to the PCI config window structure.
This allows the pcie-apple driver to be significantly simplified.

Both core and driver code are changed in one go to avoid going via
a transitional interface.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
Reviewed-by: Radu Rendec <rrendec@redhat.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Manivannan Sadhasivam <mani@kernel.org>
Cc: Rob Herring <robh@kernel.org>
Cc: Krzysztof Wilczyński <kwilczynski@kernel.org>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Link: https://lore.kernel.org/r/86jyzms036.wl-maz@kernel.org
Link: https://patch.msgid.link/20251125102726.865617-1-maz@kernel.org
2025-11-25 19:39:42 +05:30
Dai Ngo
99f5aa14f0 NFSD: Add trace point for SCSI fencing operation.
Add trace point to print client IP address, net namespace number,
device name and status of SCSI pr_preempt command.

Signed-off-by: Dai Ngo <dai.ngo@oracle.com>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
2025-11-25 09:09:42 -05:00
Dai Ngo
6f52063db9 NFSD: use correct reservation type in nfsd4_scsi_fence_client
The reservation type argument for the pr_preempt call should match the
one used in nfsd4_block_get_device_info_scsi.

Fixes: f99d4fbdae ("nfsd: add SCSI layout support")
Cc: stable@vger.kernel.org
Signed-off-by: Dai Ngo <dai.ngo@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
2025-11-25 09:09:42 -05:00
Chuck Lever
1c873a2fd1 xdrgen: Don't generate unnecessary semicolon
The Jinja2 templates add a semicolon at the end of every function.
The C language does not require this punctuation.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
2025-11-25 09:09:42 -05:00
Chuck Lever
f7cb94fad4 xdrgen: Fix union declarations
Add a missing template file. This file is used when a union is
defined as a public API (ie, "pragma public <union name>;").

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
2025-11-25 09:09:42 -05:00
Olga Kornievskaia
14282cc3cf NFSD: don't start nfsd if sv_permsocks is empty
Previously, while trying to create a server instance, if no
listening sockets were present then default parameter udp
and tcp listeners were created. It's unclear what purpose
was of starting these listeners were and how this could have
been triggered by the userland setup. This patch proposed
to ensure the reverse that we never end in a situation where
no listener sockets are created and we are trying to create
nfsd threads.

The problem it solves is: when nfs.conf only has tcp=n (and
nothing else for the choice of transports), nfsdctl would
still start the server and create udp and tcp listeners.

Signed-off-by: Olga Kornievskaia <okorniev@redhat.com>
Reviewed-by: NeilBrown <neil@brown.name>
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
2025-11-25 09:09:42 -05:00
Khushal Chitturi
b0f8e1f1f5 xdrgen: handle _XdrString in union encoder/decoder
Running xdrgen on xdrgen/tests/test.x fails when
generating encoder or decoder functions for union
members of type _XdrString. It was because _XdrString
does not have a spec attribute like _XdrBasic,
leading to AttributeError.

This patch updates emit_union_case_spec_definition
and emit_union_case_spec_decoder/encoder to handle
_XdrString by assigning type_name = "char *" and
avoiding referencing to spec.

Testing: Fixed xdrgen tool was run on originally failing
test file (tools/net/sunrpc/xdrgen/tests/test.x) and now
completes without AttributeError. Modified xdrgen tool was
also run against nfs4_1.x (Documentation/sunrpc/xdr/nfs4_1.x).
The output header file matches with nfs4_1.h
(include/linux/sunrpc/xdrgen/nfs4_1.h).
This validates the patch for all XDR input files currently
within the kernel.

Changes since v2:
- Moved the shebang to the first line
- Removed SPDX header to match style of current xdrgen files

Changes since v1:
- Corrected email address in Signed-off-by.
- Wrapped patch description lines to 72 characters.

Signed-off-by: Khushal Chitturi <kc9282016@gmail.com>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
2025-11-25 09:09:42 -05:00
Chuck Lever
42ba5bd2e2 xdrgen: Fix the variable-length opaque field decoder template
Ensure that variable-length opaques are decoded into the named
field, and do not overwrite the structure itself.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
2025-11-25 09:09:42 -05:00
Chuck Lever
3bd937b49a xdrgen: Make the xdrgen script location-independent
The @pythondir@ placeholder is meant for build-time substitution,
such as with autoconf. autoconf is not used in the kernel. Let's
replace that mechanism with one that better enables the xdrgen
script to be run from any directory.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
2025-11-25 09:09:42 -05:00
Chuck Lever
75a9b40f3b xdrgen: Generalize/harden pathname construction
Use Python's built-in Path constructor to find the Jinja templates.
This provides better error checking, proper use of path component
separators, and more reliable location of the template files.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
2025-11-25 09:09:42 -05:00
Jean-Philippe Brucker
1e8b6eb141 MAINTAINERS: Update my email address
Use jpb@kernel.org as my main address.

Signed-off-by: Jean-Philippe Brucker <jpb@kernel.org>
Acked-by: Will Deacon <will@kernel.org>
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2025-11-25 15:07:46 +01:00
Rafael J. Wysocki
1a8b350182 Revert "ACPI: processor: Remove unused empty stubs of some functions"
Revert commit 5020d05b34 ("ACPI: processor: Remove unused empty stubs
of some functions") because it depends on a problematic one.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2025-11-25 15:05:01 +01:00
Pavel Begunkov
f6dc5a3619 io_uring: fix mixed cqe overflow handling
I started to see zcrx data corruptions. That turned out to be due
to CQ tail pointing to a stale entry which happened to be from
a zcrx request. I.e. the tail is incremented without the CQE
memory being changed.

The culprit is __io_cqring_overflow_flush() passing "cqe32=true"
to io_get_cqe_overflow() for non-mixed CQE32 setups, which only
expects it to be set for mixed 32B CQEs and not for SETUP_CQE32.

The fix is slightly hacky, long term it's better to unify mixed and
CQE32 handling.

Fixes: e26dca67fd ("io_uring: add support for IORING_SETUP_CQE_MIXED")
Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2025-11-25 07:03:45 -07:00
Rafael J. Wysocki
e6889323c2 Revert "ACPI: processor: idle: Rearrange declarations in header file"
Revert commit bdf780fbce ("ACPI: processor: idle: Rearrange declarations
in header file") because it depends on a problematic one.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2025-11-25 15:03:24 +01:00
Rafael J. Wysocki
66e600a26e Revert "ACPI: processor: idle: Redefine two functions as void"
Revert commit fbd401e95e ("ACPI: processor: idle: Redefine two
functions as void") because it depends on a problematic one.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2025-11-25 14:53:33 +01:00
Arnd Bergmann
4b1e815701 MediaTek soc driver updates
This adds socinfo entries for MT8189 Kompanio 540, an extra entry
 for a variant of MT8391 (AV/AZA) Genio 720 SoC, and support for
 the PMIC Wrapper (by adding a compatible string) in MT8189.
 -----BEGIN PGP SIGNATURE-----
 
 iLoEABYKAGIWIQQn3Xxr56ypAcSHzXSaNgTPrZeEeAUCaRMG/xsUgAAAAAAEAA5t
 YW51MiwyLjUrMS4xMSwyLDIoHGFuZ2Vsb2dpb2FjY2hpbm8uZGVscmVnbm9AY29s
 bGFib3JhLmNvbQAKCRCaNgTPrZeEeD10AQDq9xEZ3TYffYjCl9j41Ct8HDSmv0x/
 nRTXBWXMH9JhbwD/YRigXkEQQcwPrluqgW/hBnF6a4br5AOns63n7j1xog0=
 =dYcz
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmkltJIACgkQmmx57+YA
 GNmqSxAAo0e8EKQhJxG5D90LyrKkJ7c/iDwRuMIvIAlRtzL874/k2brWs00gcQ8D
 y7VvFFW1pgyuKCHaEV9iz8YHmOdbuzOjT8ZNRgZkgW006pFEys8kQeOIia6KpO1E
 MGjZi3E77sRx/jlc6OGRs5dHuoRgx6p+RCC9q6y8goYhcO3AO27GmZYttGz1chTe
 OJJWqomDsQM+zwWzkUbabIocPCmACcS+qcuQuf0PZuY+I2j4Rj/ZWnauW27hjsRp
 puJremjmzG2XmunUrE9BU7r97ie7Cd2gRNRktiwkvHXn+fp5EJq6hB3J3frFGZjF
 JMr0HkkekSnuDoJREw3tzJmnR6sAqC3kD75P42r+y9UaUgRKmDfbY89w31ojAUty
 dTL284D1+35gfLDMeq7GOFDG0gTPGpfDfEZs5onoMwGIM7nZbmREba6n36OHvhHq
 venYgKTOWv6ggbAc7Q40KYo2B55ZLX4hcJHW2AFuBkGTW+mndBOnIa1EV2BPC7cA
 LN4L46/46LYP2vUUJ2BqSQxplStgTsLizO16O2AiF3k7culhesCHoiEHE8YHXuqu
 omsDuqN9XTrIO/pgsYaxqmSZe4ggkRz4kGas1vax6FaayAIsWYTO9eRM0+I8/Row
 /nSBx2ZEUZs5rMzrOGCo0akFmWLDlS22D9ebuHZB1SFtnG8B3PA=
 =OEnV
 -----END PGP SIGNATURE-----

Merge tag 'mtk-soc-for-v6.19' of https://git.kernel.org/pub/scm/linux/kernel/git/mediatek/linux into soc/drivers

MediaTek soc driver updates

This adds socinfo entries for MT8189 Kompanio 540, an extra entry
for a variant of MT8391 (AV/AZA) Genio 720 SoC, and support for
the PMIC Wrapper (by adding a compatible string) in MT8189.

* tag 'mtk-soc-for-v6.19' of https://git.kernel.org/pub/scm/linux/kernel/git/mediatek/linux:
  dt-bindings: soc: mediatek: pwrap: Add compatible for MT8189 SoC
  soc: mediatek: mtk-socinfo: Add entry for MT8391AV/AZA Genio 720
  soc: mediatek: mtk-socinfo: Add extra entry for MT8189

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-11-25 14:52:14 +01:00
André Draszik
44c603f35c mfd: sec: Drop a stray semicolon
A stray and unneeded semicolon was added here by accident, just drop
it.

Fixes: ee19b52c31 ("mfd: sec: Use chained IRQs for s2mpg10")
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202511230909.zk7EkTnb-lkp@intel.com/
Signed-off-by: André Draszik <andre.draszik@linaro.org>
Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>
Link: https://patch.msgid.link/20251124-s2mpg10-chained-irq-semicolon-v1-1-578ba2d7adca@linaro.org
Signed-off-by: Lee Jones <lee@kernel.org>
2025-11-25 13:50:45 +00:00
Rafael J. Wysocki
34fa09c698 Revert "ACPI: processor: Do not expose global variable acpi_idle_driver"
Revert commit 559f2eacc8 ACPI: processor: Do not expose global variable
acpi_idle_driver" because it depends on a problematic one.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2025-11-25 14:50:25 +01:00
Vlastimil Babka
a8ec08bf32 Merge branch 'slab/for-6.19/mempool_alloc_bulk' into slab/for-next
Merges series "mempool_alloc_bulk and various mempool improvements v3"
from Christoph Hellwig.

From the cover letter [1]:

This series adds a bulk version of mempool_alloc that makes allocating
multiple objects deadlock safe.

The initial users is the blk-crypto-fallback code:

  https://lore.kernel.org/linux-block/20251031093517.1603379-1-hch@lst.de/

with which v1 was posted, but I also have a few other users in mind.

Link: https://lore.kernel.org/all/20251113084022.1255121-1-hch@lst.de/ [1]
2025-11-25 14:38:41 +01:00
Vlastimil Babka
ed80cc758b Merge branch 'slab/for-6.19/freelist_aba_t_cleanups' into slab/for-next
Merge series "slab: cmpxchg cleanups enabled by -fms-extensions"

From the cover letter [1]:

After learning about -fms-extensions being enabled for 6.19, I realized
there is some cleanup potential in slub code by extending the definition
and usage of freelist_aba_t, as it can now become an unnamed member of
struct slab. This series performs the cleanup, with no functional
changes intended. Additionally we turn freelist_aba_t to struct
freelist_counters as it doesn't meet any criteria for being a typedef,
per Documentation/process/coding-style.rst

Based on the tag kbuild-ms-extensions-6.19 from
git://git.kernel.org/pub/scm/linux/kernel/git/kbuild/linuxV

Link: https://lore.kernel.org/all/20251107-slab-fms-cleanup-v1-0-650b1491ac9e@suse.cz/#t [1]
2025-11-25 14:35:33 +01:00
Vlastimil Babka
e5d7764e13 Merge branch 'slab/for-6.19/memdesc_prep' into slab/for-next
Merge series "Prepare slab for memdescs" by Matthew Wilcox.

From the cover letter [1]:

When we separate struct folio, struct page and struct slab from each
other, converting to folios then to slabs will be nonsense.  It made
sense under the 'folio is just a head page' interpretation, but with
full separation, page_folio() will return NULL for a page which belongs
to a slab.

This patch series removes almost all mentions of folio from slab.
There are a few folio_test_slab() invocations left around the tree that
I haven't decided how to handle yet.  We're not yet quite at the point
of separately allocating struct slab, but that's what I'll be working
on next.

Link: https://lore.kernel.org/all/20251113000932.1589073-1-willy@infradead.org/ [1]
2025-11-25 14:33:14 +01:00
Linus Walleij
6156424a7d intel-pinctrl for v6.19-1
* Add and use common macro INTEL_GPP() to avoid duplication
 * Export intel_gpio_add_pin_ranges() and reuse it instead of custom copies
 * Unify error messages with help of dev_err_probe()
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEqaflIX74DDDzMJJtb7wzTHR8rCgFAmkljcsACgkQb7wzTHR8
 rCh5Cw/9GjLDRA4W7DCnN6tcXXz/TFv4FqlBFk8mtbSLBEM5zIQK0aFCK6NfzgpW
 Eea6dWDIVBWU8NOSQ8SciX+DTMk9xCzn0WjrVnaYTV6hIhr0prmAKMg9rQ5PUwuL
 LiU6S+j2cLbQz/xp4VzIAJG7NOyW8HJAQWElxoUZTVaLfEsnXLa3K+PuhKe8tIRB
 FU6OSwlEn+e3Cjlcbstpe+auV9iynMEhp77bG0aKxbaW9SO411Wxaudy8sPCY3r2
 5dvNTZW1qfM06yRwI4yrKvA3ENQcIGWepPp0lA/OJdH9nhsd4tfGyJwqAynM63mm
 oqf/E2W6rHLSDuXcK1SEfwGaJCjgFjINTN7UM1QrCmxChc+JI/9YAp6X4OaesRGF
 j1c9XOdrXxgXs8nYL2i1CJ8qW54XzUog7/fFkz2mOVQJXmc1JDvF/h/G6kNbJlpt
 72O5vrMwDTot++J/aIo4tdQihyQcsCZ9U8yuYJjDe4TuK+ihBhiav5bybgx45S0z
 HWQ1yAD78YgL+wqRMlMfzB2UYk6zdDRzFFQcAtlspuvfXAJNzU2ozl5J4+jXrqez
 gL4VZxRShfbfdKMFMJKfzUCCLmzlaBf3cSZm4L2YuzCssuYeWl33aoA416eVi13T
 /eeELGp7+qBfyEA/SblYBHYJcaT6sQD7IMluHVnARFc4erUJ4Ys=
 =WtxV
 -----END PGP SIGNATURE-----

Merge tag 'intel-pinctrl-v6.19-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pinctrl/intel into devel

intel-pinctrl for v6.19-1

* Add and use common macro INTEL_GPP() to avoid duplication
* Export intel_gpio_add_pin_ranges() and reuse it instead of custom copies
* Unify error messages with help of dev_err_probe()

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2025-11-25 14:29:03 +01:00
Vlastimil Babka
3065c20d5d Merge branch 'slab/for-6.19/sheaves_cleanups' into slab/for-next
Merge series "slab: preparatory cleanups before adding sheaves to all
caches" [1]

Cleanups that were written as part of the full sheaves conversion, which
is not fully ready yet, but they are useful on their own.

Link: https://lore.kernel.org/all/20251105-sheaves-cleanups-v1-0-b8218e1ac7ef@suse.cz/ [1]
2025-11-25 14:27:34 +01:00
Linus Walleij
ebd61482ff pinctrl: cix: Fix obscure dependency
When compile-testing for UM-Linux the build fails because
we don't have IOMEM.

Add an explicit dependency.

Fixes: 920500c5fe ("pinctrl: cix: Add pin-controller support for sky1")
Reviewed-by: Peter Chen <peter.chen@cixtech.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2025-11-25 14:26:07 +01:00
Ville Syrjälä
7c373b3bd0
drm/i915/psr: Reject async flips when selective fetch is enabled
The selective fetch code doesn't handle asycn flips correctly.
There is a nonsense check for async flips in
intel_psr2_sel_fetch_config_valid() but that only gets called
for modesets/fastsets and thus does nothing for async flips.

Currently intel_async_flip_check_hw() is very unhappy as the
selective fetch code pulls in planes that are not even async
flips capable.

Reject async flips when selective fetch is enabled, until
someone fixes this properly (ie. disable selective fetch while
async flips are being issued).

Cc: stable@vger.kernel.org
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patch.msgid.link/20251105171015.22234-1-ville.syrjala@linux.intel.com
Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
(cherry picked from commit a5f0cc8e0c)
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
2025-11-25 08:24:33 -05:00
Matthew Wilcox (Oracle)
b55590558f slab: Remove unnecessary call to compound_head() in alloc_from_pcs()
Each page knows which node it belongs to, so there's no need to
convert to a folio.

Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Reviewed-by: Harry Yoo <harry.yoo@oracle.com>
Link: https://patch.msgid.link/20251124142329.1691780-1-willy@infradead.org
Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
2025-11-25 14:13:34 +01:00
Arnd Bergmann
af058d5f32 Reset controller updates for v6.19
* Add support for LAN969x, eic770 and RZ/G3S reset controllers,
   for the RZ/G3S USB-PHY reset controller, and for the remaining
   TH1520 reset controllers.
 * Drop legacy reset control lookup code.
 * Include linux/bits.h from linux/reset.h to make it self-contained.
 -----BEGIN PGP SIGNATURE-----
 
 iI0EABYKADUWIQRRO6F6WdpH1R0vGibVhaclGDdiwAUCaR7dWBcccC56YWJlbEBw
 ZW5ndXRyb25peC5kZQAKCRDVhaclGDdiwGt7AP4yW1pZPhA5Ha1uSwfFw3PW6T82
 A9wES62adALQGKldGQD+Pn1bxn5EyaIppyam9CIA5jdYIVsUdzx8PzWC40IrkwY=
 =kLZ0
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmklqwQACgkQmmx57+YA
 GNnrYhAAlpOyQMAT4aEJgoHhgIMPFKcdEpXer0+IRntv5m7QS/dw7xs1jgD0X1Rk
 PaLbFUb+YkY2UbYHYjir0pjEXaZNzpZ5qAd3VkKKhWq0uxYL+RbdvFM1b6HaPj0n
 Y0wbttDxCeFp/bqpg9w8mC3iMKHShL7Fz7126brRC6tFBba2yzDbf2zHbTgOVKUF
 ouTYVmnMdEn0FbO6Hy89BYRUHPS2RfcrXwio/AW31YvLLVTmPA3nirk/T4DbchjB
 Jsxu2UWVY2dYQu+/kvzCum5bMnyTThGABHElPj79uLXK5tI5ma98SXOj4t+NLBJh
 wvlc8ng/he9D2xxXDDHHSXRtHdm9ybZbO+gROh8szPGYkGUkxLMfEwcpcuXdnM65
 pRzyFhzzc4Yg0K0Sv9uQtFXY8iMR7V/ErXswRorOz70iDDjnqEYxmQjn1meNtXsC
 AhGo1usjkGUhFEzR615Uf1fyoxrat49tv1z9IJtREIRfsOZ2q+5GvbnfzQoGwxgT
 7rTTWtTd2ylWVmMfmJTggs5JBqS2OhanvBhb1R01JZj6e7L4RPaKPijF5gK3SbZH
 MfitrPMWvE/dd2cm684yUZlNImzYEIzZYOcvWrNgrRwobjWZYEKXZAbDSHMEctfj
 FvzJ/ZzWvAwkxiY1dT+EqYgxuAyjNS04cGGSRjyLkzfqR83V7GE=
 =2wzN
 -----END PGP SIGNATURE-----

Merge tag 'reset-for-v6.19' of https://git.pengutronix.de/git/pza/linux into soc/drivers

Reset controller updates for v6.19

* Add support for LAN969x, eic770 and RZ/G3S reset controllers,
  for the RZ/G3S USB-PHY reset controller, and for the remaining
  TH1520 reset controllers.
* Drop legacy reset control lookup code.
* Include linux/bits.h from linux/reset.h to make it self-contained.

* tag 'reset-for-v6.19' of https://git.pengutronix.de/git/pza/linux:
  Documentation: reset: Remove reset_controller_add_lookup()
  reset: fix BIT macro reference
  reset: rzg2l-usbphy-ctrl: Fix a NULL vs IS_ERR() bug in probe
  reset: th1520: Support reset controllers in more subsystems
  reset: th1520: Prepare for supporting multiple controllers
  dt-bindings: reset: thead,th1520-reset: Add controllers for more subsys
  dt-bindings: reset: thead,th1520-reset: Remove non-VO-subsystem resets
  reset: remove legacy reset lookup code
  clk: davinci: psc: drop unused reset lookup
  reset: rzg2l-usbphy-ctrl: Add support for RZ/G3S SoC
  reset: rzg2l-usbphy-ctrl: Add support for USB PWRRDY
  dt-bindings: reset: renesas,rzg2l-usbphy-ctrl: Document RZ/G3S support
  reset: eswin: Add eic7700 reset driver
  dt-bindings: reset: eswin: Documentation for eic7700 SoC
  reset: sparx5: add LAN969x support
  dt-bindings: reset: microchip: Add LAN969x support

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-11-25 14:11:21 +01:00
Jisheng Zhang
23ac52a4a2 gpio: zynq: Use modern PM macros
Use the modern PM macros for the suspend and resume functions to be
automatically dropped by the compiler when CONFIG_PM or
CONFIG_PM_SLEEP are disabled, without having to use __maybe_unused

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
Link: https://lore.kernel.org/r/20251124002105.25429-15-jszhang@kernel.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
2025-11-25 14:10:07 +01:00
Jisheng Zhang
dbedf93d10 gpio: xilinx: Use modern PM macros
Use the modern PM macros for the suspend and resume functions to be
automatically dropped by the compiler when CONFIG_PM or
CONFIG_PM_SLEEP are disabled, without having to use __maybe_unused

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
Link: https://lore.kernel.org/r/20251124002105.25429-14-jszhang@kernel.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
2025-11-25 14:10:07 +01:00
Jisheng Zhang
353fdaebdc gpio: xgene: Use modern PM macros
Use the modern PM macros for the suspend and resume functions to be
automatically dropped by the compiler when CONFIG_PM or
CONFIG_PM_SLEEP are disabled, without having to use __maybe_unused

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
Link: https://lore.kernel.org/r/20251124002105.25429-13-jszhang@kernel.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
2025-11-25 14:10:07 +01:00
Jisheng Zhang
46e90d3924 gpio: uniphier: Use modern PM macros
Use the modern PM macros for the suspend and resume functions to be
automatically dropped by the compiler when CONFIG_PM or
CONFIG_PM_SLEEP are disabled, without having to use __maybe_unused

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
Link: https://lore.kernel.org/r/20251124002105.25429-12-jszhang@kernel.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
2025-11-25 14:10:07 +01:00
Jisheng Zhang
75ff16234b gpio: tqmx86: Use modern PM macros
Use the modern PM macros for the suspend and resume functions to be
automatically dropped by the compiler when CONFIG_PM or
CONFIG_PM_SLEEP are disabled, without having to use __maybe_unused

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20251124002105.25429-11-jszhang@kernel.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
2025-11-25 14:10:07 +01:00
Jisheng Zhang
0ed358a87d gpio: pch: Use modern PM macros
Use the modern PM macros for the suspend and resume functions to be
automatically dropped by the compiler when CONFIG_PM or
CONFIG_PM_SLEEP are disabled, without having to use __maybe_unused

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Acked-by: Andy Shevchenko <andy@kernel.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
Link: https://lore.kernel.org/r/20251124002105.25429-10-jszhang@kernel.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
2025-11-25 14:10:07 +01:00
Jisheng Zhang
2b3c8bd8e1 gpio: omap: Use modern PM macros
Use the modern PM macros for the suspend and resume functions to be
automatically dropped by the compiler when CONFIG_PM or
CONFIG_PM_SLEEP are disabled, without having to use __maybe_unused

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
Link: https://lore.kernel.org/r/20251124002105.25429-9-jszhang@kernel.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
2025-11-25 14:10:07 +01:00
Jisheng Zhang
07a251bfe3 gpio: msc313: Use modern PM macros
Use the modern PM macros for the suspend and resume functions to be
automatically dropped by the compiler when CONFIG_PM or
CONFIG_PM_SLEEP are disabled, without having to use __maybe_unused

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
Link: https://lore.kernel.org/r/20251124002105.25429-8-jszhang@kernel.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
2025-11-25 14:10:06 +01:00
Jisheng Zhang
a92f492a14 gpio: mlxbf2: Use modern PM macros
Use the modern PM macros for the suspend and resume functions to be
automatically dropped by the compiler when CONFIG_PM or
CONFIG_PM_SLEEP are disabled, without having to use __maybe_unused

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
Link: https://lore.kernel.org/r/20251124002105.25429-7-jszhang@kernel.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
2025-11-25 14:10:06 +01:00
Jisheng Zhang
1f37a9f7d1 gpio: ml-ioh: Use modern PM macros
Use the modern PM macros for the suspend and resume functions to be
automatically dropped by the compiler when CONFIG_PM or
CONFIG_PM_SLEEP are disabled, without having to use __maybe_unused

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Acked-by: Andy Shevchenko <andy@kernel.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
Link: https://lore.kernel.org/r/20251124002105.25429-6-jszhang@kernel.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
2025-11-25 14:10:06 +01:00
Jisheng Zhang
b40c4dacf4 gpio: pl061: Use modern PM macros
Use the modern PM macros for the suspend and resume functions to be
automatically dropped by the compiler when CONFIG_PM or
CONFIG_PM_SLEEP are disabled, without having to use #ifdef guards.

This has the advantage of always compiling these functions in,
independently of any Kconfig option. Thanks to that, bugs and other
regressions are subsequently easier to catch.

The pl061_context_save_regs structure is always embedded into struct
pl061 to simplify code, so this brings a tiny 8 bytes memory overhead
for !CONFIG_PM_SLEEP.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
Link: https://lore.kernel.org/r/20251124002105.25429-5-jszhang@kernel.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
2025-11-25 14:10:06 +01:00
Jisheng Zhang
2557b1f4f2 gpio: htc-egpio: Use modern PM macros
Use the modern PM macros for the suspend and resume functions to be
automatically dropped by the compiler when CONFIG_PM or
CONFIG_PM_SLEEP are disabled, without having to use #ifdef guards.

This has the advantage of always compiling these functions in,
independently of any Kconfig option. Thanks to that, bugs and other
regressions are subsequently easier to catch.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
Link: https://lore.kernel.org/r/20251124002105.25429-4-jszhang@kernel.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
2025-11-25 14:10:06 +01:00
Jisheng Zhang
56f3a6d753 gpio: brcmstb: Use modern PM macros
Use the modern PM macros for the suspend and resume functions to be
automatically dropped by the compiler when CONFIG_PM or
CONFIG_PM_SLEEP are disabled, without having to use #ifdef guards.

This has the advantage of always compiling these functions in,
independently of any Kconfig option. Thanks to that, bugs and other
regressions are subsequently easier to catch.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Acked-by: Doug Berger <opendmb@gmail.com>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20251124002105.25429-3-jszhang@kernel.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
2025-11-25 14:10:06 +01:00
Jisheng Zhang
3f19e57cbf gpio: dwapb: Use modern PM macros
Use the modern PM macros for the suspend and resume functions to be
automatically dropped by the compiler when CONFIG_PM or
CONFIG_PM_SLEEP are disabled, without having to use #ifdef guards.

This has the advantage of always compiling these functions in,
independently of any Kconfig option. Thanks to that, bugs and other
regressions are subsequently easier to catch.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
Link: https://lore.kernel.org/r/20251124002105.25429-2-jszhang@kernel.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
2025-11-25 14:10:06 +01:00
Arnd Bergmann
73147be308 STM32 Firewall bus for v6.19, round 1
Highlights:
 ----------
 
 The STM32MP21x platforms have a slightly different RIFSC. Add support
 for these platforms.
 
 Also, the RIF is a complex firewall framework which can be tricky
 to debug. To facilitate the latter, add a debugfs entry that can
 be used to display the whole RIFSC firewall configuration at runtime.
 -----BEGIN PGP SIGNATURE-----
 
 iQJRBAABCgA7FiEEctl9+nxzUSUqdELdf5rJavIecIUFAmkcMMkdHGFsZXhhbmRy
 ZS50b3JndWVAZm9zcy5zdC5jb20ACgkQf5rJavIecIVkwhAAgNYbrcOZUlZCj/Nb
 b1WdUs8U8EjGmJmN8lCAbLbngTf4oU8nRA76W7ks2jpkUArC01QqXaSRl6lVQlgd
 BBsuTvnbrI7Z+ZkIpUkW5G2gAVlNHUcseBdwXAo6IdNxUz/Gs18Sanyoced7e/nW
 6v5TL/7r2r92KP7T1xzqoaPnYkdnDSv77x8k6mJQUe3s0PCWfawCVrv40fd0nstv
 hhjp7BvvRBTseh2mGbmxlrfHsJnkFcc2w68uvYVzWbPAD3a9GgFN4+hLfVqIEHMT
 u5VG9JCRQp+yTuZAkDc1KtV3MZKwCdSyIJAd65Dl7BiwQuezmHrG4V73kpWqHk1r
 4xcNdNMyDsc25I49rzX/j6qM7Ut0xLGvyPaVbykDmgCeKI4bpa+KwQ8dGNe1LJR2
 hIZrML+CBxUZG8RbFbKeRzFHPDKpw4u++YLkz0irf9RBwp4bZ2V8o2SXWEOkbwqH
 x2j9WRY8nZVOz4yv/Li1YVnlQnwLOYoDy24OFcZoGcV+sf9N4W2CUOZAv4Y+jA5Z
 U03XBqXmd0h7PEcImNwQCxXP4dPpR2mAnkyRKoFYmT4AYWBki84f175XniO3gUU7
 UE+DTcvyggyMrGZyQe9kwisEKynEMngXDLngcIavCgtn7bgHUxb6BCkg/4IwDCiG
 z35TuWoOE24c00svLEniAlE0BR0=
 =FwnG
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmklqZUACgkQmmx57+YA
 GNlj0Q/9GqAo4uU7Bh0mPPEw30NkAdub2IsjFTNd6WHIzYUuvpYllI08Sw+OO2Dz
 u82VEsvZL2AlzO1yzPd1QnYreFNHwhmYtI/If59vwrRe1Lbu8IhI7dntmOqsvDgo
 6mukM4pLpmB+M4lHlIf9UIwJL/s1jN611aoAoL4WxwFWT+qVi7J8wMJk2prO/Thk
 CKqk3gERAe8vL9EoOWHqWwP/1wDf0qELL8IxeOHkq4ugKp8l2IedNv3fZMs3oCKS
 UrQpHjF2421OmL5MFNXLQZcRXuNq8yCWRdNkXGgzyCWY6ziHiRhPowTEl3RNJ+15
 hKmWtw+7Kt97umb0ExXdkT9wfLihQQprsFtFAnpeIRDQEKOkdxiJTudQwbIStFHP
 7ZqXogdsk+X2be0fsnmDOT9RMsciqVo0KbNrNBidR+hPCBdJUxpGW88PtgfCFLxG
 XzC1KX/hJnsBVLEnWlMmENP1zcUtDIJh8R1ZL8CU3BdTjKt6YO6RrHFrUykFkKEV
 rxu9CuByAnxzYZnnyrZlrMedcb3icFq5MdDq1xHXXgh3Vqw0uQyHjKrTzsNHF1PS
 vnriSXO94Jt3jlyjBUmUY8Ceu/OQeirBm+I2OSBwQ4iIPeegJFGFV+EhFbvH49EM
 zbEgEhKSEHjO0j4Tu5I/63QKQo9bWNTmNXynnJN2SxqUE2XOE18=
 =jdGG
 -----END PGP SIGNATURE-----

Merge tag 'stm32-bus-firewall-for-v6.19-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32 into soc/drivers

STM32 Firewall bus for v6.19, round 1

Highlights:
----------

The STM32MP21x platforms have a slightly different RIFSC. Add support
for these platforms.

Also, the RIF is a complex firewall framework which can be tricky
to debug. To facilitate the latter, add a debugfs entry that can
be used to display the whole RIFSC firewall configuration at runtime.

* tag 'stm32-bus-firewall-for-v6.19-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32:
  bus: rifsc: add debugfs entry to dump the firewall configuration
  dt-bindings: bus: add stm32mp21 RIFSC compatible

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-11-25 14:04:50 +01:00