summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* bitbake: Toaster: Test create new project without project nameAlassane Yattara2023-11-091-0/+17
| | | | | | | (Bitbake rev: 2670bacd5b2865ed825d24c96ecd12940218b65e) Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: Toaster: Write UI TestCase create new projectAlassane Yattara2023-11-091-0/+134
| | | | | | | | | | | | Test create new project using: - Project Name: Any string - Release: Master/Kirkstone/Dunfell/Local - Merge Toaster settings: False/True (Bitbake rev: 8502ed9ce3e04e5e0f913a8af60828ac0cefa110) Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: Revert "toaster: Bug-fix webdriver No parameter named options"Richard Purdie2023-11-091-1/+1
| | | | | | | | | This reverts commit 99305c25fafa61064a1bb0849616e4627e3453d7. After discussion we found various versions of selenium don't work with this change. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hashserv: server: Add owner if user is logged inJoshua Watt2023-11-092-0/+12
| | | | | | | | | | If a user is authenticated with the server, report them as the owner of a report (Bitbake rev: a9fd4a45bb6e5ac9832835897f594f3bbf67e1aa) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hashserv: Allow self-service deletionJoshua Watt2023-11-092-3/+6
| | | | | | | | | | | Allows users to self-service deletion of their own user accounts (meaning, they can delete their own accounts without special permissions). (Bitbake rev: 2d4439948a5328a9768bca9eaec221eb82af3cb2) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hashserv: tests: Allow authentication for external server testsJoshua Watt2023-11-091-35/+74
| | | | | | | | | | | | If BB_TEST_HASHSERV_USERNAME and BB_TEST_HASHSERV_PASSWORD are provided for a server admin user, the authentication tests for the external hashserver will run. In addition, any users that get created will now be deleted when the test finishes. (Bitbake rev: 0e945d3dec02479df1157f48fd44223c2bfb34a3) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-hashserver: Allow anonymous permissions to be space separatedJoshua Watt2023-11-091-1/+4
| | | | | | | | | | Space separation is more natural when setting the value from an environment variable, so allow that here for convenience. (Bitbake rev: 07eb9176f8a7449c1d2cbfff072fa0873e97a336) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-hashclient: Output stats in JSON formatJoshua Watt2023-11-092-2/+4
| | | | | | | | | | Outputting the stats in JSON format makes more sense as it's easier for a downstream tool to parse if desired. (Bitbake rev: 3a18066e479ab06bdb08e258fc4aacad5e73222e) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hashserv: test: Add bitbake-hashclient testsJoshua Watt2023-11-091-23/+277
| | | | | | | | | | The bitbake-hashclient command-line tool now has a lot more features which should be tested, so add some tests for them. (Bitbake rev: 178cf99673d7ddf8e0bb63a5a43331a18f3286d5) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hashserv: Add database column query APIJoshua Watt2023-11-096-0/+42
| | | | | | | | | | | Adds an API to retrieve the columns that can be queried on from the database backend. This prevents front end applications from needing to hardcode the query columns (Bitbake rev: abfce2b68bdab02ea2e9a63fbb3b9e270428a0a6) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hashserv: Add db-usage APIJoshua Watt2023-11-096-0/+86
| | | | | | | | | | Adds an API to query the server for the usage of the database (e.g. how many rows are present in each table) (Bitbake rev: c9c1224447e147e0de92953bc85cea75670b898c) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hashserv: Add become-user APIJoshua Watt2023-11-094-5/+97
| | | | | | | | | | | | Adds API that allows a user admin to impersonate another user in the system. This makes it easier to write external services that have external authentication, since they can use a common user account to access the server, then impersonate the logged in user. (Bitbake rev: 71e2f5b52b686f34df364ae1f2fc058f45cd5e18) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hashserv: Add user permissionsJoshua Watt2023-11-098-47/+1054
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds support for the hashserver to have per-user permissions. User management is done via a new "auth" RPC API where a client can authenticate itself with the server using a randomly generated token. The user can then be given permissions to read, report, manage the database, or manage other users. In addition to explicit user logins, the server supports anonymous users which is what all users start as before they make the "auth" RPC call. Anonymous users can be assigned a set of permissions by the server, making it unnecessary for users to authenticate to use the server. The set of Anonymous permissions defines the default behavior of the server, for example if set to "@read", Anonymous users are unable to report equivalent hashes with authenticating. Similarly, setting the Anonymous permissions to "@none" would require authentication for users to perform any action. User creation and management is entirely manual (although bitbake-hashclient is very useful as a front end). There are many different mechanisms that could be implemented to allow user self-registration (e.g. OAuth, LDAP, etc.), and implementing these is outside the scope of the server. Instead, it is recommended to implement a registration service that validates users against the necessary service, then adds them as a user in the hash equivalence server. (Bitbake rev: 69e5417413ee2414fffaa7dd38057573bac56e35) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: asyncrpc: client: Add disconnect APIJoshua Watt2023-11-091-1/+7
| | | | | | | | | | Adds an API to explicitly disconnect a client. This can be useful for testing the auto-reconnect behavior of clients (Bitbake rev: cb2fec7eaca20608faf4b8ff11ec8590ac7f2229) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: asyncrpc: client: Prevent double closing of loopJoshua Watt2023-11-091-4/+6
| | | | | | | | | | Invalidate the loop in the client close() call so that it is not closed twice (which is an error in the asyncio code) (Bitbake rev: ef22f8ee82c242383625f078baafb629e45dad7e) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: asyncrpc: Add InvokeErrorJoshua Watt2023-11-094-4/+22
| | | | | | | | | | | | | Adds support for Invocation Errors (that is, errors raised by the actual RPC call instead of at the protocol level) to propagate across the connection. If a server RPC call raises an InvokeError, it will be sent across the connection and then raised on the client side also. The connection is still terminated on this error. (Bitbake rev: 50ee68175e7cf20a32bfbb176db2c47d7859da04) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hashserv: Implement read-only version of "report" RPCJoshua Watt2023-11-092-3/+26
| | | | | | | | | | When the hash equivalence server is in read-only mode, it should still return a unihash for a given "report" call if there is one. (Bitbake rev: d0bbb98553f5f3451606bd5f089b36cfe4219dc2) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hashserv: Add SQLalchemy backendJoshua Watt2023-11-095-5/+362
| | | | | | | | | | | Adds an SQLAlchemy backend to the server. While this database backend is slower than the more direct sqlite backend, it easily supports just about any SQL server, which is useful for large scale deployments. (Bitbake rev: e0b73466dd7478c77c82f46879246c1b68b228c0) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hashserv: Abstract databaseJoshua Watt2023-11-093-401/+439
| | | | | | | | | | Abstracts the way the database backend is accessed by the hash equivalence server to make it possible to use other backends (Bitbake rev: 04b53deacf857488408bc82b9890b1e19874b5f1) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-hashserv: Allow arguments from environmentJoshua Watt2023-11-091-20/+60
| | | | | | | | | | | | Allows the arguments to the bitbake-hashserv command to be specified in environment variables. This is a very common idiom when running services in containers as it allows the arguments to be specified from different sources as desired by the service administrator (Bitbake rev: f65c87fab07a730f2f4588764cb64508c2149b40) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: asyncrpc: Prefix log messages with client infoJoshua Watt2023-11-092-8/+23
| | | | | | | | | | Adds a logging adaptor to the asyncrpc clients that prefixes log messages with the client remote address to aid in debugging (Bitbake rev: f4d64ce73c2449c008ff5d9b32376a2893ef7195) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hashserv: tests: Add external database testsJoshua Watt2023-11-091-10/+44
| | | | | | | | | | Adds support for running the hash equivalence test suite against an external hash equivalence implementation. (Bitbake rev: c1fbc3f68b94905d19ffcf4a6da5b27f0bf14599) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: asyncrpc: Add context manager APIJoshua Watt2023-11-093-22/+33
| | | | | | | | | | | | | | | | Adds context manager API for the asyncrcp client class which allow writing code that will automatically close the connection like so: with hashserv.create_client(address) as client: ... Rework the bitbake-hashclient tool and PR server to use this new API to fix warnings about unclosed event loops when exiting (Bitbake rev: d01d684a0f6398270fe35ed59b7d28f3fd9b7e41) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hashserv: Add websocket connection implementationJoshua Watt2023-11-096-2/+137
| | | | | | | | | | | | | | | Adds support to the hash equivalence client and server to communicate over websockets. Since websockets are message orientated instead of stream orientated, and new connection class is needed to handle them. Note that websocket support does require the 3rd party websockets python module be installed on the host, but it should not be required unless websockets are actually being used. (Bitbake rev: 56dd2fdbfb6350a9eef43a12aa529c8637887a7e) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: asyncrpc: Abstract socketsJoshua Watt2023-11-0910-353/+387
| | | | | | | | | | | | | Rewrites the asyncrpc client and server code to make it possible to have other transport backends that are not stream based (e.g. websockets which are message based). The connection handling classes are now shared between both the client and server to make it easier to implement new transport mechanisms (Bitbake rev: 2aaeae53696e4c2f13a169830c3b7089cbad6eca) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* linux/cve-exclusion6.1/6.5: Update to latest kernel point releasesRichard Purdie2023-11-092-32/+60
| | | | | | (From OE-Core rev: e17b76644b26ef832b632a03f537060f88344bd8) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: Bug-fix webdriver No parameter named optionsAlassane Yattara2023-11-091-1/+1
| | | | | | | | | Change options to chrome_options (Bitbake rev: 99305c25fafa61064a1bb0849616e4627e3453d7) Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: Test jumbotron links visible and clickableAlassane Yattara2023-11-091-1/+88
| | | | | | | | | | | | | | | | | Test that the followings link are visible and clickable: - OpenEmbedded - BitBake - Yocto Project - Read the Toaster manual - Contribute to Toaster - Fixed typo: using instead of usign line:97 - Remove whitespace (Bitbake rev: d4c35eaff3c152ee864a886aac8ad5476f7f29f7) Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: Test documentation link in landing header is displayedAlassane Yattara2023-11-091-0/+15
| | | | | | | | | | - check that the documentation link is visible - check browser open new tab toaster manual when clicking on the documentation link (Bitbake rev: befe970fcc7742cf266e03849be36c733bb09de6) Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: Check info_sign is visible and clickable in landing pageAlassane Yattara2023-11-092-1/+17
| | | | | | | | | | Check the information icon is visible and clickable Also if popup appearing when clicked and contain "Toaster version information" (Bitbake rev: 0508fd74ebd43359473a9718edf0d146002041ad) Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: Added pytest.ini fileAlassane Yattara2023-11-091-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The main reason for using pytest is to be able to generate a positive test report using the pytest-html plugin. Integrating Pytest with Tox is a straightforward process, this can be done using tox.ini instead of pytest.ini used to configure pytest, that is another reason for using pytest. Tox is a tool that automates testing across different virtual environments, it can help ensure application will be tested against multiple Python versions and environments. https://github.com/pytest-dev/pytest/blob/main/tox.ini Generated reports create a historical record of test results over time. This can help track the progress of the application's stability and quality Documentation and Transparency: Test reports provide us a clear and detailed documentation of the test results. They show what tests were executed, which ones passed, and which ones failed. This transparency is critical for understanding the current state of the application and its test coverage. Communication: Test reports are an effective means of communication among community to understand the testing progress and results. Debugging, Troubleshooting Historical Tracking and Regression Testing: In case of test failures, a detailed test report can be invaluable for debugging. It provides information about the specific test case that failed, the input data used, and any error messages. (Bitbake rev: 6ba046b8d0d821e304c14b78ef6b00945e0ab453) Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: fixed: Tests fail when executed one after the other out of ↵Alassane Yattara2023-11-093-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | sequence As mentionned in earlier commit, pytest-django takes a conservative approach to enabling database access. By default our tests will fail if they try to access the database, Only if we explicitly request database access will this be allowed, using pytest marks to tell pytest-django our test needs database access. A side effect of pytest mark, is test_case method marked is execute out of scope of its module class, which create an inconsistance sequence and make fails followings tests. The scope of the ordering is global per default, e.g. tests with lower ordinal numbers are always executed before tests with higher numbers in the same test session, regardless of the module and class they reside in. This can be changed by using the --order-scope option from module pytest-order. To fix that i added execution order to tests suite using pytest-order. (Bitbake rev: 8bf32459ab6d8ce7632fca0a4ce0f3aecc7495c2) Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: Bug-fix django.db.utils.IntegrityError: Problem installing ↵Alassane Yattara2023-11-091-2/+2
| | | | | | | | | | | | | fixture toastergui-unittest-data.xml fixture contains a release objects with name="master" or an release with same name seem existing - Change release name and fix bitbakeversion instead of bitbake_version (Bitbake rev: 36b48905ea26e5173b5ab2369b90952bc13e9c0d) Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: fixed pytest error: Database access not allowed, use the ↵Alassane Yattara2023-11-091-0/+2
| | | | | | | | | | | | | | | | | | "django_db" Pytest failed on functional/test_functional_basic because database access not allowed - we should use "django_db" fixture to allowed db access Note: Pytest-django takes a conservative approach to enabling database access. By default your tests will fail if they try to access the database. Only if you explicitly request database access will this be allowed. https://pytest-django.readthedocs.io/en/latest/helpers.html#pytest-mark-django-db-request-database-access (Bitbake rev: 5f92a6b13cdea26b26ff939e9a3f746f7d0937b7) Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: Bug-fix pytest and Failed: Database access not allowedAlassane Yattara2023-11-091-6/+0
| | | | | | | | | | | | | | Remove load and create build environment from tests/functional/functional_helpers - Testcases in the FunctionalTestCase do not require a build process, - Also marked setUpClass or class with pytest django_db, db ... not working, as declared above of file functional_helpers.py, The database access process runs as an external process, separate from the test case process and outside the context of pytest. (Bitbake rev: 35c02c26541c05a8d147f41d0855e09d8fba1a83) Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: Update orm.models to catch error ProcessLookupErrorAlassane Yattara2023-11-091-3/+2
| | | | | | | | | - catch error ProcessLookupError and logs it (Bitbake rev: a61a5f47dc56daafa9089adaad388b3c0b59155d) Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: Add toaster-tests-requirements.txt to add pytest and some ↵Alassane Yattara2023-11-091-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | plugins The pytest framework makes it easy to write small, readable tests, and can scale to support complex functional testing for applications and libraries. - Pytest-html is a plugin for pytest that generates a HTML report for test results. - Pytest-django allows us to test Django project/applications with the pytest testing tool. - Pytest-env is a pytest plugin that enables us to set environment variables in a pytest.ini or pyproject.toml file - Pytest-metadata is a plugin for pytest that provides access to test session metadata, required by pytest-html plugin to provides metadata information in the HTML report like below: Python 3.10.12 Platform Linux-6.2.0-35-generic-x86_64-with-glibc2.35 Packages: - pytest: 7.4.2 - pluggy: 1.3.0 Plugins : - django: 4.5.2 - metadata: 3.0.0 - order: 1.1.0 - html: 4.0.2 - env: 1.1.0 To make difference between bitbake and toaster python requirements, a dedicated requirements file is created for toaster in root of toaster dir. (Bitbake rev: 804d17df22391b2d18a68d8cb05a04841d4e551b) Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* xwayland: upgrade to 23.2.2Ross Burton2023-11-091-1/+1
| | | | | | | | | | | | | | | | | | e4487cae1 Bump version to 23.2.2 1e8478455 Xi/randr: fix handling of PropModeAppend/Prepend (CVE-2023-5367) 829a99117 Switch to libbsd-overlay 4f8a851b6 xwayland: Cancel the EI disconnect timer when freed cc79b2a83 glamor: xv: Fix invalid accessing of plane attributes for NV12 07c18c90e xwayland: Give up on EI on setup failure 10353a01a xwayland: Add an option to enable EI portal support 4f8e209d2 xwayland/glamor/gbm: Set GBM_BO_USE_LINEAR if only LINEAR modifier is supported c9a842e60 xwayland/present: Handle NULL window_priv in xwl_present_cleanup 2bd43be92 glamor: fixes GL_INVALID_ENUM errors on ES if there is no quads (From OE-Core rev: 7d0fc94d09db76d4c4d6ca9d2da1b30768f68c9e) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* opensbi: Upgrade to 1.3.1 releaseThomas Perrot2023-11-091-2/+2
| | | | | | | | | | | Here is list of changes in this major release https://github.com/riscv-software-src/opensbi/compare/v1.2...v1.3.1 (From OE-Core rev: 5d642c49e9354c105b1269555b646bb4afaef491) Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: update LICENSE statementMassimiliano Minella2023-11-091-1/+2
| | | | | | | | | | | | | | | | | | | | As stated in the LICENSES/README.md "Unless otherwise noted, the systemd project sources are licensed under the terms and conditions of the GNU Lesser General Public License v2.1 or later", so replace LGPL-2.1-only with LGPL-2.1-or-later. With the exception of some udev sources that are licensed under GPL-2.0-or-later (but are packaged separately), the project is licensed under LGPL, and all the components are LGPL or under LGPL compatible licenses. The package libsystemd is currently under the main package license, which can cause problems when scanning for GPL software linked to CLOSED one. Add more granularity by setting a license for libsystemd to LGPL-2.1-or-later. (From OE-Core rev: 54975f4b2184fe12c4995c289eba8358958e6c21) Signed-off-by: Massimiliano Minella <massimiliano.minella@se.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* perf: fix build with latest kernelMax Krummenacher2023-11-091-1/+3
| | | | | | | | | | | | | | | | | | | | | | Kernel 6.7-rc1 commit 02e85f74668e ("tools: arm64: Add a Makefile for generating sysreg-defs.h") uses files from arch/arm64/tools/, gen-sysreg.awk and sysreg. Without the files the build of perf fails independent of the used architecture (confirmed with armv7 and qemux86_64). As arch/arm64/tools/ has been added with 5.13 allow perf to build even it that directory does not exist. Add arch/arm64/tools/ to PERF_SRC. Fixes: | make[3]: *** No rule to make target '.../qemux86_64-tdx-linux/perf/1.0/perf-1.0/arch/arm64/tools/gen-sysreg.awk', needed by '.../qemux86_64-tdx-linux/perf/1.0/perf-1.0/tools/arch/arm64/include/generated/asm/sysreg-defs.h'. Stop. | make[2]: *** [Makefile.perf:456: arm64-sysreg-defs] Error 2 (From OE-Core rev: 432b4ac20dadb9c08596266fce4f3941d4856c7e) Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* perf: add jevents PACKAGECONFIG itemRasmus Villemoes2023-11-091-0/+3
| | | | | | | | | | | | Building for an arm64 target, e.g. qemuarm64 or a raspberrypi3, without "python" in PACKAGECONFIG, results in | Makefile.config:892: *** ERROR: No python interpreter needed for jevents generation. Install python or build with NO_JEVENTS=1.. Stop. (From OE-Core rev: df1905294690682496d8f8e8284964ab897f0cd4) Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lib/bblayers/setupwriters/oe-setup-layers.py: Fix indentationJermain Horsman2023-11-091-1/+1
| | | | | | | | | | The writer always printed the script was written even if this was not the case when specififying '--json-only'. (From OE-Core rev: b2efb4c6c8bd938aac5146e14bd0c38f3f632bc4) Signed-off-by: Jermain Horsman <jermain.horsman@nedap.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* linux-yocto/6.5: update to v6.5.10Bruce Ashfield2023-11-093-20/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Updating to the latest korg -stable release that comprises the following commits: 43a868577dfc Linux 6.5.10 062c1ba88b4f accel/ivpu/37xx: Fix missing VPUIP interrupts cdb4daffc2d4 mm/damon/sysfs: check DAMOS regions update progress from before_terminate() a5c9f6289625 platform/x86: Add s2idle quirk for more Lenovo laptops adebf494e425 clk: stm32: Fix a signedness issue in clk_stm32_composite_determine_rate() 302479e2d4c4 clk: socfpga: gate: Account for the divider in determine_rate 5193aec42c45 clk: Sanitize possible_parent_show to Handle Return Value of of_clk_get_parent_name d1e039180f81 sparc32: fix a braino in fault handling in csum_and_copy_..._user() 516177805997 perf/core: Fix potential NULL deref 25de47d0d6e7 x86/cpu: Add model number for Intel Arrow Lake mobile processor 3256ad9bb4ce x86/i8259: Skip probing when ACPI/MADT advertises PCAT compatibility 7f864ab94da3 x86/tsc: Defer marking TSC unstable to a worker cfa5aa4a5ea2 nvmem: imx: correct nregs for i.MX6UL 4f6c3da9a978 nvmem: imx: correct nregs for i.MX6SLL 3e325ac1eec9 nvmem: imx: correct nregs for i.MX6ULL bc0991e8e1fb misc: fastrpc: Unmap only if buffer is unmapped from DSP 8e4afa8598d9 misc: fastrpc: Clean buffers on remote invocation failures c2400bfd8ce4 misc: fastrpc: Free DMA handles for RPC calls with no arguments 0351f86266f6 misc: fastrpc: Reset metadata buffer to avoid incorrect free 96790d33261c tracing/kprobes: Fix the description of variable length arguments 63de22fdf851 tracing/kprobes: Fix symbol counting logic by looking at modules as well 001b2dc822d3 i2c: aspeed: Fix i2c bus hang in slave read 20062e7a248f i2c: stm32f7: Fix PEC handling in case of SMBUS transfers e505ca5d9ac0 i2c: muxes: i2c-demux-pinctrl: Use of_get_i2c_adapter_by_node() 135e2858ab78 i2c: muxes: i2c-mux-gpmux: Use of_get_i2c_adapter_by_node() 2f7671a14960 i2c: muxes: i2c-mux-pinctrl: Use of_get_i2c_adapter_by_node() 5f6dc4a12d79 iio: adc: xilinx-xadc: Correct temperature offset/scale for UltraScale f763aa29992d iio: adc: xilinx-xadc: Don't clobber preset voltage/temperature thresholds f2bd3c005aba iio: exynos-adc: request second interupt only when touchscreen mode is used 0a9bb3fa6870 iio: afe: rescale: Accept only offset channels 56e08ccc9697 io_uring/fdinfo: lock SQ thread while retrieving thread cpu/pid 1c43576ac2d1 kasan: print the original fault addr when access invalid shadow 6cf937305199 blk-throttle: check for overflow in calculate_bytes_allowed c031d9a8383d scsi: sd: Introduce manage_shutdown device flag 927c770488fe iavf: in iavf_down, disable queues when removing the driver de306715bc3f drm/i915/mcr: Hold GT forcewake during steering operations a90e92e77bb6 drm/logicvc: Kconfig: select REGMAP and REGMAP_MMIO 180069f6b8e8 net/sched: act_ct: additional checks for outdated flows 533c24b368d7 netfilter: flowtable: GC pushes back packets to classic path 36cf7d1d79ec i40e: Fix wrong check for I40E_TXR_FLAGS_WB_ON_ITR 4c898bdfc6a1 drm/i915/perf: Determine context valid in OA reports 9ba154363a09 gtp: fix fragmentation needed check with gso 62376a558db3 gtp: uapi: fix GTPA_MAX 450d6bf74c28 net/handshake: fix file ref count in handshake_nl_accept_doit() 8279cd3af8bf wifi: mac80211: don't drop all unprotected public action frames 943431ee2a17 wifi: cfg80211: fix assoc response warning on failed links 989ac939b1a5 wifi: cfg80211: pass correct pointer to rdev_inform_bss() 9617c77f0c0e tcp: fix wrong RTO timeout when received SACK reneging a22e19386109 r8152: Release firmware if we have an error in probe 0fd9553632fd r8152: Cancel hw_phy_work if we have an error in probe 56e8946e1a25 r8152: Run the unload routine if we have errors during probe 90b49a273de0 r8152: Increase USB control msg timeout to 5000ms as per spec c11f5c496f65 net: usb: smsc95xx: Fix uninit-value access in smsc95xx_read_reg 0d3295a43c63 net: ieee802154: adf7242: Fix some potential buffer overflow in adf7242_stats_show() 8e0e94bf5b4a net: ethernet: adi: adin1110: Fix uninitialized variable fdba00877119 igc: Fix ambiguity in the ethtool advertising cf6fd6e0a831 neighbour: fix various data-races 5f9d1995d040 net: do not leave an empty skb in write queue 7462118b2083 igb: Fix potential memory leak in igb_add_ethtool_nfc_entry fd9d5ad3c865 treewide: Spelling fix in comment 7e5beb46db3a i40e: Fix I40E_FLAG_VF_VLAN_PRUNING value f927602db213 iavf: initialize waitqueues before starting watchdog_task bcbf3f442903 r8169: fix the KCSAN reported data race in rtl_rx while reading desc->opts1 03599d8d353a r8169: fix the KCSAN reported data-race in rtl_tx while reading TxDescArray[entry].opts1 23473ffd3aec r8169: fix the KCSAN reported data-race in rtl_tx() while reading tp->cur_tx 3dacf771d6e4 clk: ti: Fix missing omap5 mcbsp functional clock and aliases 202f0a4266ca clk: ti: Fix missing omap4 mcbsp functional clock and aliases 7e6cde9455e1 firmware/imx-dsp: Fix use_after_free in imx_dsp_setup_channels() ec4a1eed8259 ARM: OMAP: timer32K: fix all kernel-doc warnings 0bc72b967d82 btrfs: fix unwritten extent buffer after snapshotting a new subvolume ca9cd8fb3454 btrfs: remove v0 extent handling 1df7ca358099 drm/dp_mst: Fix NULL deref in get_mst_branch_device_by_guid_helper() ed93977857fd drm/amd: Disable ASPM for VI w/ all Intel systems 5692e4e09f0a drm/i915/pmu: Check if pmu is closed before stopping event 7c05a73c3893 accel/ivpu: Don't enter d0i3 during FLR 4bb5ed32bf06 ARM: dts: rockchip: Fix timer clocks for RK3128 6d6e82fb8a94 ARM: dts: rockchip: Add missing quirk for RK3128's dma engine 835fdd9a36cc ARM: dts: rockchip: Add missing arm timer interrupt for RK3128 568192da05cb ARM: dts: rockchip: Fix i2c0 register address for RK3128 f4b8ef292ec6 ARM: OMAP1: ams-delta: Fix MODEM initialization failure 0a411c59897e vdpa/mlx5: Fix double release of debugfs entry 37509b77aeeb vdpa_sim_blk: Fix the potential leak of mgmt_dev a3e7e0de21cf nfsd: lock_rename() needs both directories to live on the same fs 11bc9f5c70bb maple_tree: add GFP_KERNEL to allocations in mas_expected_entries() 257931b5d8b1 hugetlbfs: extend hugetlb_vma_lock to private VMAs a6d2f04abe6a mm/mempolicy: fix set_mempolicy_home_node() previous VMA pointer c0ade01d5369 selftests/mm: include mman header to access MREMAP_DONTUNMAP identifier 941f6af9946e mm/migrate: fix do_pages_move for compat pointers 5d6ea592222a mm/page_alloc: correct start page when guard page debug is enabled 92c5ddea6a6c hugetlbfs: clear resv_map pointer if mmap fails e3f64e0bb2fa mm: fix vm_brk_flags() to not bail out while holding lock 5ee66af50c41 i40e: sync next_to_clean and next_to_process for programming status desc 6ba04d5dfd00 arm64: dts: rockchip: Fix i2s0 pin conflict on ROCK Pi 4 boards 7bc99864cb91 arm64: dts: rockchip: Add i2s0-2ch-bus-bclk-off pins to RK3399 7c5934f90db6 arm64: dts: qcom: sa8775p: correct PMIC GPIO label in gpio-ranges 7f5d458012fa arm64: dts: rockchip: set codec system-clock-fixed on px30-ringneck-haikou 51b3ef53fa5d arm64: dts: rockchip: use codec as clock master on px30-ringneck-haikou aa7df1844910 arm64: dts: qcom: msm8996-xiaomi: fix missing clock populate d8b34f309f36 arm64: dts: qcom: apq8096-db820c: fix missing clock populate 368b3c788e99 vhost: Allow null msg.size on VHOST_IOTLB_INVALIDATE e83bce65ae80 vsock/virtio: initialize the_virtio_vsock before using VQs 7efb5418f8cb virtio_pci: fix the common cfg map size 91dacc7d5dbd virtio-crypto: handle config changed by work queue 5f8c38e9538f virtio-mmio: fix memory leak of vm_dev 84a50412e433 virtio_balloon: Fix endless deflation and inflation on arm64 436be190fbf8 smb: client: prevent new fids from being removed by laundromat f806b7e98cb9 smb: client: make laundromat a delayed worker b8c0ab226fee smb: client: do not start laundromat thread on nohandlecache b483b64677a1 smb3: do not start laundromat thread when dir leases disabled 3027d3064c71 smb3: allow controlling maximum number of cached directories 9cb2ea5d7d2a smb3: allow controlling length of time directory entries are cached with dir leases c3b054a86347 vdpa/mlx5: Fix firmware error on creation of 1k VQs (From OE-Core rev: ddbba0d5a997d428a3c63580f845c0d581cac460) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* linux-yocto/6.5: cfg: restore CONFIG_DEVMEMBruce Ashfield2023-11-093-3/+3
| | | | | | | | | | | | | | | | | | | | | | | Integrating the following commit(s) to linux-yocto/.: 1/1 [ Author: C. Andy Martin Email: cam@myfastmail.com Subject: security.cfg: restore strict-only /dev/mem access Date: Fri, 27 Oct 2023 11:22:06 -0400 CONFIG_DEVMEM was mistakenly not enabled, which defeats CONFIG_STRICT_DEVMEM and friends, as it completely removes all /dev/mem support. Signed-off-by: C. Andy Martin <cam@myfastmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> ] (From OE-Core rev: c459be32000d703aad179a4bf5ef2479813f0404) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* linux-yocto/6.1: update to v6.1.61Bruce Ashfield2023-11-093-20/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Updating to the latest korg -stable release that comprises the following commits: 4a61839152cc Linux 6.1.61 5926b0886d0c objtool/x86: add missing embedded_insn check 2afa9f7eb15c ext4: avoid overlapping preallocations due to overflow fcefddf3a151 ext4: fix BUG in ext4_mb_new_inode_pa() due to overflow 495c4c58d684 ext4: add two helper functions extent_logical_end() and pa_logical_end() d022e4ea9c2f platform/x86: Add s2idle quirk for more Lenovo laptops 48ebeab0eda1 clk: Sanitize possible_parent_show to Handle Return Value of of_clk_get_parent_name 65e5a9890e03 sparc32: fix a braino in fault handling in csum_and_copy_..._user() 8b8cde8ebb87 perf/core: Fix potential NULL deref 5e232f2205f2 x86/cpu: Add model number for Intel Arrow Lake mobile processor 63cc3d5d343d x86/i8259: Skip probing when ACPI/MADT advertises PCAT compatibility 37495846b1ef nvmem: imx: correct nregs for i.MX6UL 116671d25915 nvmem: imx: correct nregs for i.MX6SLL b90b8633ef62 nvmem: imx: correct nregs for i.MX6ULL cc87c73eac2d misc: fastrpc: Unmap only if buffer is unmapped from DSP 38c5faf2a984 misc: fastrpc: Clean buffers on remote invocation failures 7737e9384e2d misc: fastrpc: Free DMA handles for RPC calls with no arguments 1e8851b51300 misc: fastrpc: Reset metadata buffer to avoid incorrect free 5a35fc1c0091 tracing/kprobes: Fix the description of variable length arguments 91b95e3b4ac8 i2c: aspeed: Fix i2c bus hang in slave read 11602cadc9b4 i2c: stm32f7: Fix PEC handling in case of SMBUS transfers ff0312a156cf i2c: muxes: i2c-demux-pinctrl: Use of_get_i2c_adapter_by_node() f9a7b3b33c84 i2c: muxes: i2c-mux-gpmux: Use of_get_i2c_adapter_by_node() 48a365ae4f31 i2c: muxes: i2c-mux-pinctrl: Use of_get_i2c_adapter_by_node() 6ec84059b5e1 iio: adc: xilinx-xadc: Correct temperature offset/scale for UltraScale e26fd381bf11 iio: adc: xilinx-xadc: Don't clobber preset voltage/temperature thresholds cb01837e0f7a iio: exynos-adc: request second interupt only when touchscreen mode is used 7a641bc52f00 iio: afe: rescale: Accept only offset channels 9236d2ea6465 io_uring/fdinfo: lock SQ thread while retrieving thread cpu/pid 1684909df3f4 kasan: print the original fault addr when access invalid shadow 6a5b845b57b1 blk-throttle: check for overflow in calculate_bytes_allowed bb20a245df9c scsi: sd: Introduce manage_shutdown device flag 93fa5786f972 iavf: in iavf_down, disable queues when removing the driver f7f660df65a1 drm/logicvc: Kconfig: select REGMAP and REGMAP_MMIO cb115b6688b6 i40e: Fix wrong check for I40E_TXR_FLAGS_WB_ON_ITR 144f93c62239 gtp: fix fragmentation needed check with gso 039a050740fc gtp: uapi: fix GTPA_MAX 664a358b7966 tcp: fix wrong RTO timeout when received SACK reneging 5b100bb0449c r8152: Release firmware if we have an error in probe ecb51a434e3d r8152: Cancel hw_phy_work if we have an error in probe 87376143df3f r8152: Run the unload routine if we have errors during probe ee73f937c5e9 r8152: Increase USB control msg timeout to 5000ms as per spec 9eb275fec602 net: usb: smsc95xx: Fix uninit-value access in smsc95xx_read_reg 7c799bc32232 net: ieee802154: adf7242: Fix some potential buffer overflow in adf7242_stats_show() 55b01c5a847e net: ethernet: adi: adin1110: Fix uninitialized variable 9d2b588fae86 igc: Fix ambiguity in the ethtool advertising fa28949c72db neighbour: fix various data-races c166dd51b628 igb: Fix potential memory leak in igb_add_ethtool_nfc_entry 9a194064fab6 treewide: Spelling fix in comment b1ad0a147d08 i40e: Fix I40E_FLAG_VF_VLAN_PRUNING value d8ac13acfbf7 iavf: initialize waitqueues before starting watchdog_task 66e879507b12 r8169: fix the KCSAN reported data race in rtl_rx while reading desc->opts1 d10140916e6f r8169: fix the KCSAN reported data-race in rtl_tx while reading TxDescArray[entry].opts1 4138a02c8953 r8169: fix the KCSAN reported data-race in rtl_tx() while reading tp->cur_tx 29f365f4c3b8 clk: ti: Fix missing omap5 mcbsp functional clock and aliases 2ba943c6d9eb clk: ti: Fix missing omap4 mcbsp functional clock and aliases 8d8346ed3968 firmware/imx-dsp: Fix use_after_free in imx_dsp_setup_channels() df4169fc9b8a ARM: OMAP: timer32K: fix all kernel-doc warnings 6c668e2f338b drm/dp_mst: Fix NULL deref in get_mst_branch_device_by_guid_helper() 024251bab25d drm/amd: Disable ASPM for VI w/ all Intel systems eded5f5261b8 drm/i915/pmu: Check if pmu is closed before stopping event 4f46c177c03d nfsd: lock_rename() needs both directories to live on the same fs 3262ff5826e1 maple_tree: add GFP_KERNEL to allocations in mas_expected_entries() b1b2750de123 hugetlbfs: extend hugetlb_vma_lock to private VMAs c9b066f6920d mm/migrate: fix do_pages_move for compat pointers a6fbf025e3cf mm/page_alloc: correct start page when guard page debug is enabled 0aa7b24c068c hugetlbfs: clear resv_map pointer if mmap fails 38d0d1c44255 mm: fix vm_brk_flags() to not bail out while holding lock 38930ec7670a arm64: dts: rockchip: Fix i2s0 pin conflict on ROCK Pi 4 boards 9d72254c2b7a arm64: dts: rockchip: Add i2s0-2ch-bus-bclk-off pins to RK3399 08e6b680f264 vhost: Allow null msg.size on VHOST_IOTLB_INVALIDATE 1f14ded0f165 vsock/virtio: initialize the_virtio_vsock before using VQs 534487cc3eb8 virtio_pci: fix the common cfg map size 86f467d3582e virtio-crypto: handle config changed by work queue a9d4a1ea6709 virtio-mmio: fix memory leak of vm_dev 19b30a879065 virtio_balloon: Fix endless deflation and inflation on arm64 bede8b4b5175 mcb-lpc: Reallocate memory region to avoid memory overlapping c9efc3efe450 mcb: Return actual parsed size when reading chameleon table e58ab834e48f pinctrl: qcom: lpass-lpi: fix concurrent register updates 018b11ecba76 ASoC: codecs: wcd938x: fix runtime PM imbalance on remove 508c3353fed8 ASoC: codecs: wcd938x: fix regulator leaks on probe errors 877fc75d2cf7 ASoC: codecs: wcd938x: Simplify with dev_err_probe 629ba75200a1 ASoC: codecs: wcd938x: Convert to platform remove callback returning void 1fae817d3ecb mmc: core: Fix error propagation for some ioctl commands 719c01f28130 mmc: block: ioctl: do write error check for spi 651e66d20b59 mmc: core: Align to common busy polling behaviour for mmc ioctls d3466ce4f42e KVM: x86/pmu: Truncate counter value to allowed width on write (From OE-Core rev: 8b5ec2f683f71f3e708d1c6401ebe07eec1986c7) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* linux-yocto/6.1: cfg: restore CONFIG_DEVMEMBruce Ashfield2023-11-093-3/+3
| | | | | | | | | | | | | | | | | | | | | | | Integrating the following commit(s) to linux-yocto/.: 1/1 [ Author: C. Andy Martin Email: cam@myfastmail.com Subject: security.cfg: restore strict-only /dev/mem access Date: Fri, 27 Oct 2023 11:22:06 -0400 CONFIG_DEVMEM was mistakenly not enabled, which defeats CONFIG_STRICT_DEVMEM and friends, as it completely removes all /dev/mem support. Signed-off-by: C. Andy Martin <cam@myfastmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> ] (From OE-Core rev: dfc0cc113eabb1160b6bfd630fa75c6a3cb9c7a5) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel-yocto: improve metadata patchingBruce Ashfield2023-11-091-5/+25
| | | | | | | | | | | | | | | | | | | | The ability to patch the kernel-yocto metadata was added to support debug and easier test cycles on kernel-cache provided fragments. As such, it was very simple and has limited functionality. That being said, it is an available feature and can be improved to handle patches that fail to apply. The main kernel patching is already handled by the kern-tools, so we extend the patching of the meta-data to same tools and inherit more functinality from the scripts. [YOCTO #15266] (From OE-Core rev: e867addd6c2f508f7a95e72222e750d37f3d19d8) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kern-tools: update SRCREV to include SECURITY.md fileBruce Ashfield2023-11-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To be compliant with the recent security policy, bumping the SRCREV to pickup the SECUIRTY.md of the kern-tools repository. It's contents are repeated below: How to Report a Potential Vulnerability? ======================================== If you would like to report a public issue (for example, one with a released CVE number), please report it using the [https://bugzilla.yoctoproject.org/enter_bug.cgi?product=Security Security Bugzilla]. If you have a patch ready, submit it following the same procedure as any other patch as described in README.md. If you are dealing with a not-yet released or urgent issue, please send a message to security AT yoctoproject DOT org, including as many details as possible: the layer or software module affected, the recipe and its version, and any example code, if available. Branches maintained with security fixes --------------------------------------- See [https://wiki.yoctoproject.org/wiki/Stable_Release_and_LTS Stable release and LTS] for detailed info regarding the policies and maintenance of Stable branches. The [https://wiki.yoctoproject.org/wiki/Releases Release page] contains a list of all releases of the Yocto Project. Versions in grey are no longer actively maintained with security patches, but well-tested patches may still be accepted for them for significant issues. (From OE-Core rev: fbdfc28b290ea3ed2dc3dbbaf461adc2839eb8f2) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kern-tools: bump SRCREV for queue processing changesBruce Ashfield2023-11-091-1/+1
| | | | | | | | | | | | | | Bumping the SRCREV to pickup a new option to the patch and merge queue handling scripts. The new option '--prev' allows us to change the behaviour of a subsequent runs to retry a failed patch, versus skipping it. (From OE-Core rev: 231256485ae528773a4da9fad8bf4baff26fc0d2) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>