All of lore.kernel.org
 help / color / mirror / Atom feed
From: bruce.ashfield@gmail.com
To: richard.purdie@linuxfoundation.org
Cc: openembedded-core@lists.openembedded.org, TicoTimo@gmail.com,
	trevor.gamblin@windriver.com
Subject: [PATCH 00/20 v2] kernel: consolidated pull request
Date: Wed, 24 Nov 2021 16:14:06 -0500	[thread overview]
Message-ID: <cover.1637788184.git.bruce.ashfield@gmail.com> (raw)

From: Bruce Ashfield <bruce.ashfield@gmail.com>

Richard,

Here's v2 of the pull request. I see the -stable updates merged, so they
are obviously not in v2.

New in v2:
  - reworked the python-dtschema recipe to properly have depends/rdepends
    to fix warnings
  - imported 4 new dependencies for the recipe
  - fixed up the kernel-dev PACKAGECONFIG to not generate a QA warning

The v1 pull request text follows from here:

There's a few routine -stable updates at the start of this, and then some
more painful (and RFC) commits.

As part of this series, we fix one pkg-config issue that was preventing
x86 from doing stack valildation during build. At one point it was
increasing my build times signficantly, but that seems to have gone
away now. If we see something like this on the AB, we'll have to keep
the fix, but disable it by default.

The next big chunk of changes are the ones we talked about during the
tech call today. The 5.16 kernel has introduced mandatory dtschema
checking for device trees built through the kernel.

That checking pulls in a reasonably large amount of dependencies to
the kernel build: libyaml, dtschema, jsonschema, etc.

We weren't able to even run the validation at all, due to the kernel
calling pkg-config directly to check for libyaml, which is the target
pkgconfig and failing on missing dependencies. Rather than patching
the kernel, I've finally given in and made the do_compile task set
the PKG_CONFIG variables to point to our native-sysroot. Since the
kenrel doesn't use pkgconfig for target decisions, and has quite
a few calls directly to pkgconfig, this is the best short term way
to get all those checks working.

Once we are past yaml, we need to create the dtschema recipe, and
bring in the dependencies from meta-python. I've put myself down as
the maintainer for all the new recipes, but otherwise, I haven't
changed or modified them.

BUT! there are scenarios where a non-conformant dts file is being
built, or we just don't want those dependencies in the built. To
work around that, I took the suggestion from this morning and
created a python3-dtschema-wrappers recipe. It contains three
scripts of the same name as the ones from the real package. When
put in the dependency for a kernel build, it can pass the dtschema
steps.

Finally, I created a reference PACKAGECONFIG for linux-yocto-dev
to enable/disable the main package and wrappers (the wrappers are
used by default). I haven't put this into kernel.bbclass yet, since
it is version specific, and it needs to soak for a bit. But if
there's demand, it is something that can be moved to kernel.bclass
(along with a few other version specific dependencies).

Note: I haven't done an AB run with these yet, so I could be
missing some python dependencies, etc, but I wanted to get this
out to the list in case others are running into this with
v5.16+.

Bruce

The following changes since commit 0ec51bf52a930982ac03976781010a638d4cb0ef:

  logrotate: add a link to upstream review for one of the patch (2021-11-24 10:00:10 +0000)

are available in the Git repository at:

  git://git.yoctoproject.org/poky-contrib zedd/kernel
  http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=zedd/kernel

Bruce Ashfield (18):
  linux-yocto-dev: bump to v5.16+
  kernel: export native PKGCONFIG variables
  python: introduce python3-dtschema
  python: import jsonpointer from meta-python
  python: import jsonschema from meta-python
  python: import idna from meta-python
  python: import rfc3339-validator from meta-python
  python: import rfc3986-validator from meta-python
  python: import webcolors from meta-python
  python: import ruamel-yaml from meta-python
  python: import pyrsistent from meta-python
  python: import rfc3987 from meta-pyton
  python: import strict-rfc3339 from meta-python
  python: import vcversioner from meta-python
  maintainers: update for kernel dtschema checking dependencies
  linux-yocto: export pkgconfig variables to devshell
  kernel: introduce python3-dtschema-wrapper
  linux-yocto-dev: introduce dt-validation PACKAGECONFIG

Max Krummenacher (2):
  perf: sort-pmuevents: don't drop elements
  perf: sort-pmuevents: allow for additional type qualifiers and storage
    class

 meta/classes/kernel.bbclass                   |  7 +++
 meta/conf/distro/include/maintainers.inc      | 13 +++++
 ...e-pytest-runner-to-test_requirements.patch | 32 +++++++++++++
 .../python/python3-dtschema_2021.10.bb        | 16 +++++++
 .../python/python3-idna_3.3.bb                | 19 ++++++++
 .../python/python3-jsonpointer/run-ptest      |  3 ++
 .../python/python3-jsonpointer_2.1.bb         | 26 ++++++++++
 .../python/python3-jsonschema_3.2.0.bb        | 48 +++++++++++++++++++
 .../python/python3-pyrsistent_0.18.0.bb       | 14 ++++++
 .../python/python3-rfc3339-validator_0.1.4.bb | 20 ++++++++
 .../python/python3-rfc3986-validator_0.1.1.bb | 23 +++++++++
 .../python/python3-rfc3987_1.3.8.bb           | 10 ++++
 .../python/python3-ruamel-yaml_0.17.16.bb     | 23 +++++++++
 .../python/python3-strict-rfc3339_0.7.bb      | 10 ++++
 .../python/python3-vcversioner_2.16.0.0.bb    | 12 +++++
 .../python/python3-webcolors/run-ptest        |  3 ++
 .../python/python3-webcolors_1.11.1.bb        | 27 +++++++++++
 .../python3-dtschema-wrapper/dt-doc-validate  | 20 ++++++++
 .../dtc/python3-dtschema-wrapper/dt-mk-schema | 20 ++++++++
 .../dtc/python3-dtschema-wrapper/dt-validate  | 20 ++++++++
 .../dtc/python3-dtschema-wrapper_2021.10.bb   | 17 +++++++
 meta/recipes-kernel/linux/linux-yocto-dev.bb  | 12 ++++-
 meta/recipes-kernel/linux/linux-yocto.inc     |  9 ++++
 .../perf/perf/sort-pmuevents.py               | 28 ++++++-----
 24 files changed, 419 insertions(+), 13 deletions(-)
 create mode 100644 meta/recipes-devtools/python/python-rfc3986-validator/0001-setup.py-move-pytest-runner-to-test_requirements.patch
 create mode 100644 meta/recipes-devtools/python/python3-dtschema_2021.10.bb
 create mode 100644 meta/recipes-devtools/python/python3-idna_3.3.bb
 create mode 100644 meta/recipes-devtools/python/python3-jsonpointer/run-ptest
 create mode 100644 meta/recipes-devtools/python/python3-jsonpointer_2.1.bb
 create mode 100644 meta/recipes-devtools/python/python3-jsonschema_3.2.0.bb
 create mode 100644 meta/recipes-devtools/python/python3-pyrsistent_0.18.0.bb
 create mode 100644 meta/recipes-devtools/python/python3-rfc3339-validator_0.1.4.bb
 create mode 100644 meta/recipes-devtools/python/python3-rfc3986-validator_0.1.1.bb
 create mode 100644 meta/recipes-devtools/python/python3-rfc3987_1.3.8.bb
 create mode 100644 meta/recipes-devtools/python/python3-ruamel-yaml_0.17.16.bb
 create mode 100644 meta/recipes-devtools/python/python3-strict-rfc3339_0.7.bb
 create mode 100644 meta/recipes-devtools/python/python3-vcversioner_2.16.0.0.bb
 create mode 100644 meta/recipes-devtools/python/python3-webcolors/run-ptest
 create mode 100644 meta/recipes-devtools/python/python3-webcolors_1.11.1.bb
 create mode 100644 meta/recipes-kernel/dtc/python3-dtschema-wrapper/dt-doc-validate
 create mode 100644 meta/recipes-kernel/dtc/python3-dtschema-wrapper/dt-mk-schema
 create mode 100644 meta/recipes-kernel/dtc/python3-dtschema-wrapper/dt-validate
 create mode 100644 meta/recipes-kernel/dtc/python3-dtschema-wrapper_2021.10.bb

-- 
2.19.1



             reply	other threads:[~2021-11-24 21:14 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-24 21:14 bruce.ashfield [this message]
2021-11-24 21:14 ` [PATCH 01/20] linux-yocto-dev: bump to v5.16+ bruce.ashfield
2021-11-24 21:14 ` [PATCH 02/20] kernel: export native PKGCONFIG variables bruce.ashfield
2021-11-24 21:14 ` [PATCH 03/20] python: introduce python3-dtschema bruce.ashfield
2021-11-25 17:36   ` [OE-core] " Khem Raj
2021-11-25 17:51     ` Bruce Ashfield
2021-11-25 17:53       ` Khem Raj
2021-11-25 18:00         ` Bruce Ashfield
2021-11-24 21:14 ` [PATCH 04/20] python: import jsonpointer from meta-python bruce.ashfield
2021-11-24 21:14 ` [PATCH 05/20] python: import jsonschema " bruce.ashfield
2021-11-24 21:14 ` [PATCH 06/20] python: import idna " bruce.ashfield
2021-11-24 21:14 ` [PATCH 07/20] python: import rfc3339-validator " bruce.ashfield
2021-11-24 21:14 ` [PATCH 08/20] python: import rfc3986-validator " bruce.ashfield
2021-11-24 21:14 ` [PATCH 09/20] python: import webcolors " bruce.ashfield
2021-11-24 21:14 ` [PATCH 10/20] python: import ruamel-yaml " bruce.ashfield
2021-11-24 21:14 ` [PATCH 11/20] python: import pyrsistent " bruce.ashfield
2021-11-24 21:14 ` [PATCH 12/20] python: import rfc3987 from meta-pyton bruce.ashfield
2021-11-24 21:14 ` [PATCH 13/20] python: import strict-rfc3339 from meta-python bruce.ashfield
2021-11-24 21:14 ` [PATCH 14/20] python: import vcversioner " bruce.ashfield
2021-11-24 21:14 ` [PATCH 15/20] maintainers: update for kernel dtschema checking dependencies bruce.ashfield
2021-11-24 21:14 ` [PATCH 16/20] linux-yocto: export pkgconfig variables to devshell bruce.ashfield
2021-11-24 21:14 ` [PATCH 17/20] kernel: introduce python3-dtschema-wrapper bruce.ashfield
2021-11-24 21:14 ` [PATCH 18/20] linux-yocto-dev: introduce dt-validation PACKAGECONFIG bruce.ashfield
2021-11-24 21:14 ` [PATCH 19/20] perf: sort-pmuevents: don't drop elements bruce.ashfield
2021-11-24 21:14 ` [PATCH 20/20] perf: sort-pmuevents: allow for additional type qualifiers and storage class bruce.ashfield
2022-03-14 21:13   ` Ferry Toth

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1637788184.git.bruce.ashfield@gmail.com \
    --to=bruce.ashfield@gmail.com \
    --cc=TicoTimo@gmail.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=richard.purdie@linuxfoundation.org \
    --cc=trevor.gamblin@windriver.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.