289 Commits
Author | SHA1 | Message | Date | |
---|---|---|---|---|
Linus Torvalds
|
5b9b41617b |
Another moderately busy cycle for documentation, including:
- The minimum Sphinx requirement has been raised to 2.4.4, following a warning that was added in 6.2. - Some reworking of the Documentation/process front page to, hopefully, make it more useful. - Various kernel-doc tweaks to, for example, make it deal properly with __counted_by annotations. - We have also restored a warning for documentation of nonexistent structure members that disappeared a while back. That had the delightful consequence of adding some 600 warnings to the docs build. A sustained effort by Randy, Vegard, and myself has addressed almost all of those, bringing the documentation back into sync with the code. The fixes are going through the appropriate maintainer trees. - Various improvements to the HTML rendered docs, including automatic links to Git revisions and a nice new pulldown to make translations easy to access. - Speaking of translations, more of those for Spanish and Chinese. ...plus the usual stream of documentation updates and typo fixes. -----BEGIN PGP SIGNATURE----- iQFDBAABCAAtFiEEIw+MvkEiF49krdp9F0NaE2wMflgFAmWcRKMPHGNvcmJldEBs d24ubmV0AAoJEBdDWhNsDH5YTKIH/AxBt/3iWt40dPf18arZHLU6tdUbmg01ttef CNKWkniCmABGKc//KYDXvjZMRDt0YlrS0KgUzrb8nIQTBlZG40D+88EwjXE0HeGP xt1Fk7OPOiJEqBZ3HEe0PDVfOiA+4yR6CmDKklCJuKg77X9atklneBwPUw/cOASk CWj+BdbwPBiSNQv48Lp87rGusKwnH/g0MN2uS0z9MPr1DYjM1K8+ngZjGW24lZHt qs5yhP43mlZGBF/lwNJXQp/xhnKAqJ9XwylBX9Wmaoxaz9yyzNVsADGvROMudgzi 9YB+Jdy7Z0JSrVoLIRhUuDOv7aW8vk+8qLmGJt2aTIsqehbQ6pk= =fCtT -----END PGP SIGNATURE----- Merge tag 'docs-6.8' of git://git.lwn.net/linux Pull documentation update from Jonathan Corbet: "Another moderately busy cycle for documentation, including: - The minimum Sphinx requirement has been raised to 2.4.4, following a warning that was added in 6.2 - Some reworking of the Documentation/process front page to, hopefully, make it more useful - Various kernel-doc tweaks to, for example, make it deal properly with __counted_by annotations - We have also restored a warning for documentation of nonexistent structure members that disappeared a while back. That had the delightful consequence of adding some 600 warnings to the docs build. A sustained effort by Randy, Vegard, and myself has addressed almost all of those, bringing the documentation back into sync with the code. The fixes are going through the appropriate maintainer trees - Various improvements to the HTML rendered docs, including automatic links to Git revisions and a nice new pulldown to make translations easy to access - Speaking of translations, more of those for Spanish and Chinese ... plus the usual stream of documentation updates and typo fixes" * tag 'docs-6.8' of git://git.lwn.net/linux: (57 commits) MAINTAINERS: use tabs for indent of CONFIDENTIAL COMPUTING THREAT MODEL A reworked process/index.rst ring-buffer/Documentation: Add documentation on buffer_percent file Translated the RISC-V architecture boot documentation. Docs: remove mentions of fdformat from util-linux Docs/zh_CN: Fix the meaning of DEBUG to pr_debug() Documentation: move driver-api/dcdbas to userspace-api/ Documentation: move driver-api/isapnp to userspace-api/ Documentation/core-api : fix typo in workqueue Documentation/trace: Fixed typos in the ftrace FLAGS section kernel-doc: handle a void function without producing a warning scripts/get_abi.pl: ignore some temp files docs: kernel_abi.py: fix command injection scripts/get_abi: fix source path leak CREDITS, MAINTAINERS, docs/process/howto: Update man-pages' maintainer docs: translations: add translations links when they exist kernel-doc: Align quick help and the code MAINTAINERS: add reviewer for Spanish translations docs: ignore __counted_by attribute in structure definitions scripts: kernel-doc: Clarify missing struct member description .. |
||
Arnd Bergmann
|
db0a7c09b2 |
TEE: improve shared buffer registration compatibility
-----BEGIN PGP SIGNATURE----- iQJOBAABCgA4FiEEFV+gSSXZJY9ZyuB5LinzTIcAHJcFAmV7AjYaHGplbnMud2lr bGFuZGVyQGxpbmFyby5vcmcACgkQLinzTIcAHJd5yA//STz2/LtQta0ucC9h1w3X +7mU8rWA2Ccmb7yQCyLGG9yXQNXzVn8bcRUsaLCU4YSKoLZdjeFgOD7dwz5uvtsN SwRVUoQpo02YZWjs+0WxKV+PuPBcJS6/Yiw8iomuk+3IE4I+V+hcJSiYLxfVZwWZ 602VDtyEzkFgaLHQZkIf9F0uZKfzPY6F2VJYTD9bipFw3D6rDjIgWP89tuk5RgBi pcKBZry2F95/mesJFXGF6jlYcCpD1OZJZ9nk/SbyoVB/2koviAUnMMMfe9MQPDgs JSGx1ycF6DwShl5o4SyD36uS3gi93iaVzQpHF5XDRfhoX+pyvqAmt4hbOIjOgcj8 mbTg39vYUVikOM741cYfkjvydIOwTi3jQrFmVBWSIHy529h4CJPmNXhFhSGYKm4Y SNIsZgGnU6VeKtgNgaQuSlg1/t/WwOIHtJWGtlRhj6g8PKWL1PIUK3ujCYM7ad8b fZA4eCwFFESrv3WmbGqAxjSZdb+pMlTk6/71j5d3MraLOM9KKOw5hcPgnnZrDyhg 31GK8ZbqISkIX+m24wkBkjhD7DijRhx2C8qPZwAXC5SPUgZXcP3ps/hMkME7qcTl H9H/fe8R+ivb3FlyuS+tT9wRN6b0pK1yF2giVqyexDrEv8qgK/qlwmtZNlsYU9aZ yTUZmXfZZ+ZyFFIECFUog/4= =0HCH -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmWFdRsACgkQYKtH/8kJ Uic1vQ/+N9wpDXyDIgg3sJgh2O/tTOQOHISlSvbM8PBMjIHprCoAFQ3V9+tacqtk H0hNuJrJTf5+9OobUGHyj52yPR70Xy3eumpmWSXLrQWJ3fFmu+NtPQuDWXkKNJ8b Y3DRrgxW3OYDInNT4+KRIXdrPzbP1jICswRnd5gTFkULQSCwsCyZFxq9+Gln2cIU by5lGoGG3HcD1P6pl/ikRibQzKq5KR5E3LhvaMLjOQL11kl/gez74tWyW9o3yFpw AgZBnuP3hh5qV6EN1p84jYUYXUvAGQuIpvuw4ONMhXRxToR7aXeFNtqei9n+JeKo 79ovvsZQJHa0Ro888fLqM0tk73MVtn4HX/GoxfcG9ujLvY42sH1Ml11w+2VfGmDS P+ovO21xwx1Glo5aXZoc0bUlIzOAJZlbrWGu3MF6qcstLM8QVRdLfZt5sZ/dxj7U hH79ZMwYHx2qlRU9x9Q05MnR6ik4YZ+KPwyMB+PhgaeX+r4HEn21qjX8EBqZiK23 2u/DxRUjWNmnARPIym5xU6PRpUsfQLGUHl7qzT58FLazWDEU/5BbpXFWccwFzE3g gdzcFD3u/Uf5xQUSmkAHdqzFGTHXt/IxvGcvhiei7fFuv1798VDpbw3iiEqTHVCR Dj9D6GClwj5bqx3aK6c67CGSlEYa8XsuUpi+xJi6nNxCLtel20w= =v/vB -----END PGP SIGNATURE----- Merge tag 'tee-iov-iter-for-v6.8' of https://git.linaro.org/people/jens.wiklander/linux-tee into soc/drivers TEE: improve shared buffer registration compatibility * tag 'tee-iov-iter-for-v6.8' of https://git.linaro.org/people/jens.wiklander/linux-tee: tee: Use iov_iter to better support shared buffer registration Link: https://lore.kernel.org/r/20231214134139.GA3098718@rayden Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
||
Arnd Bergmann
|
3408005e30 |
OP-TEE cleanup
- Remove a redundant custom workqueue in the OP-TEE driver. - Fix a missing description of an argument to optee_handle_rpc(). -----BEGIN PGP SIGNATURE----- iQJOBAABCgA4FiEEFV+gSSXZJY9ZyuB5LinzTIcAHJcFAmV6/wIaHGplbnMud2lr bGFuZGVyQGxpbmFyby5vcmcACgkQLinzTIcAHJezhg//alxgaOOJABnzWxBwEUc6 /gAEmt5qOt68JyeMN2f/I5XARlrmFM93QIOM7KLFNpQ1GoMxLm8kEgz6glUSfi1Z lncCD7F+egn3ix4bwvbhMMmhVE4doyg+aof4m5628mFTj7MIesFGjAgffhAP+Cla R5clf/JDohl5NKgISwZjKIIK+QtT61hzy8TvPtiPkrMcLB2G03yhv6X5M5Lkz73V m4JRlMbs/RBoKwlEgFJYTC4PTQboKLlUZ0gyfTHTTR5LQpq2aR4SMRLQcc/uMphn 1o4falN7zcCar0Is8AD92ja0Uy2J4HyC52u8nvkhIZVbnU9eP5P/vR053CwIfJMj WGogOdAFTbunp/fvjImuUbxfyOjHKfOoMGpzYCS3DiNusP8mmHyw+SctPGGFWkqQ Rd8qz11e/FmD1vq0e0Xm4TAXDWitbJDTCi/noN8X59ShXPIFsRBf6ooeNwbtwHgV fNiU8x5r0QjuV7iuEIVvBokMg883zb6njPEwiez5axblkYthxtXfgPi8cNtiA347 8s/NFtuxMiyK74TE+Wfkb+iURC/MpHDelTOXyYT3D9ZGIGF5x6rS6nOgs0+gEZ5J 19S6pPxvNs6UaDSlDta60qzGOB9WqULkI2QGDwqZ1M5PX49q+z/aM3m/Lim7FiUD Ee3FJpbSXyKNeKOX+per0Qg= =wAS6 -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmWFdOYACgkQYKtH/8kJ UicH7RAApoSj4P686Hbjph7hFISEkICUHjnQ+gk2piQ6PRXTsaBuleI/8qtbk1Fd Qv6viRmslinxrd/ghovamjlv10W/IdCv+gC7Pjg3IHWiIW379H0aVKAiT//vFQQX +ioMjcVdFnoKZuimsrsmWPGKEE/DMVTArIK6vFIS6JSOBnZiIEtMYEecV2As2icx JjaLEBJQjW91PCjsN07jnkvKu/JepuVM6sZBrdf99i8HTtjVK6CpsaxEEBwPPq/r TpS8MekJwvszbng0P5zXUIrqEslEXwJO4bkJSptcvPKGN+Whn559ItL9fMo0lQU0 d7FWzyxlKZUKU5MpUr3ZET4ukovLYzTdOnux/4qpB/Y7cQWusI1EkLvMmStoFJG5 SYJH4OwpKLLZ3Mgvqgy1Rmjrp5NkWpCKrLu2PMZ948ag8zc5g/KFJitLK0AyT1ut havT0GTQRyl1w/7Tw6z9aCepUU9gyWfjHxV6Ej6izK656fD6O+TLgk2y5Zsrx9RY Slu3UA8DijXRpp95JBmoxxLh0hxxt+8DryU9RRADa8v//6lkJ0Gr8QzO4SVmDNr/ fl0he2CmyOyd3QEV+AG2/eobVSr4/Ka0nZEiu++zr7uar68uQgsi3i5XwjcTR5SX 4VtdTjeL/Orhdr6aRqtTIO56kI6jaRG5YHmpq4A3xQJUqncnMO4= =Ae+Z -----END PGP SIGNATURE----- Merge tag 'optee-cleanup-for-v6.8' of https://git.linaro.org/people/jens.wiklander/linux-tee into soc/drivers OP-TEE cleanup - Remove a redundant custom workqueue in the OP-TEE driver. - Fix a missing description of an argument to optee_handle_rpc(). * tag 'optee-cleanup-for-v6.8' of https://git.linaro.org/people/jens.wiklander/linux-tee: optee: add missing description of RPC argument reference tee: optee: Remove redundant custom workqueue tee: optee: Fix supplicant based device enumeration Link: https://lore.kernel.org/r/20231214132237.GA3092763@rayden Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
||
Arnd Bergmann
|
daa554ab04 |
OP-TEE kernel private shared memory optimizations
Optimize OP-TEE driver private shared memory allocated as dynamic shared memory. Both to handle larger than one page allocations and for more efficient memory usage. -----BEGIN PGP SIGNATURE----- iQJOBAABCgA4FiEEFV+gSSXZJY9ZyuB5LinzTIcAHJcFAmV29qAaHGplbnMud2lr bGFuZGVyQGxpbmFyby5vcmcACgkQLinzTIcAHJfvQA/+IV16Zsa5C2VIJXXrfQH/ p+sc97bsK+waY/Qmn0s6vR6LyCQPSKZPFsZafPv7rxNsYxPrcAzHIKUaEttg2GrL 86zdZuRjQOgGNccLhBg6C6iaFR6OXWGUNgrdu1/i8Vt61bMpzz8IkrfXZJM6eGtu T5jP9QS3T9WmQJI4l3RcjzGrkdFrC6WHcovq2KkFiwCy+7WQhsBDy2aQupwolm3O +20UjBKuBmi71qaKMYnwjHz5ECBWG6xRKgf/Xy68r2rFwjZm5yKIuFCLSOQgkuAx yYjF1rblCTiZuQ4t4XTIFYNRCsL/ADKCELpnRH5+HcgsipIprDrM+Q9RWJzIzLz4 p4ebgRHfR7LYe6cD4xDebaI/hzD3ishyCkhpx0f644m+qow1j1BoyVfHrZANl1fy 5QwmfqT4b3UQWYdx8elaOClzIgL+Coah8Q4/hO13Yg4y5+VjFbITokVnT3ArOJMQ Y0SydhPmwrP8E8st85OYKu4QcyB9lNyttqXO0fXQuNj6R7QUJXYKNWAkGpHnrVG6 DRC+K7JDWbwfhA+BWA0FFb/dOD9iZL+sqTO1r9MHlSCTmM51wGa+4ZP0qiZFE3SG wf4FLolGThaauA059piWdXfTI71oVmTEeVrm+Jd8Dv8FOj6fA9v0KneaYbzSKGwO NuRsUzVbHj+6cDMM/zGsbcM= =Dlu/ -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmWFaIAACgkQYKtH/8kJ Uif45Q//VAiPtqwPMYXpTsoO/WEbi/FTjDZ2dKTHgYBx1Vog0IF9cR3n+htzczEu gs4Xcdw9EEw/kGYRq/vqLJjyfJo6+qput6eucjsEk0V2KX7CDASvUQe32s//zhBn fIYjzgWr0dbvAMgg1THNF7EQiAybawPVG3IG1utEKsluw63CIEjnnqddE9xFfuzG XxG0lu0MChLh5YB+AT3bgYqKND/P69eqVZKxAOdOkahSAVZ3eXz+GS2p14G+90eW hNE+5UKNtrpCIYxSeG+fwKfandsvgC2eivkExtdTPZKdDW20LGQaS3VsxNIvk1+r Oxt/N7fSEafzjrkv+Kv4VulDD7zfZzaNe2yaDXkUcVDizW4ZOIlfjCCf2QKj1Kgr NCHZmtb9g+WNfeW7K54bkbPUhUDcVTOcil33JZETqAfGxDTvfj8VHUtcDmEEaNIs MVQaDgOVFCC3zO1cPTAUI2h4I6u5664b4ncRXGQDYm/nEt7YWGioSCmGc8o+oCVD mkEeWsalUWDvlWuHeCcBXUQtqSqB25AiCh4LNyZRpxBrUAM26UaXC3QCiHTCWQBk uUOSVFiaaLYfj9E3350MrnYU10NPmczB+Q2COBKPODv5LNFO/u4cnsqCKIZ5cd9W h6MAcjmux1hQegAGOQJxPc8EfqDLcIgMszpDG5hEZATL0dYTjJk= =HSTy -----END PGP SIGNATURE----- Merge tag 'kern-priv-shm-for-v6.8' of https://git.linaro.org/people/jens.wiklander/linux-tee into soc/drivers OP-TEE kernel private shared memory optimizations Optimize OP-TEE driver private shared memory allocated as dynamic shared memory. Both to handle larger than one page allocations and for more efficient memory usage. * tag 'kern-priv-shm-for-v6.8' of https://git.linaro.org/people/jens.wiklander/linux-tee: optee: allocate shared memory with alloc_pages_exact() optee: add page list to kernel private shared memory Link: https://lore.kernel.org/r/20231211115815.GA616539@rayden Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
||
Arnaud Pouliquen
|
7bdee41575 |
tee: Use iov_iter to better support shared buffer registration
Currently it's not possible to register kernel buffers with TEE which are allocated via vmalloc. Use iov_iter and associated helper functions to manage the page registration for all type of memories. Suggested-by: Christoph Hellwig <hch@infradead.org> Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com> Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Etienne Carriere
|
b19773a1c6 |
optee: add missing description of RPC argument reference
Adds missing inline description comment for RPC optional arguments reference. Reported-by: kernel test robot <lkp@intel.com> Closes: https://lore.kernel.org/lkml/202310192021.fvb6JDOY-lkp@intel.com/ Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com> Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Sumit Garg
|
50709576d8 |
Documentation: Destage TEE subsystem documentation
Add a separate documentation directory for TEE subsystem since it is a standalone subsystem which already offers devices consumed by multiple different subsystem drivers. Split overall TEE subsystem documentation modularly where: - The userspace API has been moved to Documentation/userspace-api/tee.rst. - The driver API has been moved to Documentation/driver-api/tee.rst. - The first module covers the overview of TEE subsystem. - The further modules are dedicated to different TEE implementations like: - OP-TEE - AMD-TEE - and so on for future TEE implementation support. Acked-by: Rijo Thomas <Rijo-john.Thomas@amd.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Jonathan Corbet <corbet@lwn.net> Link: https://lore.kernel.org/r/20231128072352.866859-1-sumit.garg@linaro.org |
||
Jens Wiklander
|
225a36b963 |
optee: allocate shared memory with alloc_pages_exact()
Allocate memory to share with the secure world using alloc_pages_exact() instead of alloc_pages() for more efficient memory usage. Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Jens Wiklander
|
69724b3eac |
optee: add page list to kernel private shared memory
Until now has kernel private shared memory allocated as dynamic shared memory (not from the static shared memory pool) been returned without a list of physical pages on allocations via RPC. To support allocations larger than one page add a list of physical pages. Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Jens Wiklander
|
d0476a59de |
optee: ffa_abi: add asynchronous notifications
Adds support for asynchronous notifications from OP-TEE in secure world when communicating via FF-A. In principle from OP-TEE and kernel driver point of view this works in the same way as for the SMC ABI based implementation. The OP-TEE FF-A ABI is expanded in OPTEE_FFA_EXCHANGE_CAPABILITIES with the capability OPTEE_FFA_SEC_CAP_ASYNC_NOTIF to indicate that OP-TEE supports asynchronous notifications. OPTEE_FFA_ENABLE_ASYNC_NOTIF is also added to tell that the driver has successfully initialized these notifications. Notification capability is negotiated while the driver is initialized. If both sides supports these notifications then they are enabled. The notification concept in this driver is merged with the FF-A concept, the lower 64 values are reserved for FF-A as asynchronous notifications while the synchronous notifications use the higher values. So a FF-A notification has to be allocated for each discrete asynchronous notification value needed. Only one asynchronous notification value is used at the moment, the "do bottom half" notification. Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Tested-by: Sudeep Holla <sudeep.holla@arm.com> |
||
Jens Wiklander
|
6dea6352be |
optee: provide optee_do_bottom_half() as a common function
Provides optee_do_bottom_half() and optee_stop_async_notif() as common functions callable from the FF-A ABI part of the driver too. Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Sumit Garg <sumit.garg@linaro.org> |
||
Etienne Carriere
|
45bc2c9b5b |
tee: optee: support tracking system threads
Adds support in the OP-TEE driver to keep track of reserved system threads. The logic allows one OP-TEE thread to be reserved to TEE system sessions. The optee_cq_*() functions are updated to handle this if enabled, that is when TEE describes how many thread context it supports and when at least 1 session has registered as a system session (using tee_client_system_session()). For sake of simplicity, initialization of call queue management is factorized into new helper function optee_cq_init(). The SMC ABI part of the driver enables this tracking, but the FF-A ABI part does not. Co-developed-by: Jens Wiklander <jens.wiklander@linaro.org> Co-developed-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Etienne Carriere
|
a9214a8883 |
tee: system session
Adds kernel client API function tee_client_system_session() for a client to request a system service entry in TEE context. This feature is needed to prevent a system deadlock when several TEE client applications invoke TEE, consuming all TEE thread contexts available in the secure world. The deadlock can happen in the OP-TEE driver for example if all these TEE threads issue an RPC call from TEE to Linux OS to access an eMMC RPMB partition (TEE secure storage) which device clock or regulator controller is accessed through an OP-TEE SCMI services. In that case, Linux SCMI driver must reach OP-TEE SCMI service without waiting until one of the consumed TEE threads is freed. Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Co-developed-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Etienne Carriere
|
077798da02 |
tee: optee: system thread call property
Adds an argument to do_call_with_arg() handler to tell whether the call is a system thread call or not. This change always sets this info to false hence no functional change. This change prepares management of system invocation proposed in a later change. Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Co-developed-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com> [jw: clarified that it's system thread calls] Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Sumit Garg
|
cab4a9bc06 |
tee: optee: Remove redundant custom workqueue
Global system workqueue is sufficient to suffice OP-TEE bus scanning work needs. So drop redundant usage of the custom workqueue. Tested-by: Jan Kiszka <jan.kiszka@siemens.com> Tested-by: Masahisa Kojima <masahisa.kojima@linaro.org> Signed-off-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Sumit Garg
|
7269cba53d |
tee: optee: Fix supplicant based device enumeration
Currently supplicant dependent optee device enumeration only registers devices whenever tee-supplicant is invoked for the first time. But it forgets to remove devices when tee-supplicant daemon stops running and closes its context gracefully. This leads to following error for fTPM driver during reboot/shutdown: [ 73.466791] tpm tpm0: ftpm_tee_tpm_op_send: SUBMIT_COMMAND invoke error: 0xffff3024 Fix this by adding an attribute for supplicant dependent devices so that the user-space service can detect and detach supplicant devices before closing the supplicant: $ for dev in /sys/bus/tee/devices/*; do if [[ -f "$dev/need_supplicant" && -f "$dev/driver/unbind" ]]; \ then echo $(basename "$dev") > $dev/driver/unbind; fi done Reported-by: Jan Kiszka <jan.kiszka@siemens.com> Closes: https://github.com/OP-TEE/optee_os/issues/6094 Fixes: 5f178bb71e3a ("optee: enable support for multi-stage bus enumeration") Signed-off-by: Sumit Garg <sumit.garg@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Acked-by: Jerome Forissier <jerome.forissier@linaro.org> [jw: fixed up Date documentation] Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Greg Kroah-Hartman
|
066eaa69b0 |
tee: make tee_class constant
Now that the driver core allows for struct class to be in read-only memory, we should make all 'class' structures declared at build time placing them into read-only memory, instead of having to be dynamically allocated at runtime. Cc: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Link: https://lore.kernel.org/r/2023100613-lustiness-affiliate-7dcb@gregkh Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
||
Linus Torvalds
|
9a5a149485 |
ARM: SoC fixes for 6.6, part 2
AngeloGioacchino Del Regno is stepping in as co-maintainer for the MediaTek SoC platform and starts by sending some dts fixes for the mt8195 platform that had been pending for a while. On the ixp4xx platform, Krzysztof Halasa steps down as co-maintainer, reflecting that Linus Walleij has been handling this on his own for the past few years. Generic RISC-V kernels are now marked as incompatible with the RZ/Five platform that requires custom hacks both for managing its DMA bounce buffers and for addressing low virtual memory. Finally, there is one bugfix for the AMDTEE firmware driver to prevent a use-after-free bug. -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmUn5QgACgkQYKtH/8kJ UicWRw/+J+gYuPbjAO5A34KjcvE0/oHoX0CartiJLjGMSboXqjvlJOL2V37q9cTO kt/all/wWYnyvr3L09jPKZY8J9stw6wgMpkPZpcAORkF/Vc8KNEvBBVVnTIZSlie G6HSNW1S3qMPdt2mxjPWeO7aoKqq/lIuQoJDDAh3XQWYowy7++o6TreLs14UsGfv +PRNm5dR+SGe5QC/vIJIn0U7bTD7PRQ7xEdv2LC+ANto+mbtdyVOKh16kcTnzO+2 NUHmBQvHqGS0Q1uN1hiXQocL9WA7vreVLk7ARbq/SLr1ccOsxJrxKj9LYPhoLq68 8oJCHR8RBAXxYInhiw2xR62KczTEVickNWlHR7aiWlQ+Bxha/YhpmUAzh/hrlvWg edCBUSIxQW1CyLmbMxAqyHQn72F+sMM/LulhmftHuBcbF1YwNseAV67MKjoMSTr0 rjSiXpzdomCvgZxhJYujHLjugKh6jfLMRwPx+0P6qKebdm/y1a17kGtUf/NQ24bn nDAeOAKWRRdEu4CjcoYkzVLgE6MlXUiSbSmpsPpDevge1qbcrfHgIATHech4oyDd h2o8xIO37H4QB3s9w18g05OQRToRlBHPMxQhD+vlRy77Zd9BE7wZqKcwR9XjkyyX +qPcNHVN0khxf+/NYiIE/Wn5Z57PL2vvgYoSp2L2Wi+UiYEZ0Ek= =Ukoh -----END PGP SIGNATURE----- Merge tag 'soc-fixes-6.6-2' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc Pull ARM SoC fixes from Arnd Bergmann: "AngeloGioacchino Del Regno is stepping in as co-maintainer for the MediaTek SoC platform and starts by sending some dts fixes for the mt8195 platform that had been pending for a while. On the ixp4xx platform, Krzysztof Halasa steps down as co-maintainer, reflecting that Linus Walleij has been handling this on his own for the past few years. Generic RISC-V kernels are now marked as incompatible with the RZ/Five platform that requires custom hacks both for managing its DMA bounce buffers and for addressing low virtual memory. Finally, there is one bugfix for the AMDTEE firmware driver to prevent a use-after-free bug" * tag 'soc-fixes-6.6-2' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: IXP4xx MAINTAINERS entries arm64: dts: mediatek: mt8195: Set DSU PMU status to fail arm64: dts: mediatek: fix t-phy unit name arm64: dts: mediatek: mt8195-demo: update and reorder reserved memory regions arm64: dts: mediatek: mt8195-demo: fix the memory size to 8GB MAINTAINERS: Add Angelo as MediaTek SoC co-maintainer soc: renesas: Make ARCH_R9A07G043 (riscv version) depend on NONPORTABLE tee: amdtee: fix use-after-free vulnerability in amdtee_close_session |
||
Rijo Thomas
|
f4384b3e54 |
tee: amdtee: fix use-after-free vulnerability in amdtee_close_session
There is a potential race condition in amdtee_close_session that may cause use-after-free in amdtee_open_session. For instance, if a session has refcount == 1, and one thread tries to free this session via: kref_put(&sess->refcount, destroy_session); the reference count will get decremented, and the next step would be to call destroy_session(). However, if in another thread, amdtee_open_session() is called before destroy_session() has completed execution, alloc_session() may return 'sess' that will be freed up later in destroy_session() leading to use-after-free in amdtee_open_session. To fix this issue, treat decrement of sess->refcount and removal of 'sess' from session list in destroy_session() as a critical section, so that it is executed atomically. Fixes: 757cc3e9ff1d ("tee: add AMD-TEE driver") Cc: stable@vger.kernel.org Signed-off-by: Rijo Thomas <Rijo-john.Thomas@amd.com> Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Yue Haibing
|
069969d6c5 |
tee: Remove unused declarations
Commit 4fb0a5eb364d ("tee: add OP-TEE driver") declared but never implemented optee_supp_read()/optee_supp_write(). Commit 967c9cca2cc5 ("tee: generic TEE subsystem") never implemented tee_shm_init(). Signed-off-by: Yue Haibing <yuehaibing@huawei.com> Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Linus Torvalds
|
e4c8d01865 |
ARM: SoC drivers for 6.5
Nothing surprising in the SoC specific drivers, with the usual updates: * Added or improved SoC driver support for Tegra234, Exynos4121, RK3588, as well as multiple Mediatek and Qualcomm chips * SCMI firmware gains support for multiple SMC/HVC transport and version 3.2 of the protocol * Cleanups amd minor changes for the reset controller, memory controller, firmware and sram drivers * Minor changes to amd/xilinx, samsung, tegra, nxp, ti, qualcomm, amlogic and renesas SoC specific drivers -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmSdmbIACgkQYKtH/8kJ UicewQ/6Aq8j5pBFYBimZoyQ0bi9z+prGrHoDDYLew2vKjtOXJl5z7ZnM3J1oyPt Zvis3IaGkHJCuuqotPdsquZrzHq8slzXzwkHPfHORJBC4gV0V/vMS8w32tO5FfTq ULrMyWnbsU7Udeywc2xuEpAoC9+bXX9brnCpa3H41peIGZKM+0g7EE6FASt3YaOk O+ZMSGqF8QbCqSQrUH3GudFlFMy/VxIvwuUsbLt8aNkRACunQZXVgUdArvLV49nX SElFN7hOVRoVDv0rgYMxlwElymrta/kMyjLba8GU1GIhzyDGozVqIJQAnsQ3f6CC yyzaJm27zzJH0mx9jx4W+JLBdjqDL4ctE2WyllRVIpTGYMHiMQtutHNwtNupIuD5 j9j/fIVQWZqOdWXnA6V/CHYN1MZBRTH3KQcnLlYPC01dWKThPDnrHGfwOkfsrwtN zuERJJ+gd5b8KW4dmy1ueDOSB8162LxbS7iHxpOBGySmqVOYj3XUqACZhKRfXfIQ BVj9punCE/gO2fMb9IZByjeOzgtV+PBRmPxoglyaGkT4fVfL06kEbpKFYbXXq9b/ aAS/U84gGr8ebWsOXszwDnBzTZRzjMVv/T9KDTTJuWbBEPNyCR7fUG0cZ50rSKnJ 2cTPe3a0sS6LaBt71qfExCIfxG+cJ2c3N1U5/jb2C49Aob45obs= =zvLr -----END PGP SIGNATURE----- Merge tag 'soc-drivers-6.5' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc Pull ARM SoC driver updates from Arnd Bergmann: "Nothing surprising in the SoC specific drivers, with the usual updates: - Added or improved SoC driver support for Tegra234, Exynos4121, RK3588, as well as multiple Mediatek and Qualcomm chips - SCMI firmware gains support for multiple SMC/HVC transport and version 3.2 of the protocol - Cleanups amd minor changes for the reset controller, memory controller, firmware and sram drivers - Minor changes to amd/xilinx, samsung, tegra, nxp, ti, qualcomm, amlogic and renesas SoC specific drivers" * tag 'soc-drivers-6.5' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (118 commits) dt-bindings: interrupt-controller: Convert Amlogic Meson GPIO interrupt controller binding MAINTAINERS: add PHY-related files to Amlogic SoC file list drivers: meson: secure-pwrc: always enable DMA domain tee: optee: Use kmemdup() to replace kmalloc + memcpy soc: qcom: geni-se: Do not bother about enable/disable of interrupts in secondary sequencer dt-bindings: sram: qcom,imem: document qdu1000 soc: qcom: icc-bwmon: Fix MSM8998 count unit dt-bindings: soc: qcom,rpmh-rsc: Require power-domains soc: qcom: socinfo: Add Soc ID for IPQ5300 dt-bindings: arm: qcom,ids: add SoC ID for IPQ5300 soc: qcom: Fix a IS_ERR() vs NULL bug in probe soc: qcom: socinfo: Add support for new fields in revision 19 soc: qcom: socinfo: Add support for new fields in revision 18 dt-bindings: firmware: scm: Add compatible for SDX75 soc: qcom: mdt_loader: Fix split image detection dt-bindings: memory-controllers: drop unneeded quotes soc: rockchip: dtpm: use C99 array init syntax firmware: tegra: bpmp: Add support for DRAM MRQ GSCs soc/tegra: pmc: Use devm_clk_notifier_register() soc/tegra: pmc: Simplify debugfs initialization ... |
||
Jiapeng Chong
|
6a8b7e8010 |
tee: optee: Use kmemdup() to replace kmalloc + memcpy
Use kmemdup rather than duplicating its implementation. ./drivers/tee/optee/smc_abi.c:1542:12-19: WARNING opportunity for kmemdup. Reported-by: Abaci Robot <abaci@linux.alibaba.com> Closes: https://bugzilla.openanolis.cn/show_bug.cgi?id=5480 Signed-off-by: Jiapeng Chong <jiapeng.chong@linux.alibaba.com> Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Arnd Bergmann
|
abd649fdf9 |
AMDTEE add return origin to load TA command
-----BEGIN PGP SIGNATURE----- iQJOBAABCgA4FiEEFV+gSSXZJY9ZyuB5LinzTIcAHJcFAmR+4agaHGplbnMud2lr bGFuZGVyQGxpbmFyby5vcmcACgkQLinzTIcAHJe8Jw//ccNGhzOrZrDHgHc/nx19 PitJyk1eaGNIwMzKx/ZqP7mj2JlnQMuylPWGvxQYmzLYwNupraWJfK2El+mysAnS yMqXo51jKkiYS+z4MugctZClbr8BuAwHfCvRbvJjOTIuUEh1ba2lF4+r4+IyVDtW GS6psA85XkCpklkss21UOylpQHTECMFwH66CVTepzE6p4Lw8lNvSJObH03ssMpx3 +z0E5FuQITs/BeCJTLB8spl+KFCnvSUp8hmVpUzAMoIWhs0339GjxsQvFF6CYcId OQrJCJ40nmrXWkkbaonPJswIjEblB1op5Oq5+anY+2pZuOwcJAGi/nTaomL892nE KSY5sGYB/4q1fXkHSESc/53xsjz2YPl+2iaViaZjMzPXt4bXs8c1bYRn4RQnRoFB ITfGXx1nWwMWC895Mf+ffB1ZP+k9Be6YLtcnaHCGI2FKVL7kPUuyv7afYCL1/ppe UduI+aI507C6K67VvOpymxx76fcZU0T4J6JOf/cVz208qOiIDALCkfMgMoCsArLP VH+zXOX8UzBWEGGnREIHuzu2bXR4TwvYx1E07mGEwO/8FUTI/pQlfSEH6ehlmzHA QxGBHmeoj3IVhUBg2d6S8UtU3DumCZMNl4R1GSTpfLdQQvAIi49bRzoV5AZzFKd9 VUlXTD8/SOPkD6Z8G66XC7k= =d2FU -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmSAYs4ACgkQYKtH/8kJ Uie7Yw//Qy8kBBpxx6hZiDY+MMq46vjkBvhP0i17llsQ0RVP/Xq6C9JD+E/u/KEq i6D53KVEpfb1K6/28SvyzXgiJ1rVuDNV3BO4KmB+ov+vZ6drSZS8jhnNRzK/7dbH LIfic0zxQS7SKEe95DC0z0/GoferaMvUkmrUbVXsSb32I0Ry0dA2zwkpo9Xo/YOI 6nSwefurovppSrMZ3EChDSYqHrktzkdkdeKHFa0+Hr7cbgTibISn1JGcXztjARa0 Sy8F6e/h4r8wQOy3yJEzKvEeSsE7BJT9NRK4BspVicMWcReioENl1e3flfCwzTa+ ewz4TzWP9DWaXL9oJT16kzjbrlWPkfjNU1Mqn/vl1+dbYApyLLN3Ai2ivoC0Fciw 7yZoNcMPws3l0xECNTxXIMuLBcRGpdbTof8fFwn++ckNoybFJmPe4LzLgiKJ+B72 glnsKdUglIOcZea4WUIp/ya3CkgUHbAGhy42P5Tbd5hJBCnNZ+hheFDbrUCc9/K/ xOZswe+DKstPB2KOMxJgkjH8zQv5Ua959zy8Jfg8uq5MsHUV0PVxc03rp4FjDdD8 gaENrW7GQzxAStb/+YrBYoeMIFr9f9zA0yv0y92G3gBERupOc0VcFNopPFnHxvn+ +pum0SVSsqU1o9dwT9pchjwX7TQr/yKJvejvGFEoC4vSVgytdso= =8LYO -----END PGP SIGNATURE----- Merge tag 'amdtee-fix-for-v6.5' of https://git.linaro.org/people/jens.wiklander/linux-tee into arm/fixes AMDTEE add return origin to load TA command * tag 'amdtee-fix-for-v6.5' of https://git.linaro.org/people/jens.wiklander/linux-tee: tee: amdtee: Add return_origin to 'struct tee_cmd_load_ta' Link: https://lore.kernel.org/r/20230606075843.GA2792442@rayden Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
||
Arnd Bergmann
|
9bafc2bb46 |
Fixes an uninitialized variable in OP-TEE driver
-----BEGIN PGP SIGNATURE----- iQJOBAABCgA4FiEEFV+gSSXZJY9ZyuB5LinzTIcAHJcFAmRCPoAaHGplbnMud2lr bGFuZGVyQGxpbmFyby5vcmcACgkQLinzTIcAHJfRtRAAnwxN3aeCg7i8I6CML4P3 7PintdfApyFC0TwqkB1vGWBbS+Qp31P7AtmKSHXLinoGK7fRDDlgAmEHFRaCJRYK FZMHmoTt8Jn7VpBUGw1J+/+pRc6D7ALCPyYrXcLOi5NX6vCoLFhZuJHhJI4NcppA YKQVI9lFQmigj0n3imiGTVvLodC682j7UCQAT1yMavu6R/VNtV1nf4TusqnXD1DC Ko9ixUnB6kVrNN9NaebjH2PCYe4iMhJ2FTUn8Ba3Hbif20rOKknIHY28l0C6xV2b 7RGJt6F3S/4Sgup0OLzYHAhgN57NPKl1YCTx5hlFMijtDqCLgonKWJ225kd6T7xF qBmBnqalnvZ8M0248z8GFcGgaokR6NuJIag4WbXmIo2umAsLvsBnzr/LhY/xZ4p9 SO086vAhv4A7fI2IF7eP/BWgkzOswK0xpZ7D+n8cwGtmdYTTLVIb7L4JG0FFLES/ tLWltHLySrJj+dQpdDOqTNGV0uhjQWXio8D0sUqdxNpEaY/d2rC6hn7jiLwaCRk5 qnc63dIkpxJ4UlRaST4HyyK0QDDV7HTRS+XAReVEDoKD0sVpszQLzGyWEnUTaO8v kTqdQ8jLvONvPcRrKtH6mTx5D2zVKwqOBgcq3DovTNUkgJrA7Ix792VsZnqslfko vfwjYrptA01ecJm82b2P3Zo= =qFY0 -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmRve+QACgkQYKtH/8kJ Uich7w//fUAOwCp6kGR2c2xtnlLdf5tt/linpO62XV6E+8EplK4YOuqR15dERiY2 a/pvDWSnGEiikGtYuqH9gvpvtwA5jbneSZMRCYe5T1InlrpY2hD2awk57mD9vdWS bDI95tmgXjEJ2pIfMMJrEf1yFjJU1By+1Z9vtJWzjdOOxqtSY38ISzNg8oO8hIek n+AFuYZv7MUyUAwRXPeywXv4VM/6Fr3AYR3iH9zhxXHGraX6F1U1CNTakLm+Ttsk TUNz+vZKH3Cae6SNMuFVF2VlKjZIQUmwuGTZHM124l+D7rt/xMS25K+z4XKenl0a 6xqqItOdg9q3T80k7vxI0AcBXrUmbtF/cQAhnLcSp8o/ImAtq7yRWblIDgCK1OK3 L//bqgqc9SyMqXrH6jc8DP2kehqXzchcPRJWZGrGccGJBVr585oF3/6tNG80RV29 ZEx7aKZeFKnK+yaiNhHy2yWp6gaE2oogYLgfOauNKT1rXI3UP9qqWgxNSOrA1W/I EHrjft2Bv3Hdb2bXa4qeAvtz1bEnc4tHmRnhYhOrW8tKQscAjkXj/vNBYcV7aAv9 kRrzZkxK3RydzTzruX3qv3wee3cwDl2PT1TqnfR6qt85fqi2hFUZRQhSHi1A7HNq tmwQvuSicgRW52HUkiHw85/zsGXG3ERsLxmfNvlmOW6XVl2QR+o= =R1qj -----END PGP SIGNATURE----- Merge tag 'optee-async-notif-fix-for-v6.3' of https://git.linaro.org/people/jens.wiklander/linux-tee into arm/fixes Fixes an uninitialized variable in OP-TEE driver * tag 'optee-async-notif-fix-for-v6.3' of https://git.linaro.org/people/jens.wiklander/linux-tee: optee: fix uninited async notif value Link: https://lore.kernel.org/r/20230421075443.GA3136581@rayden Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
||
Rijo Thomas
|
436eeae041 |
tee: amdtee: Add return_origin to 'struct tee_cmd_load_ta'
After TEE has completed processing of TEE_CMD_ID_LOAD_TA, set proper value in 'return_origin' argument passed by open_session() call. To do so, add 'return_origin' field to the structure tee_cmd_load_ta. The Trusted OS shall update return_origin as part of TEE processing. This change to 'struct tee_cmd_load_ta' interface requires a similar update in AMD-TEE Trusted OS's TEE_CMD_ID_LOAD_TA interface. This patch has been verified on Phoenix Birman setup. On older APUs, return_origin value will be 0. Cc: stable@vger.kernel.org Fixes: 757cc3e9ff1d ("tee: add AMD-TEE driver") Tested-by: Sourabh Das <sourabh.das@amd.com> Signed-off-by: Rijo Thomas <Rijo-john.Thomas@amd.com> Acked-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Linus Torvalds
|
556eb8b791 |
Driver core changes for 6.4-rc1
Here is the large set of driver core changes for 6.4-rc1. Once again, a busy development cycle, with lots of changes happening in the driver core in the quest to be able to move "struct bus" and "struct class" into read-only memory, a task now complete with these changes. This will make the future rust interactions with the driver core more "provably correct" as well as providing more obvious lifetime rules for all busses and classes in the kernel. The changes required for this did touch many individual classes and busses as many callbacks were changed to take const * parameters instead. All of these changes have been submitted to the various subsystem maintainers, giving them plenty of time to review, and most of them actually did so. Other than those changes, included in here are a small set of other things: - kobject logging improvements - cacheinfo improvements and updates - obligatory fw_devlink updates and fixes - documentation updates - device property cleanups and const * changes - firwmare loader dependency fixes. All of these have been in linux-next for a while with no reported problems. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> -----BEGIN PGP SIGNATURE----- iG0EABECAC0WIQT0tgzFv3jCIUoxPcsxR9QN2y37KQUCZEp7Sw8cZ3JlZ0Brcm9h aC5jb20ACgkQMUfUDdst+ykitQCfamUHpxGcKOAGuLXMotXNakTEsxgAoIquENm5 LEGadNS38k5fs+73UaxV =7K4B -----END PGP SIGNATURE----- Merge tag 'driver-core-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core Pull driver core updates from Greg KH: "Here is the large set of driver core changes for 6.4-rc1. Once again, a busy development cycle, with lots of changes happening in the driver core in the quest to be able to move "struct bus" and "struct class" into read-only memory, a task now complete with these changes. This will make the future rust interactions with the driver core more "provably correct" as well as providing more obvious lifetime rules for all busses and classes in the kernel. The changes required for this did touch many individual classes and busses as many callbacks were changed to take const * parameters instead. All of these changes have been submitted to the various subsystem maintainers, giving them plenty of time to review, and most of them actually did so. Other than those changes, included in here are a small set of other things: - kobject logging improvements - cacheinfo improvements and updates - obligatory fw_devlink updates and fixes - documentation updates - device property cleanups and const * changes - firwmare loader dependency fixes. All of these have been in linux-next for a while with no reported problems" * tag 'driver-core-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (120 commits) device property: make device_property functions take const device * driver core: update comments in device_rename() driver core: Don't require dynamic_debug for initcall_debug probe timing firmware_loader: rework crypto dependencies firmware_loader: Strip off \n from customized path zram: fix up permission for the hot_add sysfs file cacheinfo: Add use_arch[|_cache]_info field/function arch_topology: Remove early cacheinfo error message if -ENOENT cacheinfo: Check cache properties are present in DT cacheinfo: Check sib_leaf in cache_leaves_are_shared() cacheinfo: Allow early level detection when DT/ACPI info is missing/broken cacheinfo: Add arm64 early level initializer implementation cacheinfo: Add arch specific early level initializer tty: make tty_class a static const structure driver core: class: remove struct class_interface * from callbacks driver core: class: mark the struct class in struct class_interface constant driver core: class: make class_register() take a const * driver core: class: mark class_release() as taking a const * driver core: remove incorrect comment for device_create* MIPS: vpe-cmp: remove module owner pointer from struct class usage. ... |
||
Linus Torvalds
|
733f7e9c18 |
This update includes the following changes:
API: - Total usage stats now include all that returned error (instead of some). - Remove maximum hash statesize limit. - Add cloning support for hmac and unkeyed hashes. - Demote BUG_ON in crypto_unregister_alg to a WARN_ON. Algorithms: - Use RIP-relative addressing on x86 to prepare for PIE build. - Add accelerated AES/GCM stitched implementation on powerpc P10. - Add some test vectors for cmac(camellia). - Remove failure case where jent is unavailable outside of FIPS mode in drbg. - Add permanent and intermittent health error checks in jitter RNG. Drivers: - Add support for 402xx devices in qat. - Add support for HiSTB TRNG. - Fix hash concurrency issues in stm32. - Add OP-TEE firmware support in caam. -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEn51F/lCuNhUwmDeSxycdCkmxi6cFAmRGCjcACgkQxycdCkmx i6d6JA//ZmwgEqAKA8qWpHnNKZylTLqFhLxnKZwr4Hhp1KzManh/T9pepXiD2zAY D92wU60v0hfGAazeUWQRmrIZxcjyd3b3Tr7WiFuNoZbkPsuXWZAoz8iHgMq69dqb DXZhKJnlmVlcr+qTSk9MP8HODL5kU6Ug2pk+r8hL/WsBI+JGfZEXKcJhhMqYLYls nl+NN4fkE5tgcTh2lp/9dQsQRylhESZuqb8L2wItQmripSbhPGwYf24I7B7xcGrn o7X4XG//cQO6zQErgnOJOosIgJEEynW27CN4ZiHB8WhRAk0YLXydQBs6EjZgNA8H EvZC/bIx2YOt8ngG99q4kRg4OgKp4c7UnV6l1pxuJWbIyXrFh4djxHdq9pTYr3UB P3pVEX38Wu7U5Tfgy3y1QqZzsvrPjmnI3NQ8QBrcFzNRDan5K6nH4kQyk9Cv7LQm GlE1JOThU5U2G33ZWKCluJUjVUCRceMWQYla1X5R4uWMCwSqRMpmx8Ib9QvbYlWe iUI+RatLnlIobx+lgaC8mtij9dQddFjk6YwFYhQcD3Bl30DhTeIlbnOUY9YOTXps H6V9X2inVUjyZr1uJ4a7rPdCUuzQxR6HWPyp6fXMlbLrEhL8e6c4/QbEoTubRQeS WTtoIFt4ezd2SG6hI6dTCscgFc5EAyEMDD5GtQmJeyozu0Gqtpo= =ITkW -----END PGP SIGNATURE----- Merge tag 'v6.4-p1' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 Pull crypto updates from Herbert Xu: "API: - Total usage stats now include all that returned errors (instead of just some) - Remove maximum hash statesize limit - Add cloning support for hmac and unkeyed hashes - Demote BUG_ON in crypto_unregister_alg to a WARN_ON Algorithms: - Use RIP-relative addressing on x86 to prepare for PIE build - Add accelerated AES/GCM stitched implementation on powerpc P10 - Add some test vectors for cmac(camellia) - Remove failure case where jent is unavailable outside of FIPS mode in drbg - Add permanent and intermittent health error checks in jitter RNG Drivers: - Add support for 402xx devices in qat - Add support for HiSTB TRNG - Fix hash concurrency issues in stm32 - Add OP-TEE firmware support in caam" * tag 'v6.4-p1' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (139 commits) i2c: designware: Add doorbell support for Mendocino i2c: designware: Use PCI PSP driver for communication powerpc: Move Power10 feature PPC_MODULE_FEATURE_P10 crypto: p10-aes-gcm - Remove POWER10_CPU dependency crypto: testmgr - Add some test vectors for cmac(camellia) crypto: cryptd - Add support for cloning hashes crypto: cryptd - Convert hash to use modern init_tfm/exit_tfm crypto: hmac - Add support for cloning crypto: hash - Add crypto_clone_ahash/shash crypto: api - Add crypto_clone_tfm crypto: api - Add crypto_tfm_get crypto: x86/sha - Use local .L symbols for code crypto: x86/crc32 - Use local .L symbols for code crypto: x86/aesni - Use local .L symbols for code crypto: x86/sha256 - Use RIP-relative addressing crypto: x86/ghash - Use RIP-relative addressing crypto: x86/des3 - Use RIP-relative addressing crypto: x86/crc32c - Use RIP-relative addressing crypto: x86/cast6 - Use RIP-relative addressing crypto: x86/cast5 - Use RIP-relative addressing ... |
||
Linus Torvalds
|
a907047732 |
ARM: SoC drivers for v6.4
The most notable updates this time are for Qualcomm Snapdragon platforms. The Inline-Crypto-Engine gets a new DT binding and driver. A number of drivers now support additional Snapdragon variants, in particular the rsc, scm, geni, bwm, glink and socinfo, while the llcc (edac) and rpm drivers get notable functionality updates. Updates on other platforms include: - Various updates to the Mediatek mutex and mmsys drivers, including support for the Helio X10 SoC - Support for unidirectional mailbox channels in Arm SCMI firmware - Support for per cpu asynchronous notification in OP-TEE firmware - Minor updates for memory controller drivers. - Minor updates for Renesas, TI, Amlogic, Apple, Broadcom, Tegra, Allwinner, Versatile Express, Canaan, Microchip, Mediatek and i.MX SoC drivers, mainly updating the use of MODULE_LICENSE() macros and obsolete DT driver interfaces. -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmRGmncACgkQYKtH/8kJ Uif6ghAAw1TiPTJzJLLCNx+txOVFB62WDglv3T1CufjfcWp0Eh0RJSCcsCOPV+/7 UHi4+X4nPAcudeOFMFtslCR8ExLRWY4j7t2ZYo/k+VI3jdB8Qkbr6NAQgAuRdLYX WZ1cV6o76B3bhO2HqSVNVZ8/3Z7OAYw4j9VDD/4AbW+l3GyentlQTjabpJNREvSS 5HzT3ZI33o7M8mM4uYmmEXVrg8sCupbRyL9S7jTiFXRLcfqujclhfezJ4UrJJv7b wxGf+e2YNMqKH6PiKYufzN1TYI2D0YQeB1m56Y9FsAKxgAyHh2xWpsHeyVnaw0jc KaKjRN/H3JDlW/VCMAjQOIShCZdAs02xHnEXxY6pKLMM6i8/FkzzNIxNQwXrx5KH zYESXVd6suOI0eCZT8zkKKLHRT5EJRaliUv5Z+Qp2BBe3vJVZD0JqSlZ7lOznplF lviwL6ydAMr2cfTgfMxbRiYQVDzncFkfnR3t55SC6rYjGt6QWjeS0dDbGHf4WVC4 FDbnST4JaBmi+frh55VooX7EpzIv9wa0/taayaChd9qvXnh22uqaqho1sPYKZ6BI OXduHQ3qojJhKKKK1VJKzN5Ef3OHLQLNrvcc1DsKILrrES4w4LX1C9dmyh2CLXLo q5cX6L1iB1Hx5tujalDYBsHBBmbiT/1tNM2S7pAGigiGy4KEc28= =r6jm -----END PGP SIGNATURE----- Merge tag 'soc-drivers-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc Pull ARM SoC driver updates from Arnd Bergmann: "The most notable updates this time are for Qualcomm Snapdragon platforms. The Inline-Crypto-Engine gets a new DT binding and driver, and a number of drivers now support additional Snapdragon variants, in particular the rsc, scm, geni, bwm, glink and socinfo, while the llcc (edac) and rpm drivers get notable functionality updates. Updates on other platforms include: - Various updates to the Mediatek mutex and mmsys drivers, including support for the Helio X10 SoC - Support for unidirectional mailbox channels in Arm SCMI firmware - Support for per cpu asynchronous notification in OP-TEE firmware - Minor updates for memory controller drivers. - Minor updates for Renesas, TI, Amlogic, Apple, Broadcom, Tegra, Allwinner, Versatile Express, Canaan, Microchip, Mediatek and i.MX SoC drivers, mainly updating the use of MODULE_LICENSE() macros and obsolete DT driver interfaces" * tag 'soc-drivers-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (165 commits) soc: ti: smartreflex: Simplify getting the opam_sr pointer bus: vexpress-config: Add explicit of_platform.h include soc: mediatek: Kconfig: Add MTK_CMDQ dependency to MTK_MMSYS memory: mtk-smi: mt8365: Add SMI Support dt-bindings: memory-controllers: mediatek,smi-larb: add mt8365 dt-bindings: memory-controllers: mediatek,smi-common: add mt8365 memory: tegra: read values from correct device dt-bindings: crypto: Add Qualcomm Inline Crypto Engine soc: qcom: Make the Qualcomm UFS/SDCC ICE a dedicated driver dt-bindings: firmware: document Qualcomm QCM2290 SCM soc: qcom: rpmh-rsc: Support RSC v3 minor versions soc: qcom: smd-rpm: Use GFP_ATOMIC in write path soc/tegra: fuse: Remove nvmem root only access soc/tegra: cbb: tegra194: Use of_address_count() helper soc/tegra: cbb: Remove MODULE_LICENSE in non-modules ARM: tegra: Remove MODULE_LICENSE in non-modules soc/tegra: flowctrl: Use devm_platform_get_and_ioremap_resource() soc: tegra: cbb: Drop empty platform remove function firmware: arm_scmi: Add support for unidirectional mailbox channels dt-bindings: firmware: arm,scmi: Support mailboxes unidirectional channels ... |
||
Etienne Carriere
|
654d031000 |
optee: fix uninited async notif value
Fixes an uninitialized variable in irq_handler() that could lead to unpredictable behavior in case OP-TEE fails to handle SMC function ID OPTEE_SMC_GET_ASYNC_NOTIF_VALUE. This change ensures that in that case get_async_notif_value() properly reports there are no notification event. Reported-by: kernel test robot <lkp@intel.com> Link: https://lore.kernel.org/r/202304200755.OoiuclDZ-lkp@intel.com/ Reported-by: Dan Carpenter <error27@gmail.com> Link: https://lore.kernel.org/all/d9b7f69b-c737-4cb3-8e74-79fe00c934f9@kili.mountain/ Fixes: 6749e69c4dad ("optee: add asynchronous notifications") Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Arnd Bergmann
|
283480f0ce |
Add SMC for OP-TEE image loading
Adds an SMC call for loading OP-TEE by the kernel. -----BEGIN PGP SIGNATURE----- iQJOBAABCgA4FiEEFV+gSSXZJY9ZyuB5LinzTIcAHJcFAmQtD1YaHGplbnMud2lr bGFuZGVyQGxpbmFyby5vcmcACgkQLinzTIcAHJeQ5Q//TVvz/RVC+gWh2Bppyo3A WARXP8LYODsFQ6EZOBVXbEtesDYFUMWUEcYVDGWxFvhUs6w4qX8XpjX8OWpS4frj VDVj5Sm2QYcvCcWN5s6vNG6LcFQPywgBCLCnfgzLeNoFHpKznMOYTC2YT9sPudKS 1rqep4po7NoH1N09RGLwYYQijHaoIKE4pfqRS5FOLNGkcMS5fuIwvvOZrRosC+vi sGlERX8SFjSLmgH+IuLSYTLMA7GwsDwnRTzZD+E1OaJquLoYrWunTIk+LwJvTXWM L2fpFODzLGpkvylsEGFVqXOIogjrxcXw7ze2RkS5DJQIuF1ZXGLwwESgQQrTyrPZ v3y+8ASxO9l82vPd7rEG9lt4LDWtLEDdVLSCOTVTzdNh+ZbdhzT1giSFuO/gqrOM IzJy0Gg+nqUNH+9Z0xdRnZYpNOxmVDADx/QR1A8AFS0v8t44orqjyJ07Sqq9UCUy 2MCXVp4lgODNTpjqgw06uo3hkwQ/0d0oezr+t0niaYGWVnwlRM/XFrp4Pr+VLe56 d2HS4zTbQNAmVx+ZdbropSNjAr52/ouG9VDXjmHZ7zIRxeDGsIhI4IYVZuSeLB6J t4oAM2bkfmuP4B8V+2Qehdh5/d6PDgePT624hMt1FXfHaaujlblIYF89lcDI/wQ9 fm7hDvKVuHAofFiSU6fWu7g= =TODn -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmQugJUACgkQmmx57+YA GNkU2xAAmEFtp5ZkRArbE0CJ/k0evCfOmS8TxBBmqYXbSMJ0+SrMJEfTh74HhKB6 iucNHC0ORs2k/41u67WWLrKm0P0cS6pgQx7HJrkXviJ/OEClq9sJTZgmONbvXbrw smUCmjPrbG2mIj8QHEI2I0QugTRNmZGQjg8PLRul77N5rmuPpYcOpQ3puq/NkNE8 kOgNcCVqOX2uZGW7ONFXpsw39JdwuZZunWj3OqrN5VHJx79FF1wU5bqmVTWGFPmN 2ou+iZpg+06oEcIoO5BJ4F+4LMfQRbl4YnWExVOdhj0O2LzN+TjLXVkB7ixC3EjV HFpAgRDPEFwRGBH6OzrFh8EeKZ2uyuu1auhbgmeg8lZoZPbXTO9xXy8G5po+mr30 2VGqYl2tKThAgFixQj3Vfdbz/9q0LniFWTLk4SwdoowZNiyhlR706EleHPRW8i4g 0pwZvTeXDu/h3UBi3hWlapxCjAF8Y81bF392oFORyGNlKLmmgJjeMtwwWqV6mM0R ipZjKb0Um7cLeUa1uPTXHR+UrEsJMg5QiE1sLneb+jjy2iYiYqo0niuEJV5NSbxD I0+dplMa5tNngW8Z6hLYK+r2aQ1eG68LlVGnb98DQiIOAbSVwlmBy8l0KnL/qF/E JqWuDVGbY781pHBrgh3cotdzx88DKpc6NW2ATxafsyw3QnqURAw= =gDeP -----END PGP SIGNATURE----- Merge tag 'optee-load-for-v6.4' of https://git.linaro.org/people/jens.wiklander/linux-tee into soc/drivers Add SMC for OP-TEE image loading Adds an SMC call for loading OP-TEE by the kernel. * tag 'optee-load-for-v6.4' of https://git.linaro.org/people/jens.wiklander/linux-tee: tee: optee: Add SMC for loading OP-TEE image Link: https://lore.kernel.org/r/20230405062701.GA3391925@rayden Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
||
Arnd Bergmann
|
a3c40af4a7 |
Add explicit cast to (void *) for virt_to_page() argument
-----BEGIN PGP SIGNATURE----- iQJOBAABCgA4FiEEFV+gSSXZJY9ZyuB5LinzTIcAHJcFAmQlfjcaHGplbnMud2lr bGFuZGVyQGxpbmFyby5vcmcACgkQLinzTIcAHJdc8A//S10Skr5sxDCtdO+4OW54 3NK1yZvUgL3nqKDTrvfuc1LOGwAfnau3clcvBybm1rYh1laF3q+cmDovWcCJ3d/P Jtfa450IaL61wFOVmRDmchVXehNuiElJolhaFdUgjESAEDjyFSR0cCvLgSsmQzVf F3J0AJA8nJGMmZmnaHqAiFrs4S1dO0wH5UVmX/3/sqtR+Ox3BYzo8OtEHp8uvBBM fyrv7s48H3jC0XwDbTac4bdntbwkTnbn11GWXi98GVG8pj4xlZW4LPNVL52/JpOL ff/14yhJobz2NXQjbFPOlIBCBm9ejAllX//LrM+f3LRzt1TTZ6ih4gWaJUjM2YVG j2WZZYpfKUfxM6dy8iuuv2MdatIp+0z0wniTNLevrRgXb7D54P2rX8wzilyzD97M JMGFqt8zywLw/tA7tVTJbcpRuvN0nmASVrn9WF5PMxd3ogDcdC4bYoNqkd4qylSe 1hMe1QMF+j/CCS8fwCCbhfuqIvTnfCca7akWsljuln5VgS0xuBbvsX6l1iN6bvSf m6Qcolt+tk4QQGZFXCQiN3oXr6ZZu39BfvjonSFVdA1VYMtBECp1XF/fTR/TlD/I YY03D+E8GtIVkgD7fCLZsSJP1oQJ2FtaRk4GZghQdqNEb5JKtxd0YILAFNtbGVnv IlOIvqS4YXli84aHnrlidZE= =tCCS -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmQq9pkACgkQmmx57+YA GNlRvBAAtxMWsNm+/FD+rqroxTiCriW3i18oq+0DM9rXeKojrVQ0SZQzf7/RgJ43 UuqVfWP9fyjbU/HcYS7IJh9Zw2FDEeITw2HHGjo5NHksU/yq2hOMRMV0yVbTA6rh XJTplsfOHLmhI5rZRU7GI+Q2H8nutI0yDeajscMbTJiVBhGvord3+45DtrwsyylY YyHkpU1F6kzpruv+lNG5UV062eXnNcbkPhZufoeQv6rCfalhlFBZ4Ks4xeV5gg00 EjVS0xWXnlkyZolMtnldSele7qp0d7RaGAO1nHjZZGSJPwZ/dMYeH0iaWm4haAVp 6A37I/RD+hWnWfywDPRBJZ4nqZKsQhlTXJ19aywktLuTiBCxVREmvunWmvr/tDxm Wb+cQAjpZRopsQy5/MC81FD7VQR8/6Hze/ygeC8yCM2psnzm8004DSzQyo0iYL23 4ILQ6/IzFj++fZ3YSd1InWXAm8NsDchPl2hWdOvb8LaOhNiO+ef1twxAQ2gBrTRn vy3essMDIRYhEpCNOVAW3cPrf2mwORFjhuYo4D9DSy0+fOPr0B97iqT+LIHqY8fO RY0LBl9l+8aFNAuIL0iSfl1LAg+e/bwpjKuq50emLyTQSQlytJv6cvnxJ/JAJbJq yqIdcwqfhR6vMvxlxwcPA6faJKcO+WO0Yhf464ZOQlNNaGcW2rg= =uXgt -----END PGP SIGNATURE----- Merge tag 'tee-fix-for-v6.3' of https://git.linaro.org/people/jens.wiklander/linux-tee into arm/fixes Add explicit cast to (void *) for virt_to_page() argument * tag 'tee-fix-for-v6.3' of https://git.linaro.org/people/jens.wiklander/linux-tee: tee: Pass a pointer to virt_to_page() Link: https://lore.kernel.org/r/20230330124804.GA1943242@rayden Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
||
Arnd Bergmann
|
167fba62c3 |
Fixes a spell error in an error message in the OP-TEE driver
-----BEGIN PGP SIGNATURE----- iQJOBAABCgA4FiEEFV+gSSXZJY9ZyuB5LinzTIcAHJcFAmQQu50aHGplbnMud2lr bGFuZGVyQGxpbmFyby5vcmcACgkQLinzTIcAHJdwmhAAqlE3IZ5lIZIKl9kQOp9o QYZRrMw9aX5OEMGQMgVr75w0H1sN3cORnWWfV+Aw4U+m1HQLUMFecq5U84F8Cyz8 GpzyE4egxpsyrJrT4jYo5WpLXcuVpwLRfHIxCPlM2morj8Rn3DF25mNQ2XmvRNTu Mw6fbTGbvqyBunv4oMCDerpddYPoOb9wyha+2hww2hy7gFXa1Q/+EB22wA/NzYsY m956fUYEvHQc/ooKG+znRSNRB7xlicrZX7zkd3cqrZw1C9iEmDeb70d0PpdpQvAr S3dg60NQ1dl7NmJdDmdaUchU/g3IBeTJRsazWNnu8sj/zEp9f2F4CaW8EyRwuXb9 SMmlbMp1rGp9BXDDxonR91yv1cT+JexS/SzvR4PW5AeCohd1vUg3fRKBm1gB50At u6LdfFRpTruDdoc05dHkwyk4xTriCUICgSbhp70/HAm+FX07mJDl/5WYKWb6Iu5U ywLfsnnEEsW+d4Glx+m1f7eRmnSBYhv4qQho6wLnTO/Q++tssg/u46jOYhFcXb9l 5CtZfCUF1FmPAiYpQhdXbhUMTCjhU2nxmeTmJ0h36hwTOml0D/deyBiLPqy00PIk 4a6EKJFtOGmRdl2uIavmsRXkVpxiin/p0DviGEKORkFU4YRFeXPW3PrpWtezgXyS fJjcxmoLL0CkHs0DfdCmYjY= =vDAV -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmQq9dgACgkQmmx57+YA GNk+NhAAoDhq6otHBIpNmyTJwHj2HDrCeRY6RbBh3hUgPHXPabCwPtZZP6FdfxtX cQG4GN9bt4hSdsbea6qUA0otYpyO6V+rtLXiVIM3l762xUkr+GcekYssQpVI2sIr gO/2dnuh2WzYQUblGdSsMdrIbUDIHupcIWlVXSmaaXCyNXAkgrLj0laqkgG2pQx7 cQB5H2pZySUnPtIxo7g/EOEhB+MRjPvH6bN0q7TcTbYAEHgsdwkbHiq9awWlGHwC cpP/6oTXAeeFqDD6Gt6TBC+WFgcIyoCIYbnlx80A3QH9PLMpyVFW9E/piAVnrfBs +wQC8BU/7FWtpFupjAE0BjvZVeYDeV8tALg4/+dlQBKsWibRQbXYZSbTe1QH9uqr YummrvbPwv2572zSIMIp+E/VFim8fRFe1wYK67C0EBIMj49P913T8jGNARr1mKlR L7Heh+wC5bEqklFydakIUpOEVjzV9lSY1f3akp8bsuDuEQ5ucbiEKNIdbt6wgI7X Ovck/GqqSaguSNaYxPDTMDFSiBQNR6Sc2oWo2I+/fQFMP5HynFR0XqZokzru3g8k dGTjY1FXZub+HzeSujKfIobB+yyP5MQqhSsMk3AtRSwdFioamk+PZT5iSW2//M+F 99hv6J5syTbY9hoVOGRd1Nji5s8CK7OYWdX1p40csGJORopDfY8= =jVgI -----END PGP SIGNATURE----- Merge tag 'optee-fix-for-v6.3' of https://git.linaro.org/people/jens.wiklander/linux-tee into arm/fixes Fixes a spell error in an error message in the OP-TEE driver * tag 'optee-fix-for-v6.3' of https://git.linaro.org/people/jens.wiklander/linux-tee: tee: optee: Fix typo Unuspported -> Unsupported Link: https://lore.kernel.org/r/20230314184441.GA2936721@rayden Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
||
Greg Kroah-Hartman
|
cd8fe5b6db |
Merge 6.3-rc5 into driver-core-next
We need the fixes in here for testing, as well as the driver core changes for documentation updates to build on. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
||
Jeffrey Kardatzke
|
f3040daab8 |
tee: optee: Add SMC for loading OP-TEE image
Adds an SMC call that will pass an OP-TEE binary image to EL3 and instruct it to load it as the BL32 payload. This works in conjunction with a feature added to Trusted Firmware for ARMv8 and above architectures that supports this. The main purpose of this change is to facilitate updating the OP-TEE component on devices via a rootfs change rather than having to do a firmware update. Further details are linked to in the Kconfig file. Signed-off-by: Jeffrey Kardatzke <jkardatzke@chromium.org> Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Jeffrey Kardatzke <jkardatzke@google.com> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Linus Walleij
|
8671133082 |
tee: Pass a pointer to virt_to_page()
Like the other calls in this function virt_to_page() expects a pointer, not an integer. However since many architectures implement virt_to_pfn() as a macro, this function becomes polymorphic and accepts both a (unsigned long) and a (void *). Fix this up with an explicit cast. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Etienne Carriere
|
b3b4ced12c |
optee: add per cpu asynchronous notification
Implements use of per-cpu irq for optee asynchronous notification. Existing optee async notif implementation allows OP-TEE world to raise an interrupt on which Linux optee driver will query some pending events. This change allows the signaling interrupt to be a per-cpu interrupt as with Arm GIC PPIs. Using a PPI instead of an SPI is useful when no GIC lines are provisioned in the chip design and there are spare PPI lines. Cc: Jens Wiklander <jens.wiklander@linaro.org> Cc: Sumit Garg <sumit.garg@linaro.org> Cc: Marc Zyngier <maz@kernel.org> Co-developed-by: Alexandre Torgue <alexandre.torgue@foss.st.com> Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Sumit Garg <sumit.garg@linaro.org> [JW: fixing a spell error in @notif_pcpu_wq description] Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Arnd Bergmann
|
98dba5886b |
AMDTEE fix race condition in amdtee_open_session()
-----BEGIN PGP SIGNATURE----- iQJOBAABCgA4FiEEFV+gSSXZJY9ZyuB5LinzTIcAHJcFAmP+V3waHGplbnMud2lr bGFuZGVyQGxpbmFyby5vcmcACgkQLinzTIcAHJfm2Q//fvm7SE3yphSez9Q+HTk/ ahGxSypDLZyTGSR+iiS0QPvSfDWQzvZnBcJeRxxwgfT8JJiK1VJmP9Jpn5X0lnyM 8fLPR/GK7AzjxA+YQXF1HCyvoYYWCPb9SfaxLeSQDv1fL3yqh3AbKfUr7C7fU+zd 0wMa/tWydEWpVNEx/D61/XB28HAtDWx4LZJl5mQQqkT7PA5EdwlpWNjmZFwAxNuA 5ixitcpmykIDSEpPhgwcdKPcTewXtS2U08L6jAcE/SoPdhOqDm+6n0UElB4SBPQa g6bUhIq6CMeIYdiXZ6D9g9oTQX8AgLbI4iLogAIY0wuJ6MFFk3CLP0E76FXO3VkR HH8ZYV1jJsXC4YOvPUKHyKNY0PIlPPBTPrS+1EHJDDyU5+ERMLw4LeEdqicpNKta RCQ4bb5shx+aeXMFEmNLU5tsXhK9s4v3QPGWY+zYwNBmpKtRwiNOanJAUlOlB4RF FVGVHMr3xn6QWsocus0F72kO3uHfeFur/pcQwF0Jegz7ymjgskUws6MC+SGDGbJ9 gDxW74UxaneMCr+xsCXEDYR0jm7iHjLFE5UU7qBvOx0hmMDzrvmPnav8cDXbe3O9 jS+JiotIteLVSVg65qe2sZZtAn9ZuI5KfjX8rh/W/dlYHJVLeLEVEEQnObuUdyNy 6Fm8gz1fe3+zjFA14x6JeF8= =y1W1 -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmQUeYcACgkQmmx57+YA GNmlBg/9GZGQesElPBTwFk63/jJ9Y9Vd2WsTeCQUYull3keByTJlEZSVulZE0teo xY+nQ8e1YTxpCGqYrdTaTbmcbRcLhLS2HhUVLR1TzoGygiG5SYfoYwsu67L5oRYQ lQZU67sjYY4L1KrH6HnTqww2hPHpiiEhESYlp5shI4WtfCTn6QyJluC+ZSMHGLED MmVXbdoEOfxvefw4Nvy9thJ8cMWaM74nCGOgSWEHfNPHpcGEqVUEIy4MqTJCU+B1 u2oDZN52LmvUgnHbgquGmuv14oFT9ZnjTF9ddyKrhxs2ts8LgEl/qYp+8AsmP2KM D/CkRikZCWPbhy8hRJGMp4d8INlBaH+k1fsQeRbljYCp5LHsVUXLQVFiRqR4+RdX WZhSgs768cJwJG0EDQwycOahbzUkdIqXfWmHhyS7b5RWGwULHl1thW+TT0o+O96v aZDUuaKj5/ylTmbyHKOMkpOQuYjlPm40YsdJNUxL5ZI8WBwa691L07UA2vcFcwrl jo2T3mBovAYxWMEysOQYez2lEsqtvUmpzfTKdcvDFgSSzSeGhftGbmJsJ/K00qmz wiPTfYLWNBBjAdYFZWr+nDiTHjUMA+/sdvUvl5823tGGUU35xNp81X1Q6tDJ+3ly p3RMF9wWa8TE0fwBrIjAwn/vIbYfJRA+3J8XcZl/DHW8xMASOB4= =tSWI -----END PGP SIGNATURE----- Merge tag 'amdtee-fix-for-v6.3' of https://git.linaro.org/people/jens.wiklander/linux-tee into soc-fixes AMDTEE fix race condition in amdtee_open_session() * tag 'amdtee-fix-for-v6.3' of https://git.linaro.org/people/jens.wiklander/linux-tee: tee: amdtee: fix race condition in amdtee_open_session Link: https://lore.kernel.org/r/Y/5ZGX0lSTnZz27E@rayden Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
||
Greg Kroah-Hartman
|
1aaba11da9 |
driver core: class: remove module * from class_create()
The module pointer in class_create() never actually did anything, and it shouldn't have been requred to be set as a parameter even if it did something. So just remove it and fix up all callers of the function in the kernel tree at the same time. Cc: "Rafael J. Wysocki" <rafael@kernel.org> Acked-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Link: https://lore.kernel.org/r/20230313181843.1207845-4-gregkh@linuxfoundation.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
||
Mario Limonciello
|
ae7d45fb7c |
crypto: ccp - Add a header for multiple drivers to use __psp_pa
The TEE subdriver for CCP, the amdtee driver and the i2c-designware-amdpsp drivers all include `psp-sev.h` even though they don't use SEV functionality. Move the definition of `__psp_pa` into a common header to be included by all of these drivers. Reviewed-by: Jan Dabros <jsd@semihalf.com> Acked-by: Jarkko Nikula <jarkko.nikula@linux.intel.com> # For the drivers/i2c/busses/i2c-designware-amdpsp.c Acked-by: Sumit Garg <sumit.garg@linaro.org> # For TEE subsystem bits Acked-by: Tom Lendacky <thomas.lendacky@amd.com> Acked-by: Sean Christopherson <seanjc@google.com> # KVM Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> |
||
Jules Maselbas
|
172fa6366c |
tee: optee: Fix typo Unuspported -> Unsupported
Fix typo Unuspported -> Unsupported Signed-off-by: Jules Maselbas <jmaselbas@kalray.eu> Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Rijo Thomas
|
f8502fba45 |
tee: amdtee: fix race condition in amdtee_open_session
There is a potential race condition in amdtee_open_session that may lead to use-after-free. For instance, in amdtee_open_session() after sess->sess_mask is set, and before setting: sess->session_info[i] = session_info; if amdtee_close_session() closes this same session, then 'sess' data structure will be released, causing kernel panic when 'sess' is accessed within amdtee_open_session(). The solution is to set the bit sess->sess_mask as the last step in amdtee_open_session(). Fixes: 757cc3e9ff1d ("tee: add AMD-TEE driver") Cc: stable@vger.kernel.org Signed-off-by: Rijo Thomas <Rijo-john.Thomas@amd.com> Acked-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Linus Torvalds
|
a93e884edf |
Driver core changes for 6.3-rc1
Here is the large set of driver core changes for 6.3-rc1. There's a lot of changes this development cycle, most of the work falls into two different categories: - fw_devlink fixes and updates. This has gone through numerous review cycles and lots of review and testing by lots of different devices. Hopefully all should be good now, and Saravana will be keeping a watch for any potential regression on odd embedded systems. - driver core changes to work to make struct bus_type able to be moved into read-only memory (i.e. const) The recent work with Rust has pointed out a number of areas in the driver core where we are passing around and working with structures that really do not have to be dynamic at all, and they should be able to be read-only making things safer overall. This is the contuation of that work (started last release with kobject changes) in moving struct bus_type to be constant. We didn't quite make it for this release, but the remaining patches will be finished up for the release after this one, but the groundwork has been laid for this effort. Other than that we have in here: - debugfs memory leak fixes in some subsystems - error path cleanups and fixes for some never-able-to-be-hit codepaths. - cacheinfo rework and fixes - Other tiny fixes, full details are in the shortlog All of these have been in linux-next for a while with no reported problems. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> -----BEGIN PGP SIGNATURE----- iG0EABECAC0WIQT0tgzFv3jCIUoxPcsxR9QN2y37KQUCY/ipdg8cZ3JlZ0Brcm9h aC5jb20ACgkQMUfUDdst+ynL3gCgwzbcWu0So3piZyLiJKxsVo9C2EsAn3sZ9gN6 6oeFOjD3JDju3cQsfGgd =Su6W -----END PGP SIGNATURE----- Merge tag 'driver-core-6.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core Pull driver core updates from Greg KH: "Here is the large set of driver core changes for 6.3-rc1. There's a lot of changes this development cycle, most of the work falls into two different categories: - fw_devlink fixes and updates. This has gone through numerous review cycles and lots of review and testing by lots of different devices. Hopefully all should be good now, and Saravana will be keeping a watch for any potential regression on odd embedded systems. - driver core changes to work to make struct bus_type able to be moved into read-only memory (i.e. const) The recent work with Rust has pointed out a number of areas in the driver core where we are passing around and working with structures that really do not have to be dynamic at all, and they should be able to be read-only making things safer overall. This is the contuation of that work (started last release with kobject changes) in moving struct bus_type to be constant. We didn't quite make it for this release, but the remaining patches will be finished up for the release after this one, but the groundwork has been laid for this effort. Other than that we have in here: - debugfs memory leak fixes in some subsystems - error path cleanups and fixes for some never-able-to-be-hit codepaths. - cacheinfo rework and fixes - Other tiny fixes, full details are in the shortlog All of these have been in linux-next for a while with no reported problems" [ Geert Uytterhoeven points out that that last sentence isn't true, and that there's a pending report that has a fix that is queued up - Linus ] * tag 'driver-core-6.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (124 commits) debugfs: drop inline constant formatting for ERR_PTR(-ERROR) OPP: fix error checking in opp_migrate_dentry() debugfs: update comment of debugfs_rename() i3c: fix device.h kernel-doc warnings dma-mapping: no need to pass a bus_type into get_arch_dma_ops() driver core: class: move EXPORT_SYMBOL_GPL() lines to the correct place Revert "driver core: add error handling for devtmpfs_create_node()" Revert "devtmpfs: add debug info to handle()" Revert "devtmpfs: remove return value of devtmpfs_delete_node()" driver core: cpu: don't hand-override the uevent bus_type callback. devtmpfs: remove return value of devtmpfs_delete_node() devtmpfs: add debug info to handle() driver core: add error handling for devtmpfs_create_node() driver core: bus: update my copyright notice driver core: bus: add bus_get_dev_root() function driver core: bus: constify bus_unregister() driver core: bus: constify some internal functions driver core: bus: constify bus_get_kset() driver core: bus: constify bus_register/unregister_notifier() driver core: remove private pointer from struct bus_type ... |
||
Ira Weiny
|
0249a75b36 |
tee: Remove call to get_kernel_pages()
The kernel pages used by shm_get_kernel_pages() are allocated using GFP_KERNEL through the following call stack: trusted_instantiate() trusted_payload_alloc() -> GFP_KERNEL <trusted key op> tee_shm_register_kernel_buf() register_shm_helper() shm_get_kernel_pages() Where <trusted key op> is one of: trusted_key_unseal() trusted_key_get_random() trusted_key_seal() Because the pages can't be from highmem get_kernel_pages() boils down to a get_page() call. Remove the get_kernel_pages() call and open code the get_page(). In case a highmem page does slip through warn on once for a kmap'ed address. Cc: Jens Wiklander <jens.wiklander@linaro.org> Cc: Al Viro <viro@zeniv.linux.org.uk> Cc: "Fabio M. De Francesco" <fmdefrancesco@gmail.com> Cc: Christoph Hellwig <hch@lst.de> Cc: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Ira Weiny <ira.weiny@intel.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Ira Weiny
|
c83900393a |
tee: Remove vmalloc page support
The kernel pages used by shm_get_kernel_pages() are allocated using GFP_KERNEL through the following call stack: trusted_instantiate() trusted_payload_alloc() -> GFP_KERNEL <trusted key op> tee_shm_register_kernel_buf() register_shm_helper() shm_get_kernel_pages() Where <trusted key op> is one of: trusted_key_unseal() trusted_key_get_random() trusted_key_seal() Remove the vmalloc page support from shm_get_kernel_pages(). Replace with a warn on once. Cc: Al Viro <viro@zeniv.linux.org.uk> Cc: "Fabio M. De Francesco" <fmdefrancesco@gmail.com> Cc: Christoph Hellwig <hch@lst.de> Cc: Linus Torvalds <torvalds@linux-foundation.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Ira Weiny <ira.weiny@intel.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Greg Kroah-Hartman
|
2a81ada32f |
driver core: make struct bus_type.uevent() take a const *
The uevent() callback in struct bus_type should not be modifying the device that is passed into it, so mark it as a const * and propagate the function signature changes out into all relevant subsystems that use this callback. Acked-by: Rafael J. Wysocki <rafael@kernel.org> Acked-by: Hans de Goede <hdegoede@redhat.com> Link: https://lore.kernel.org/r/20230111113018.459199-16-gregkh@linuxfoundation.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
||
Linus Torvalds
|
8e17b16a2c |
SoC driver updates for 6.2
There are few major updates in the SoC specific drivers, mainly the usual reworks and support for variants of the existing SoC. While this remains Arm centric for the most part, the branch now also contains updates to risc-v and loongarch specific code in drivers/soc/. Notable changes include: - Support for the newly added Qualcomm Snapdragon variants (MSM8956, MSM8976, SM6115, SM4250, SM8150, SA8155 and SM8550) in the soc ID, rpmh, rpm, spm and powerdomain drivers. - Documentation for the somewhat controversial qcom,board-id properties that are required for booting a number of machines - A new SoC identification driver for the loongson-2 (loongarch) platform - memory controller updates for stm32, tegra, and renesas. - a new DT binding to better describe LPDDR2/3/4/5 chips in the memory controller subsystem - Updates for Tegra specific drivers across multiple subsystems, improving support for newer SoCs and better identification - Minor fixes for Broadcom, Freescale, Apple, Renesas, Sifive, TI, Mediatek and Marvell SoC drivers -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmOSAZ8ACgkQmmx57+YA GNmoDw/9Hdz2rx6TtdjA2eMKFt97bK0EgrQADT1d4lPQzXzZzFDC9ZxL0bwZRujZ b8Q6WrMMgcRiWmzmRlxQWMWEdBU8Y0OzeYlo4lbyCSOV+UA2OA/eu6rm0chapBgM 1/lkquYLUUcB31wg+NmADoKy5Ejxj9SL1Va36Nvng4YpHDrYHKt4gPyCr/EV+KRO Q8JpH7vEzQ0P5CGUzeri2UlYWDdF1GXmObqQGF8pq9s6Qz4ACe63r+eJFXAQFiXK xewRK7PuvqmQWLVaEnN8dAcSna5P4aIGKOVjQyZjCCp6qTvfm4d2hxTl4dt9gVtt vbQPiPQ5ORRzeMmW6wHxSIdy2QCa9CKQDXuMRoOWHfGMrAZQaxruISpcmHYv9Ug+ nSfedIEtxtmpGK2SZ1Mvndkezbb0o5QXZF4+kxqpiE/EaxVWmxiecmrUqyvJ5RVv RuaZeMQpeOaWElnxb2P/T5uLuoHGhDdZ98HXICuCWPAitvA2rRK4Rv3dqTeclPLa HR9gVYgZK3CSj+e9xbe5uczIc664bscRl9unghtB3UWkGTiLt2rroX4T2pTU/2xf YvzDHC+f42NEkXUzcs4cZ87R8iY2hr0LmePY5/lqF9k6qx0Rc3syNc7q4N4EBxGC 2y5dDpKXfFL6fEV4YNeGpNcrwmCwnNppcePjmNvgrdtqmUUB/mY= =heNV -----END PGP SIGNATURE----- Merge tag 'soc-drivers-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc Pull ARM SoC driver updates from Arnd Bergmann: "There are few major updates in the SoC specific drivers, mainly the usual reworks and support for variants of the existing SoC. While this remains Arm centric for the most part, the branch now also contains updates to risc-v and loongarch specific code in drivers/soc/. Notable changes include: - Support for the newly added Qualcomm Snapdragon variants (MSM8956, MSM8976, SM6115, SM4250, SM8150, SA8155 and SM8550) in the soc ID, rpmh, rpm, spm and powerdomain drivers. - Documentation for the somewhat controversial qcom,board-id properties that are required for booting a number of machines - A new SoC identification driver for the loongson-2 (loongarch) platform - memory controller updates for stm32, tegra, and renesas. - a new DT binding to better describe LPDDR2/3/4/5 chips in the memory controller subsystem - Updates for Tegra specific drivers across multiple subsystems, improving support for newer SoCs and better identification - Minor fixes for Broadcom, Freescale, Apple, Renesas, Sifive, TI, Mediatek and Marvell SoC drivers" * tag 'soc-drivers-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (137 commits) soc: qcom: socinfo: Add SM6115 / SM4250 SoC IDs to the soc_id table dt-bindings: arm: qcom,ids: Add SoC IDs for SM6115 / SM4250 and variants soc: qcom: socinfo: Add SM8150 and SA8155 SoC IDs to the soc_id table dt-bindings: arm: qcom,ids: Add SoC IDs for SM8150 and SA8155 dt-bindings: soc: qcom: apr: document generic qcom,apr compatible soc: qcom: Select REMAP_MMIO for ICC_BWMON driver soc: qcom: Select REMAP_MMIO for LLCC driver soc: qcom: rpmpd: Add SM4250 support dt-bindings: power: rpmpd: Add SM4250 support dt-bindings: soc: qcom: aoss: Add compatible for SM8550 soc: qcom: llcc: Add configuration data for SM8550 dt-bindings: arm: msm: Add LLCC compatible for SM8550 soc: qcom: llcc: Add v4.1 HW version support soc: qcom: socinfo: Add SM8550 ID soc: qcom: rpmh-rsc: Avoid unnecessary checks on irq-done response soc: qcom: rpmh-rsc: Add support for RSC v3 register offsets soc: qcom: rpmhpd: Add SM8550 power domains dt-bindings: power: rpmpd: Add SM8550 to rpmpd binding soc: qcom: socinfo: Add MSM8956/76 SoC IDs to the soc_id table dt-bindings: arm: qcom,ids: Add SoC IDs for MSM8956 and MSM8976 ... |
||
Arnd Bergmann
|
f5014dcd93 |
Add missing __init/__exit annotations to OP-TEE driver
-----BEGIN PGP SIGNATURE----- iQJOBAABCgA4FiEEFV+gSSXZJY9ZyuB5LinzTIcAHJcFAmN3dr0aHGplbnMud2lr bGFuZGVyQGxpbmFyby5vcmcACgkQLinzTIcAHJdc+g//RsMRODDwkJQKECfudD8j LK0g0v5E2fqA23gZG14eD5v9UY6DSRyhL+DDxJGphsd/SlGV0lA5gn51usj7yu1c HFpN1y8k9Z3wYZGDxOnG+C5AR8hpRXsQtPRSd30HrgdHGuZwsNhuYCjQXMXKKYLB +w8/yjFj+3Zw54evs5mWHusyEa/kyldWcXuYXNgF9bxRYfxkj7yOSyPQROFGuzP9 Lr4077Q+/P8nukZ+YubVvnsZ33hlWWykF5nwvhEr1RM7IugCKgEeuj12v2qJfZcR 3ZccZIzk12oatNpX2PDwXlmrP9MvgD/xA86zt6BmPdaxRGm5E3phTMIlSbeS5Qwd jNpn1lUVg7O1R45NoUIdckTekp/vvIfbZuqHIoC0pHVFC0BENQHCLGGY9fo9vdqd fW5tSUmlU69fKqmgf/0gPAXKO7qVbASGNvh4nSf7Gv/qgf3446+Dw23b6kYeLm9j +kIFiAloXQJ9SFxTF2V5gk5PNcFuSLt1gE9y0DZg+WCHza9VZwoDnjmXUiQeyaa0 LSsWd42u1YldAfLN1SZ24h1rCmgOenV/7WrVn16WAf5fgRQVmiutARA7K8d3aue3 TR0sZtw7XGBOTMQWr2nQBOFYVJiM2rynMzLxKD35QHtaFD5fwzJsZvTElqUk7rqc /dDWHQmUlggEnECSJ5aP5Xs= =rzLm -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmN7cSkACgkQmmx57+YA GNnhoA/7BUAXgJqB8ZAWUaFw6HOsKQkltoJxjRK9vkeiHJUKEB5u0w97fHNVondk TqxqhceoB36AYBqOc7FECufcvRbmg80EVihyoH34qL8V+37kN+hU4WagImLAbQTF v2KXbe5X4JA4LTNt0KXWsPcTifkBaa/CVhYYArWxRpT33+WglMiVr7bJhJdXzQfu v7AuYfE+KZzK9aGBJl8gAoXluT59WmgQpxu1PmtsMT8SFeLS4pPYJ16CxjgFL8pW s1JaxJfoXuzDzqvUwknRzxxmcAYBI+HR8Cq4znlRaQJj4bKgaZhdMThrbJ9G2yqS 7LtesfMLmBNJS7jlkLG4d12PvNgE21Kc0IrhJan2nesqiYEgn6WQngGb7Qx8niG2 +5IZEY9Xdsvi6K6dFP3d1yUSl0yMP30HWo3puoiFsLoS5BWXJ48gXdbdTpF2170g KMdlJR6MwNoH83ULpRIC8KtchOrr4sJ9jj0B0RLhvlQVbMDI1lRK/BW5Gs0MbvPQ OgwaimDcH9Q3yHWB8K4FDwdAq8SMQxzQw0bO06wZad0nGyZAV9BwHTv9mdsOvGJB UBeYM3133Z9jnWk40Zn3Dk9gmbjokX9BlczGAyCANvqPH2zJTujm5JDrxgujUDkO 9XhkHt8JLmxKZZNWZYcF2I+rCi2eClz7nmxUOP5XvPvTsI0doHY= =EDdl -----END PGP SIGNATURE----- Merge tag 'optee-for-6.2' of https://git.linaro.org/people/jens.wiklander/linux-tee into soc/drivers Add missing __init/__exit annotations to OP-TEE driver * tag 'optee-for-6.2' of https://git.linaro.org/people/jens.wiklander/linux-tee: optee: Add __init/__exit annotations to module init/exit funcs Link: https://lore.kernel.org/r/Y3d4CHWl3Ofx5OrX@jade Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
||
Yang Yingliang
|
cce616e012 |
tee: optee: fix possible memory leak in optee_register_device()
If device_register() returns error in optee_register_device(), the name allocated by dev_set_name() need be freed. As comment of device_register() says, it should use put_device() to give up the reference in the error path. So fix this by calling put_device(), then the name can be freed in kobject_cleanup(), and optee_device is freed in optee_release_device(). Fixes: c3fa24af9244 ("tee: optee: add TEE bus device enumeration support") Signed-off-by: Yang Yingliang <yangyingliang@huawei.com> Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Xiu Jianfeng
|
bd52407221 |
optee: Add __init/__exit annotations to module init/exit funcs
Add missing __init/__exit annotations to module init/exit funcs. Reviewed-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Xiu Jianfeng <xiujianfeng@huawei.com> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> |
||
Linus Torvalds
|
27bc50fc90 |
- Yu Zhao's Multi-Gen LRU patches are here. They've been under test in
linux-next for a couple of months without, to my knowledge, any negative reports (or any positive ones, come to that). - Also the Maple Tree from Liam R. Howlett. An overlapping range-based tree for vmas. It it apparently slight more efficient in its own right, but is mainly targeted at enabling work to reduce mmap_lock contention. Liam has identified a number of other tree users in the kernel which could be beneficially onverted to mapletrees. Yu Zhao has identified a hard-to-hit but "easy to fix" lockdep splat (https://lkml.kernel.org/r/CAOUHufZabH85CeUN-MEMgL8gJGzJEWUrkiM58JkTbBhh-jew0Q@mail.gmail.com). This has yet to be addressed due to Liam's unfortunately timed vacation. He is now back and we'll get this fixed up. - Dmitry Vyukov introduces KMSAN: the Kernel Memory Sanitizer. It uses clang-generated instrumentation to detect used-unintialized bugs down to the single bit level. KMSAN keeps finding bugs. New ones, as well as the legacy ones. - Yang Shi adds a userspace mechanism (madvise) to induce a collapse of memory into THPs. - Zach O'Keefe has expanded Yang Shi's madvise(MADV_COLLAPSE) to support file/shmem-backed pages. - userfaultfd updates from Axel Rasmussen - zsmalloc cleanups from Alexey Romanov - cleanups from Miaohe Lin: vmscan, hugetlb_cgroup, hugetlb and memory-failure - Huang Ying adds enhancements to NUMA balancing memory tiering mode's page promotion, with a new way of detecting hot pages. - memcg updates from Shakeel Butt: charging optimizations and reduced memory consumption. - memcg cleanups from Kairui Song. - memcg fixes and cleanups from Johannes Weiner. - Vishal Moola provides more folio conversions - Zhang Yi removed ll_rw_block() :( - migration enhancements from Peter Xu - migration error-path bugfixes from Huang Ying - Aneesh Kumar added ability for a device driver to alter the memory tiering promotion paths. For optimizations by PMEM drivers, DRM drivers, etc. - vma merging improvements from Jakub Matěn. - NUMA hinting cleanups from David Hildenbrand. - xu xin added aditional userspace visibility into KSM merging activity. - THP & KSM code consolidation from Qi Zheng. - more folio work from Matthew Wilcox. - KASAN updates from Andrey Konovalov. - DAMON cleanups from Kaixu Xia. - DAMON work from SeongJae Park: fixes, cleanups. - hugetlb sysfs cleanups from Muchun Song. - Mike Kravetz fixes locking issues in hugetlbfs and in hugetlb core. -----BEGIN PGP SIGNATURE----- iHUEABYKAB0WIQTTMBEPP41GrTpTJgfdBJ7gKXxAjgUCY0HaPgAKCRDdBJ7gKXxA joPjAQDZ5LlRCMWZ1oxLP2NOTp6nm63q9PWcGnmY50FjD/dNlwEAnx7OejCLWGWf bbTuk6U2+TKgJa4X7+pbbejeoqnt5QU= =xfWx -----END PGP SIGNATURE----- Merge tag 'mm-stable-2022-10-08' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Pull MM updates from Andrew Morton: - Yu Zhao's Multi-Gen LRU patches are here. They've been under test in linux-next for a couple of months without, to my knowledge, any negative reports (or any positive ones, come to that). - Also the Maple Tree from Liam Howlett. An overlapping range-based tree for vmas. It it apparently slightly more efficient in its own right, but is mainly targeted at enabling work to reduce mmap_lock contention. Liam has identified a number of other tree users in the kernel which could be beneficially onverted to mapletrees. Yu Zhao has identified a hard-to-hit but "easy to fix" lockdep splat at [1]. This has yet to be addressed due to Liam's unfortunately timed vacation. He is now back and we'll get this fixed up. - Dmitry Vyukov introduces KMSAN: the Kernel Memory Sanitizer. It uses clang-generated instrumentation to detect used-unintialized bugs down to the single bit level. KMSAN keeps finding bugs. New ones, as well as the legacy ones. - Yang Shi adds a userspace mechanism (madvise) to induce a collapse of memory into THPs. - Zach O'Keefe has expanded Yang Shi's madvise(MADV_COLLAPSE) to support file/shmem-backed pages. - userfaultfd updates from Axel Rasmussen - zsmalloc cleanups from Alexey Romanov - cleanups from Miaohe Lin: vmscan, hugetlb_cgroup, hugetlb and memory-failure - Huang Ying adds enhancements to NUMA balancing memory tiering mode's page promotion, with a new way of detecting hot pages. - memcg updates from Shakeel Butt: charging optimizations and reduced memory consumption. - memcg cleanups from Kairui Song. - memcg fixes and cleanups from Johannes Weiner. - Vishal Moola provides more folio conversions - Zhang Yi removed ll_rw_block() :( - migration enhancements from Peter Xu - migration error-path bugfixes from Huang Ying - Aneesh Kumar added ability for a device driver to alter the memory tiering promotion paths. For optimizations by PMEM drivers, DRM drivers, etc. - vma merging improvements from Jakub Matěn. - NUMA hinting cleanups from David Hildenbrand. - xu xin added aditional userspace visibility into KSM merging activity. - THP & KSM code consolidation from Qi Zheng. - more folio work from Matthew Wilcox. - KASAN updates from Andrey Konovalov. - DAMON cleanups from Kaixu Xia. - DAMON work from SeongJae Park: fixes, cleanups. - hugetlb sysfs cleanups from Muchun Song. - Mike Kravetz fixes locking issues in hugetlbfs and in hugetlb core. Link: https://lkml.kernel.org/r/CAOUHufZabH85CeUN-MEMgL8gJGzJEWUrkiM58JkTbBhh-jew0Q@mail.gmail.com [1] * tag 'mm-stable-2022-10-08' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (555 commits) hugetlb: allocate vma lock for all sharable vmas hugetlb: take hugetlb vma_lock when clearing vma_lock->vma pointer hugetlb: fix vma lock handling during split vma and range unmapping mglru: mm/vmscan.c: fix imprecise comments mm/mglru: don't sync disk for each aging cycle mm: memcontrol: drop dead CONFIG_MEMCG_SWAP config symbol mm: memcontrol: use do_memsw_account() in a few more places mm: memcontrol: deprecate swapaccounting=0 mode mm: memcontrol: don't allocate cgroup swap arrays when memcg is disabled mm/secretmem: remove reduntant return value mm/hugetlb: add available_huge_pages() func mm: remove unused inline functions from include/linux/mm_inline.h selftests/vm: add selftest for MADV_COLLAPSE of uffd-minor memory selftests/vm: add file/shmem MADV_COLLAPSE selftest for cleared pmd selftests/vm: add thp collapse shmem testing selftests/vm: add thp collapse file and tmpfs testing selftests/vm: modularize thp collapse memory operations selftests/vm: dedup THP helpers mm/khugepaged: add tracepoint to hpage_collapse_scan_file() mm/madvise: add file and shmem support to MADV_COLLAPSE ... |