Re: [PATCH v7 0/9] PCI/TSM: Core infrastructure for PCI device security (TDISP)

Alexey Kardashevskiy
2025-10-29T05:20:59Z

On 27/10/25 21:01, Aneesh Kumar K.V wrote:
> Dan Williams <dan.j.williams@intel.com> writes:
>
>> Changes since v6 [1]:
>> - Rebase on v6.18-rc2
>> - Drop @owner from 'struct pci_tsm' and lookup @ops through @tsm_dev
>> (Alexey)
>> - Drop CONFIG_PCI_IDE_STREAM_MAX, only require pci_ide_set_nr_streams()
>> for host bridge implementations that limit streams to something less
>> than topology max (Aneesh)
>> - Convert Stream index allocators from bitmaps to ida (preparation for
>> solving Stream ID uniqueness problem reported by Alexey)
>> - Misc whitespace cleanups (Jonathan)
>> - Misc kdoc fixups
>> - Fix nr_ide_streams data type, a u8 is too small
>> - Rename PCI_DOE_PROTO_ => PCI_DOE_FEATURE_ (Alexey)
>> - Rename @base to @base_tsm in 'struct pci_tsm_pf0' (Aneesh)
>> - Fix up PCIe r6.1 reference for PCIe r7.0 (Bjorn)
>> - Fix to_pci_tsm_pf0() failing to walk to the DSM device (Yilun)
>> - Add pci_tsm_fn_exit() for sub-function cleanups post DSM disconnect
>> (Aneesh)
>> - Move the samples/devsec/ implementation to a follow-on patch set
>>
>> [1]: http://lore.kernel.org/20250911235647.3248419-1-dan.j.williams@intel.com
>>
>> This set is available at
>> https://git.kernel.org/pub/scm/linux/kernel/git/devsec/tsm.git/log/?h=staging
>> (rebasing branch) or devsec-20251023 (immutable tag). That branch
>> additionally contains address association support, Stream ID uniqueness
>> compability quirk, updated samples/devsec/ (now with multifunction
>> device and simple bind support), and an updated preview of v2 of "[PATCH
>> 0/7] PCI/TSM: TEE I/O infrastructure" (fixes x86 encrypted ioremap and
>> other changes) [2].
>>
>> [2]: http://lore.kernel.org/20250827035259.1356758-1-dan.j.williams@intel.com
>>
>> It passes an updated regression testing using samples/devsec/. See this
>> commit on the staging branch for that test:
>>
>> https://git.kernel.org/pub/scm/linux/kernel/git/devsec/tsm.git/commit/?id=44932bffdcc1
>>
>> Status: ->connect() flow is settled
>> -----------------------------------
>> At the risk of tempting fate, the goal is this v7 goes to linux-next via
>> a stable tsm.git#next branch. Enable one or more TSM driver
>> implementations to queue on top for v6.19-rc1 via arch-specific trees
>> for TDX, TIO, CCA, or COVE-IO. I.e. target v6.19 to support baseline
>> link encryption (IDE) / secure-session establishment without
>> confidential device-assignment.
>>
>> That tsm.git#next goal still needs follow-on patches like the following
>> to settle:
>>
>> Alexey Kardashevskiy (1):
>> PCI/IDE: Initialize an ID for all IDE streams
>>
>> Xu Yilun (1):
>> PCI/IDE: Add Address Association Register setup for downstream MMIO
>>
>> ...but otherwise the core infrastructure is ready to support IDE
>> establishment via a platform TSM.
>>
>> Next steps:
>> -----------
>> - Stage at least one vendor ->connect() implementation on top of a
>> tsm.git#staging snapshot, for integration testing.
>>
>> - Additionally get at least one vendor ->connect() implementation queued
>> in an arch tree for linux-next in time for v6.19, otherwise
>> tsm.git#next may need to wait for v6.20.
>>
>
> Arm CCA changes can be found https://lore.kernel.org/all/20251027095602.1154418-2-aneesh.kumar@kernel.org

AMD SEV TIO is here:

https://github.com/AMDESE/linux-kvm/commits/tsm-staging/

7 patches, PHASE1 (from Documentation/driver-api/pci/tsm.rst) only. I'll clean that up a bit more and post. Thanks,

>
> -aneesh

--
Alexey