Commit graph

1,481,701 commits

Author SHA1 Message Date
Jingyi Wang
0ec167625b remoteproc: core: cancel crash_handler work in rproc_add() error path
Ensure crash_handler work is cancelled before tearing down rproc resources
to avoid accessing freed memory.

Signed-off-by: Jingyi Wang <jingyi.wang@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20260623-rproc-attach-issue-v3-3-8e24310707ce@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2026-07-15 12:18:05 -05:00
Jingyi Wang
f44ae8ce15 remoteproc: qcom: Check subdev start status in rproc_stop()
For rproc that doing attach, rproc_start_subdevices() is called only when
attach successfully. If rproc_report_crash() is called in the attach
function, rproc_boot_recovery()->rproc_stop()->rproc_stop_subdevices()->
glink_subdev_stop() could be called and cause NULL pointer dereference:

 Unable to handle kernel NULL pointer dereference at virtual address 0000000000000300
 Mem abort info:
 ...
 pc : qcom_glink_smem_unregister+0x14/0x48 [qcom_glink_smem]
 lr : glink_subdev_stop+0x1c/0x30 [qcom_common]
 ...
 Call trace:
  qcom_glink_smem_unregister+0x14/0x48 [qcom_glink_smem] (P)
  glink_subdev_stop+0x1c/0x30 [qcom_common]
  rproc_stop+0x58/0x17c
  rproc_trigger_recovery+0xb0/0x150
  rproc_crash_handler_work+0xa4/0xc4
  process_scheduled_works+0x18c/0x2d8
  worker_thread+0x144/0x280
  kthread+0x124/0x138
  ret_from_fork+0x10/0x20
 Code: a9be7bfd 910003fd a90153f3 aa0003f3 (b9430000)
 ---[ end trace 0000000000000000 ]---

Introduce "subdevs_started" flag to indicate rproc_start_subdevices() has
been called successfully. Ensure subdevices are only stopped if they have
been started.

Signed-off-by: Jingyi Wang <jingyi.wang@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20260623-rproc-attach-issue-v3-2-8e24310707ce@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2026-07-15 12:18:05 -05:00
Jingyi Wang
026a3fada4 remoteproc: core: Attach rproc asynchronously in rproc_add() path via schedule_work()
Unlike the remoteproc firmware load path where rproc_add() call
rproc_auto_boot_callback() asynchronously and ignores the return value of
rproc_boot(), the attach path calls rproc_boot() synchronously and
propagates its return value back to rproc_add(). This means a failure
during rproc_attach() causes rproc_add() to fail and triggers resource
release, removing the remoteproc from sysfs and making it unavailable for
recovery or further boot attempts.

Align the remoteproc attach path with the firmware load path by
introducing attach_work and scheduling rproc_boot() asynchronously via
schedule_work(). This keeps the remoteproc registered and available in
sysfs even if the initial attach attempt fails, and avoids blocking
rproc_add() on the attach result.

Signed-off-by: Jingyi Wang <jingyi.wang@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20260623-rproc-attach-issue-v3-1-8e24310707ce@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2026-07-15 12:18:05 -05:00
Yijie Yang
3d88927742 dt-bindings: remoteproc: qcom,sm8550-pas: Add Qualcomm Maili ADSP and CDSP
Document compatible strings for the ADSP and CDSP Peripheral Authentication
Services on the Qualcomm Maili SoC. Both are compatible with the Qualcomm
SM8550 PAS and can fallback to SM8550 except for one additional interrupt
("shutdown-ack"). For CDSP, similar to Kaanapali, "global_sync_mem" is
not managed by the kernel.

Assisted-by: Claude:claude-opus-4-6
Signed-off-by: Yijie Yang <yijie.yang@oss.qualcomm.com>
Acked-by: Rob Herring (Arm) <robh@kernel.org>
Acked-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20260615-remoteproc-v1-1-67721b4b052a@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2026-07-15 12:18:05 -05:00
Abel Vesa
bb7c5d6f5b remoteproc: qcom: q6v5: Make handover IRQ one-shot
The handover interrupt is expected to be consumed once during each prepare
cycle. If the remote processor keeps signalling handover after the first
event, qcom_q6v5 currently logs the duplicate interrupt repeatedly while
leaving the IRQ enabled.

Track the handover IRQ enable state explicitly and route all handover IRQ
enable/disable operations through idempotent helpers. Request the handover
IRQ with IRQF_NO_AUTOEN so it is only enabled through the helper during
prepare. The handover handler disables it after marking handover as issued,
while unprepare disables and synchronizes it before checking whether
handover was issued.

Signed-off-by: Abel Vesa <abel.vesa@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20260612-rproc-q6v5-handover-irq-one-shot-v1-1-bb688f4446b3@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2026-07-15 12:18:05 -05:00
Uday Khare
44f4911ab8 remoteproc: qcom: Fix glink->node reference leak in qcom_add_glink_subdev
In qcom_add_glink_subdev(), the device node reference acquired via
of_get_child_by_name() is stored in glink->node. If the subsequent
kstrdup_const() allocation for glink->ssr_name fails, the function
returns early without calling of_node_put() on glink->node, leaking
the reference count.

Fix this by adding of_node_put(glink->node) on the error path before
returning.

Fixes: cd9fc8f1b3 ("remoteproc: qcom: Pass ssr_name to glink subdevice")
Signed-off-by: Uday Khare <udaykhare77@gmail.com>
Link: https://lore.kernel.org/r/20260618132054.11010-1-udaykhare77@gmail.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2026-07-15 12:18:05 -05:00
Stephan Gerhold
846baa5ab4 remoteproc: qcom_q6v5_mss: Fix MDM9607 subsystem control instance ID
On MDM9607, the modem firmware exposes the QMI subsystem control service
with instance ID 0x22 (34), as visible e.g. with qrtr-lookup:

  $ qrtr-lookup
  Service Version Instance Node  Port
       43       2       34    3     1 Subsystem control service

Currently, qcom_q6v5_mss uses ssctl_id 0x12 for all platforms. The QMI
service never shows up with this ID, leading to the following error when
trying to shutdown the modem:

  qcom-q6v5-mss 4080000.remoteproc: timeout waiting for ssctl service

Set the correct ssctl_id to allow clean shutdown of the modem firmware with
the subsystem control service. ssctl_id 0x22 is also used by other
modem-only Qualcomm platforms in qcom_q6v5_pas, such as SDX55.

Fixes: 4fe236a1d0 ("remoteproc: qcom_q6v5_mss: Add MDM9607")
Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
Reviewed-by: Mukesh Ojha <mukesh.ojha@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20260706-qcom-q6v5-mss-mdm9607-ssctl-id-v1-2-f59e728af621@linaro.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2026-07-15 12:18:04 -05:00
Stephan Gerhold
6aa64a4c89 remoteproc: qcom_q6v5_mss: Make ssctl_id configurable per platform
Currently, qcom_q6v5_mss hardcodes 0x12 as the instance ID for the
subsystem control (ssctl) QMI service. However, some platforms (e.g.
MDM9607) provide the service with a different instance ID (0x22).

Make it possible to override the ssctl_id per platform by adding it to the
platform-specific rproc_hexagon_res struct. The same pattern also exists
already inside qcom_q6v5_pas.

Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: Mukesh Ojha <mukesh.ojha@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20260706-qcom-q6v5-mss-mdm9607-ssctl-id-v1-1-f59e728af621@linaro.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2026-07-15 12:18:04 -05:00
Ananthu C V
c220006376 remoteproc: qcom: pas: add needs_tzmem flag to trigger shmbridge creation
SHM bridge creation is required to enable memory protection for both
remoteproc metadata and its memory region on Qualcomm SoCs running
non-Gunyah based Hypervisors. We currently rely on the iommu property
being present in the remoteproc nodes to detect this.

However, this doesn't cover for cases where the remoteproc does a late
attach, like SoCCP, and for remoteprocs like OOBM SS (Out of Band
Management Sub-system) that doesn't have an iommu in front of it. In the
former case, any attempt to create new mappings would fail with EEXIST
as they are already setup by the bootloader when the SoCCP is brought
out of reset, and unmapping them to create fresh mappings leads to faults
since SoCCP could have active transactions on the bus. In the latter case,
absence of iommu will be caught by the has_iommu flag, and SHM bridge
creation will be skipped.

Fix this by introducing a needs_tzmem flag which would cover for the
above edge cases by serving as an alternate trigger to the PAS helpers
to ensure that SHM bridge is established.

Signed-off-by: Ananthu C V <ananthu.cv@oss.qualcomm.com>
Reviewed-by: Mukesh Ojha <mukesh.ojha@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20260707-glymur-soccp-v5-1-053993f0c6fe@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2026-07-15 12:18:04 -05:00
Mark Harris
5caae1deee riscv: hwprobe: Avoid uninitialized read in hwprobe_get_cpus()
When cpusetsize < cpumask_size(), hwprobe_get_cpus() did not fully
initialize its copy of the cpu mask, which could cause non-deterministic
results from the riscv_hwprobe syscall on a system with more than 8 CPUs
when the supplied cpu mask is empty.  Address this by fully initializing
the cpu mask.

Fixes: e178bf146e ("RISC-V: hwprobe: Introduce which-cpus flag")
Signed-off-by: Mark Harris <mark.hsj@gmail.com>
Reviewed-by: Nam Cao <namcao@linutronix.de>
Reviewed-by: Michael Ellerman <mpe@kernel.org>
Link: https://patch.msgid.link/20260714003056.73707-1-mark.hsj@gmail.com
Signed-off-by: Paul Walmsley <pjw@kernel.org>
2026-07-15 11:12:40 -06:00
Nirmal Patel
b030905bf5 PCI: vmd: Add feature to scan BIOS-enumerated devices
Newer VMD with device ID 0x28C1 has unique settings compared to its
predecessor where BIOS enumerates the entire VMD device tree and assigns
respective configurations.

VMD configuration BAR0 carries over from GNR legacy VMD as the mechanism
to access the configuration space of the devices owned by VMD. The size
of this window is fixed at 256 MB, where each function consumes 4 KB and
every bus consumes 1 MB.

The shadow and scratchpad registers have been relocated from the VMD
configuration space to the VMD MMIO space in VMD BAR4/BAR5, otherwise
refers to as MEMBAR2 or MSI-X bar.

VMD MSI-X remapping enable/disable is no longer supported.

On this new device, simply obtain the bus hide range and shadow register
values set by BIOS and perform a bus scan.

Also refactor vmd_enable_domain().

Signed-off-by: Nirmal Patel <nirmal.patel@linux.intel.com>
Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Link: https://patch.msgid.link/20260629165025.268836-1-nirmal.patel@linux.intel.com
2026-07-15 11:53:30 -05:00
Evan Castillo
f9264ded3e README: remove out of place emdashes
This removes emdashes in the README. In other places in the README,
colons are used.

Signed-off-by: Evan Castillo <eycastio@icloud.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260627210938.85899-1-eycastio@icloud.com>
2026-07-15 10:51:29 -06:00
Seongjun Hong
bc7616fb71 docs: ABI: README: fix grammatical error
The Note describing how to write ABI documentation fields contained
a typo. "The fields should be use a simple notation" should be
"The fields should use a simple notation".

Signed-off-by: Seongjun Hong <hsj0512@snu.ac.kr>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260701125501.93170-1-hsj0512@snu.ac.kr>
2026-07-15 10:51:28 -06:00
Akira Yokosawa
83f71fbc66 docs: submitting-patches: Fix section structure around DCO
Commit 5903019b2a ("Documentation/SubmittingPatches: convert it to
ReST markup") made "DCO 1.1" a subsection under the section "Sign your
work - ...".  However, the DCO text is meant to be referenced in the
section.

Furthermore, in HTML and PDF docs, paragraphs following the DCO:

    then you just add a line saying:

        Signed-off-by: [...]

    [...]
    as it was propagated to the maintainers and ultimately to Linus, with
    the first SoB entry signalling primary authorship of a single author.

appear to belong to the DCO, rather than to "Sign your work - ..."
where it should.

In reST (and other documentation tools), once you start a subsection
under a section, there is no way to go back to the section.

Fix the section structure by making the DCO a literal block, with
indent changes made in commit 5903019b2a reverted.

While at it, fix the same issue at "Reviewer's statement of
oversight".

Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Tested-by: Randy Dunlap <rdunlap@infradead.org>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <5f320260-5cb0-42cc-949a-c92404124618@gmail.com>
2026-07-15 10:51:28 -06:00
Manuel Ebner
e6f09a8911 Documentation/kernel-parameters: fix brackets
Add a few missing ']'s and a ')'.

Signed-off-by: Manuel Ebner <manuelebner@mailbox.org>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260703080806.223782-2-manuelebner@mailbox.org>
2026-07-15 10:51:28 -06:00
Manuel Ebner
daffe1ac49 sched/Documentation: fix code
checkpatch.pl returns 'trailing statements should be on next line'
for this file. Do as told.

Signed-off-by: Manuel Ebner <manuelebner@mailbox.org>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Tested-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260703115114.229848-3-manuelebner@mailbox.org>
2026-07-15 10:51:28 -06:00
Daniel Pereira
82da0f94d4 docs: pt_BR: translate process/adding-syscalls.rst
Translate the adding-syscalls.rst document into Brazilian Portuguese
(pt_BR) to improve accessibility for native Portuguese-speaking
developers contributing to the Linux kernel ecosystem.

Signed-off-by: Daniel Pereira <danielmaraboo@gmail.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260703170552.174764-8-danielmaraboo@gmail.com>
2026-07-15 10:51:28 -06:00
Daniel Pereira
6b9d2eb70d docs: pt_BR: process: translate contribution maturity model
Translate the 'contribution-maturity-model' documentation into
Brazilian Portuguese, ensuring strict alignment with the upstream
source structure and language.

The translation covers the Open Source engagement framework proposed
by the Technical Advisory Board (TAB), detailing Levels 0 through 5
of organizational upstream maturity, community metrics, and engineer
career alignment.

Additionally, maintain strict 80-column line length restrictions
across the entire file to ensure proper Sphinx HTML rendering.

Signed-off-by: Daniel Pereira <danielmaraboo@gmail.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260703170552.174764-7-danielmaraboo@gmail.com>
2026-07-15 10:51:28 -06:00
Daniel Pereira
84278d5735 docs: pt_BR: process: translate botching-up-ioctls guide
Translate the 'botching-up-ioctls' documentation into Brazilian
Portuguese, ensuring precise technical alignment with the upstream
source guidelines.

The translation covers critical driver-private API design concepts,
including fixed-sized integers, structure padding, error path
validation rules, and handling asynchronous hardware timeouts.

Signed-off-by: Daniel Pereira <danielmaraboo@gmail.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260703170552.174764-6-danielmaraboo@gmail.com>
2026-07-15 10:51:28 -06:00
Daniel Pereira
4f98d97c5a docs: pt_BR: translate backporting.rst documentation
Translate the 'backporting' guide into Brazilian Portuguese, ensuring
strict alignment with the upstream content and structure.

The translation covers conflict resolution strategies, understanding git
conflict markers, and the process of submitting backports to the stable
kernel tree.

Additionally, maintain the strict 80-column line length limit across
the entire file to ensure proper Sphinx rendering.

Signed-off-by: Daniel Pereira <danielmaraboo@gmail.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260703170552.174764-5-danielmaraboo@gmail.com>
2026-07-15 10:51:28 -06:00
Daniel Pereira
e1f6f36d9a docs: pt_BR: Add translation for applying-patches and update index
Translate the 'applying-patches' documentation into Brazilian Portuguese,
ensuring alignment with the upstream structural guidelines.

Additionally, add the translated document to the main process index
toctree to integrate it into the documentation build tree.

Signed-off-by: Daniel Pereira <danielmaraboo@gmail.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260703170552.174764-4-danielmaraboo@gmail.com>
2026-07-15 10:51:28 -06:00
Daniel Pereira
ae24a87a3f docs: pt_BR: process: translate 7.AdvancedTopics and 8.Conclusion
Translate the "Advanced topics" and "Conclusion" sections into Brazilian
Portuguese, creating the 7.AdvancedTopics.rst and 8.Conclusion.rst
documents, and updating development-process.rst to include them.

This translation covers patch management practices with Git, community
guidelines for patch review, and the closing overview of the kernel
development cycle.

Ensure all text conforms to the strict 80-column line length limit
to maintain Sphinx rendering alignment.

Signed-off-by: Daniel Pereira <danielmaraboo@gmail.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260703170552.174764-3-danielmaraboo@gmail.com>
2026-07-15 10:51:28 -06:00
Daniel Pereira
e6ad39d809 docs: pt_BR: process: Translate the patch followthrough guide
Translates the section 6.followthrough.rst to Brazilian Portuguese
for the process directory.

Signed-off-by: Daniel Pereira <danielmaraboo@gmail.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260703170552.174764-2-danielmaraboo@gmail.com>
2026-07-15 10:51:28 -06:00
Iwata Koki
acfee2292b Documentation: admin-guide: fix a doc for efi_no_storage_paranoia the "5KB" instead of the "50%"
The documentation for 'efi_no_storage_paranoia' incorrectly states
the kernel cannot use "more than 50%" of the EFI variable storage.

This percentage-based explanation has been outdated since commit
f8b8404337 ("Modify UEFI anti-bricking code") introduced a fixed 5KB
minimum reserve threshold (EFI_MIN_RESERVE) in
arch/x86/platform/efi/quirks.c. At that time, the documentation was not
updated to reflect this change.

Update the documentation to reflect the "5KB" instead of the "50%".

Signed-off-by: Koki Iwata <iwata.koki@fujitsu.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260706050534.1653916-1-iwata.koki@fujitsu.com>
2026-07-15 10:51:28 -06:00
Liang Luo
75f7551b07 sched/doc: Fix stale em_pd_energy() reference in sched-energy
The scheduler energy-aware placement documentation refers to the
em_pd_energy() API, which was renamed to em_cpu_energy() in commit
f0b5694791 ("PM / EM: change name of em_pd_energy to em_cpu_energy").
Update the reference to the current name.

em_cpu_energy() is the EM helper that compute_energy() in
kernel/sched/fair.c calls to estimate a performance domain's energy
consumption (defined in include/linux/energy_model.h).

Sync the zh_CN translation, which carries the same stale name.

Signed-off-by: Liang Luo <luoliang@kylinos.cn>
Reviewed-by: Dongliang Mu <dzm91@hust.edu.cn>
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Reviewed-by: Alex Shi <alexs@kernel.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260707085335.2942128-1-luoliang@kylinos.cn>
2026-07-15 10:51:28 -06:00
Manuel Ebner
4b13911a46 docs: dma-api: remove needless bracket
Remove single ')'.

Signed-off-by: Manuel Ebner <manuelebner@mailbox.org>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260708194821.357548-2-manuelebner@mailbox.org>
2026-07-15 10:51:28 -06:00
Manuel Ebner
2899b92260 errseq: add missing bracket
Add missing ')' to nested functions of code block.

Signed-off-by: Manuel Ebner <manuelebner@mailbox.org>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260709092900.380694-1-manuelebner@mailbox.org>
2026-07-15 10:51:28 -06:00
Manuel Ebner
703cc3d342 Docs: list: Fix bracket
Add missing ')' to sentence.

Signed-off-by: Manuel Ebner <manuelebner@mailbox.org>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260709115008.387869-3-manuelebner@mailbox.org>
2026-07-15 10:51:27 -06:00
Manuel Ebner
8ff722efae docs: packing: fix brackets
Add two ')' to nested functions in code block.

Fixes: a9ad2a8dfb ("lib: packing: document recently added APIs")
Signed-off-by: Manuel Ebner <manuelebner@mailbox.org>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260710060346.417669-2-manuelebner@mailbox.org>
2026-07-15 10:51:27 -06:00
Jonathan Corbet
9b9fc6ab97 Revert "docs: allow inline literals in paragraphs to wrap to prevent overflow"
This reverts commit f2679ac773.

This change causes truly unreadable breaking of literal strings in a number
of settings.

Reported-by: Daniel Lundberg Pedersen <dlp@qtec.com>
Link: https://lore.kernel.org/all/c542aaf7-6a40-4730-8bd6-208c9fe932d5@qtec.com
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2026-07-15 10:51:27 -06:00
Manuel Ebner
7e35a46588 Documentation: locking.rst: update deprecated function
replace strcpy() with strscpy() as suggested in deprecated.rst

Signed-off-by: Manuel Ebner <manuelebner@mailbox.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260531175452.272136-2-manuelebner@mailbox.org>
2026-07-15 10:51:27 -06:00
Amanda Corrêa
285257a806 docs: pt_BR: update netdevsim section in maintainer-netdev.rst
Update the Brazilian Portuguese translation of maintainer-netdev.rst
to align with the latest English version.

    Key changes include:
    - Updated the netdevsim section to reflect upstream changes
    - Added guidance on netdevsim-based API testing
    - Fixed minor spacing and formatting issues

Signed-off-by: Amanda Corrêa <amandacorreasilvax@gmail.com>
Acked-by: Daniel Pereira <danielmaraboo@gmail.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260616005234.11036-1-amandacorreasilvax@gmail.com>
2026-07-15 10:51:27 -06:00
Daniel Pereira
29d38431c5 docs: pt_BR: Translate patch posting documentation
Translate the chapter regarding the process of formatting and sending
patches ("5.Posting.rst") into Brazilian Portuguese.

Also, update the main index in "development-process.rst" to include
the newly translated document into the documentation tree.

Signed-off-by: Daniel Pereira <danielmaraboo@gmail.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260614235044.42810-3-danielmaraboo@gmail.com>
2026-07-15 10:51:27 -06:00
Daniel Pereira
a5d47da390 docs: pt_BR: Translate 4.coding.rst into Portuguese
Translate the chapter regarding coding standards and patch formatting
rules ("4.Coding.rst") into Brazilian Portuguese.

This translation helps Portuguese-speaking developers better understand
the core guidelines required for kernel code contributions.

Signed-off-by: Daniel Pereira <danielmaraboo@gmail.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260614235044.42810-2-danielmaraboo@gmail.com>
2026-07-15 10:51:27 -06:00
Coiby Xu
c2d0e81cb6 Documentation: dev-tools: scripts/container prefers Podman
Obviously scripts/container prefers Podman over Docker. Putting podman
before docker also makes it consistent with following parts of the doc
and the help text of the tool.

Signed-off-by: Coiby Xu <coiby.xu@gmail.com>
Reviewed-by: Guillaume Tucker <gtucker@gtucker.io>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260624013850.1853171-1-coiby.xu@gmail.com>
2026-07-15 10:51:27 -06:00
Yousef Alhouseen
b68f29353e docs: kdoc: fix troff output description typo
Fix a typo in the ManFormat documentation string that describes the
generated troff title header fields.

Signed-off-by: Yousef Alhouseen <alhouseenyousef@gmail.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260624122448.4853-1-alhouseenyousef@gmail.com>
2026-07-15 10:51:27 -06:00
Randy Dunlap
6c502df8b6 Docs: SMP: add an SMP docbook chapter
Add SMP primitives to the core-api documentation.

Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Acked-by: Thomas Gleixner <tglx@kernel.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260625210331.1050915-1-rdunlap@infradead.org>
2026-07-15 10:51:27 -06:00
Randy Dunlap
887cf4c5e8 Docs: conf.py: fix typos in comments
Change "variabled" to "variables".
Change "relative patch" to "relative path".

Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Reviewed-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260626005248.1121464-1-rdunlap@infradead.org>
2026-07-15 10:51:27 -06:00
Zenghui Yu
711719631f docs: pagemap: fix flags location, member name and sample code
The userland visible page flags (KPF_*) were initially moved to
include/linux/kernel-page-flags.h in commit 1a9b5b7fe0 ("mm: export
stable page flags"), and later moved to
include/uapi/linux/kernel-page-flags.h in commit 607ca46e97 ("UAPI:
(Scripted) Disintegrate include/linux").  Update the doc to reflect the
current location of these flags.

The member @walk_end of struct pm_scan_arg {} was wrongly written as
"end_walk".

The first sample code of the PAGEMAP_SCAN ioctl wrongly used the
PM_SCAN_CHECK_WPASYNC flag twice, instead of the PM_SCAN_WP_MATCHING flag.
The second one included the wrong category in the required mask -
PAGE_IS_FILE should be used instead of PAGE_IS_SWAPPED as per the
intention.

Fix them all together.

Signed-off-by: Zenghui Yu <zenghui.yu@linux.dev>
Reviewed-by: Lorenzo Stoakes <ljs@kernel.org>
Reviewed-by: SeongJae Park <sj@kernel.org>
Acked-by: David Hildenbrand (Arm) <david@kernel.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260626162710.25844-1-zenghui.yu@linux.dev>
2026-07-15 10:51:27 -06:00
Manuel Ebner
d1bb650229 Documentation: admin-guide: fix brackets and translation issue
Add missing ']' and replace 'neuer Name' with 'new Name'.

Signed-off-by: Manuel Ebner <manuelebner@mailbox.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260629110812.69420-2-manuelebner@mailbox.org>
2026-07-15 10:51:27 -06:00
Manuel Ebner
8472415b2e docs: kernel-hacking: fix typo
'GP_KERNEL' -> 'GFP_KERNEL'
Remove trailing '`' without clear purpose

Signed-off-by: Manuel Ebner <manuelebner@mailbox.org>
Reviewed-by: SJ Park <sj@kernel.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260629152912.86500-2-manuelebner@mailbox.org>
2026-07-15 10:51:27 -06:00
Rafael J. Wysocki
d4232e1c79 PNP: ACPI: Stop using acpi_device_name()
Since acpi_device_name() checked by pnpacpi_add_device() is never
populated, its length is always zero and the codition checking it
is always false.

Accordingly, drop that condition and use acpi_device_bid(device) for
setting dev->name in pnpacpi_add_device() unconditionally.

No intentional functional impact.

This will facilitate the removal of device_name from struct
acpi_device_pnp in the future.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://patch.msgid.link/23191780.EfDdHjke4D@rafael.j.wysocki
2026-07-15 18:08:37 +02:00
Rafael J. Wysocki
d215a3b2fe ACPI: PAD: xen: Stop setting acpi_device_name/class()
The driver sets acpi_device_name() and acpi_device_class() which are
never read afterward, so make it stop doing that and drop the symbols
defined specifically for this purpose.

No intentional functional impact.

This will facilitate the removal of device_name and device_class from
struct acpi_device_pnp in the future.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: Juergen Gross <jgross@suse.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://patch.msgid.link/2384190.iZASKD2KPV@rafael.j.wysocki
2026-07-15 18:07:04 +02:00
Rafael J. Wysocki
ad5a796b9e platform/loongarch: laptop: Stop setting acpi_device_class()
The driver populates acpi_device_class() which is never read afterward,
so make it stop doing that and drop the symbol defined specifically for
this purpose.

No intentional functional impact.

This will facilitate the removal of device_class from struct
acpi_device_pnp in the future.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://patch.msgid.link/2444678.ElGaqSPkdT@rafael.j.wysocki
2026-07-15 18:05:53 +02:00
Nathan Chancellor
c1f3e770ee fortify: Disable -Wstringop-overread in tests
clang recently added support for -Wstringop-overread [1], which is on by
default like -Wfortify-source. This breaks the usage of -Werror in the
fortify tests, resulting in the following false positive warnings in the
kernel build:

  warning: unsafe memcmp() usage lacked '__read_overflow2' warning in lib/test_fortify/read_overflow2-memcmp.c
  warning: unsafe memcmp() usage lacked '__read_overflow' warning in lib/test_fortify/read_overflow-memcmp.c
  warning: unsafe memchr() usage lacked '__read_overflow' warning in lib/test_fortify/read_overflow-memchr.c

Examining the fortify test logs shows a warning like the following in
each of the failed logs:

  In file included from lib/test_fortify/read_overflow2-memcmp.c:5:
  lib/test_fortify/test_fortify.h:34:2: error: 'memcmp' reading 17 bytes from a region of size 16 [-Werror,-Wstringop-overread]
     34 |         TEST;
        |         ^
  lib/test_fortify/read_overflow2-memcmp.c:3:2: note: expanded from macro 'TEST'
      3 |         memcmp(large, small, sizeof(small) + 1)
        |         ^
  1 error generated.

Disable -Wstringop-overread for the fortify tests, as it defeats the
purpose of testing the Linux specific implementation of fortify, like
-Wfortify-source.

Cc: stable@vger.kernel.org
Closes: https://github.com/ClangBuiltLinux/linux/issues/2168
Link: 86f2e71cb8 [1]
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Link: https://patch.msgid.link/20260623-fix-test_fortify-for-clang-stringop-overread-v1-1-15ee8342a953@kernel.org
Signed-off-by: Kees Cook <kees@kernel.org>
2026-07-15 09:00:11 -07:00
Shengjiu Wang
0b604e886e
ASoC: bt-sco: fix duplicate DAPM widget names for wideband DAI
The bt-sco-pcm-wb DAI uses the same stream_name strings as bt-sco-pcm
("Playback" and "Capture"). This causes duplicate DAPM AIF widget
names within the same component, leading to debugfs warnings:

  debugfs: 'Playback' already exists in 'dapm'
  debugfs: 'Capture' already exists in 'dapm'

Give the wideband DAI distinct stream names ("WB Playback" and
"WB Capture") and add corresponding DAPM AIF widgets and routes for
them.

Fixes: 5947e1b499 ("ASoC: bt-sco: extend rate and add a general compatible string")
Assisted-by: VeroCoder:claude-sonnet-4-5
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Link: https://patch.msgid.link/20260715100620.1387159-1-shengjiu.wang@oss.nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2026-07-15 16:55:47 +01:00
Bartosz Golaszewski
1226304062 MAINTAINERS: add myself as reviewer of software node support
I've been working extensively on software nodes lately and introduced
some changes. Add myself as reviewer so that I can help review any new
proposed changes.

Acked-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
Link: https://patch.msgid.link/20260713-swnode-fw-devlink-v4-4-d4f2dee27ad9@oss.qualcomm.com
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
2026-07-15 17:47:16 +02:00
Bartosz Golaszewski
eecba59787 software node: add kunit tests for fw_devlink support
Add a kunit test suite for fw_devlink support for software nodes.

Most cases call add_links() directly and inspect the resulting fwnode
supplier/consumer lists: a single reference, multiple references, a
reference to an unregistered node, a "remote-endpoint" reference and a
reference array. The last case is end-to-end - it registers real consumer
and supplier platform devices together with their drivers, adds the
consumer first and checks that fw_devlink defers its probe until the
supplier has been bound.

Acked-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Tested-by: David Gow <david@davidgow.net>
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
Link: https://patch.msgid.link/20260713-swnode-fw-devlink-v4-3-d4f2dee27ad9@oss.qualcomm.com
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
2026-07-15 17:47:16 +02:00
Bartosz Golaszewski
37e5866759 software node: add fw_devlink support
Software nodes can be used to describe supplier-consumer relationships
between devices they represent using reference property entries. Unlike
for OF-nodes, driver core cannot yet use these references to create a
probe order that avoids needless probe deferrals on missing providers.

Implement software_node_add_links() modelled on of_fwnode_add_links().
For every DEV_PROP_REF property we resolve each referenced supplier and
create an fwnode link from the node to it. The driver core later promotes
these to device links and defers the consumer until the suppliers are
ready.

There's no allowlist like the one DT needs - devicetree phandles appear
in plenty of non-supplier contexts, but a software node only carries a
reference property when its author explicitly points at another node, so
we treat every reference as an intentional supplier dependency and link
all of them. Graph "remote-endpoint" references are skipped for now: they
go 2-ways between endpoint nodes and would create graph cycles without
the port-parent lifting DT does via get_con_dev(). References to
suppliers that aren't registered yet and self-references are ignored.

fw_devlink resolves the supplier device through fwnode->dev but the core
only records the owning device on the primary fwnode. When the software
node is a device's secondary fwnode, mirror the device pointer onto it in
software_node_notify() so the consumer can actually find the supplier
instead of deferring forever.

While at it: purge the fwnode links in software_node_release() now that
software nodes can own them.

Acked-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
Link: https://patch.msgid.link/20260713-swnode-fw-devlink-v4-2-d4f2dee27ad9@oss.qualcomm.com
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
2026-07-15 17:47:16 +02:00
Bartosz Golaszewski
9fdbdb5284 kunit: provide a set of fwnode-oriented helpers
Provide three new kunit-managed helpers for test cases that need to
register/create dynamic software nodes.

Reviewed-by: David Gow <david@davidgow.net>
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
Link: https://patch.msgid.link/20260713-swnode-fw-devlink-v4-1-d4f2dee27ad9@oss.qualcomm.com
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
2026-07-15 17:47:16 +02:00