All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bruce Ashfield <bruce.ashfield@windriver.com>
To: richard.purdie@linuxfoundation.org
Cc: openembedded-core@lists.openembedded.org
Subject: [PATCH 0/6] kernel-yocto: consolidated pull request
Date: Mon, 15 Aug 2016 14:26:54 -0400	[thread overview]
Message-ID: <cover.1471281772.git.bruce@zedd.org> (raw)

Hi all,

Here's a collection of changes that have been queued over the past couple of
weeks.

I'm working on some additional -stable updates, as well as a new release
kernel for the fall release, but I wanted to get this queue cleared first.

The patches:

  linux-yocto/4.1: netfilter: x_tables: fix stable backport
  linux-yocto/4.1: bump to v4.1.29
  linux-yocto/4.1: config updates
  linux-yocto/4.4: -rt update patch meta-data to remove ()

Are typical -stable, and bug fix changes. I haven't seen any issues in my
local builds, so all looks well there. These can be taken in isolation from
the kernel tools changes that follow:

  kernel-yocto: streamline patch, configuration and audit phases
  yocto-bsp/yocto-kernel: update to work with the latest kern-tools

Are the important part of this series, and a significant contribution to the
fall release. I've been testing these for some time, and we've run the
kernel lab and yocto-bsp scripts against the tools. We haven't found a
regression yet, but I'm sure there are some lurking. These definitely need
cycles on the autobuilders.

From the patch itself:

[
   We've been running with a set of kern-tools that were designed to work
   with build systems that knew nothing about git, trees, commits, etc.

   As such, there's been a set of shims/wrappers in place to work with
   within bitbake/oe-core. These were the *me scripts: createme, updateme,
   patchme and configme.

   With this commit, we strip that legacy code and use the tools directly.
   This means less complexity, fewer corner cases .. and no surprises
   when the tools are arunning. As another benefit, the tools consume
   much less time during a typical build and have no noticeable impact
   on the overall build time.

   Existing .scc files, features, and processing are not impacted as
   these tools are compatible with existing feature descriptions and
   kerne configuration fragments.

   The audit of kernel configuration fragments is now detached
   from the linux-yocto build structure and process. This means that
   they can eventually be tweaked to offer kernel audit to any type of
   kernel build and configuration process.

   Additionally, the kernel symbol audit phase can now resolve symbol
   dependencies and offer guidance when a symbol is missing:

      WARNING: linux-yocto-4.4.15+gitAUTOINC+b030d96c7b_f5e2c49d58-r0 do_kernel_configcheck: [kernel config]: specified values did not make it into the kernel's final configuration:

      ---------- CONFIG_BT_6LOWPAN -----------------
      Config: CONFIG_BT_6LOWPAN
      From: /home/bruce/poky/build/tmp/work-shared/qemux86-64/kernel-source/.kernel-meta/configs/standard/features/bluetooth/bluetooth.cfg
      Requested value:  CONFIG_BT_6LOWPAN=y
      Actual value:

      Config 'BT_6LOWPAN' has the following conditionals:
        BT_LE && 6LOWPAN (value: "n")
      Dependency values are:
        BT_LE [y] 6LOWPAN [n]
]

This is the 2nd step in making fragments, and their audit available to
any type of kernel build. They are also a significant simplification and
speed up of the processing. There's no branching, no conditioning of the
tree, etc.

The shortlogs of the tools changes are:

   4b5de90 kconf_check: use symbol_why to provide diagnostics on missing options
   92f8053 symbol_why: introduce symbol_why
   779d675 Makefile: add Kconfiglib to install list
   39c00bc tools: import Kconfiglib
   68531c9 kgit: add repo clean function
   b73353f kgit-scc: update tree gen to new kern-tools
   09a1a6c kgit: detect if sourced
   2bad46f kgit-meta: adapt to new scc/spp meta series generation
   8332818 kconf_check: standalone operation and command line options
   d7e06ed spp/scc: streamline patch and config series generation
   f67df1c merge_config: update to mainline variant
   a67df68 kgit-s2q: log last patch applied

The overall diffstat for the tools changes are:

    b/Makefile                  |   26 -
    b/tools/kconf_check         |  923 ++++++++++++++++--------------------
    b/tools/kgit                |  320 ++++++++----
    b/tools/kgit-init           |  301 ++---------
    b/tools/kgit-meta           | 1119 +++-----------------------------------------
    b/tools/kgit-s2q            |   29 -
    b/tools/kgit-scc            |  238 ++-------
    b/tools/merge_config.sh     |  102 ++--
    b/tools/scc                 |  290 +++++++----
    b/tools/scc-cmds/auto.cmd   |   30 +
    b/tools/scc-cmds/branch.cmd |   38 +
    b/tools/scc-cmds/define.cmd |    9
    b/tools/scc-cmds/kconf.cmd  |   55 ++
    b/tools/scc-cmds/mark.cmd   |    4
    b/tools/scc-cmds/patch.cmd  |   32 +
    b/tools/spp                 |  653 +++++++++++++++++--------
    b/tools/symbol_why.py       |  236 +++++++++
    tools/configme              |  397 ---------------
    tools/createme              |  235 ---------
    tools/patchme               |  132 -----
    tools/pre_config            |  226 --------
    tools/updateme              |  621 ------------------------
    22 files changed, 2001 insertions(+), 4015 deletions(-)

We end up at a 2:1 code reduction, and the raw tools are directly used, wins
on both counts.

Note: there are still warnings in the kernel meta-data, they are being worked
on, but I've left them in place so a few people can see the new kernel audit
information :)

Cheers,

Bruce


The following changes since commit 6b66e9317f4ec3a69f98f29836aafa35b52f3fc7:

  Allow for simultaneous do_rootfs tasks with rpm (2016-08-12 15:25:22 +0100)

are available in the git repository at:

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

Bruce Ashfield (6):
  linux-yocto/4.1: netfilter: x_tables: fix stable backport
  linux-yocto/4.1: bump to v4.1.29
  linux-yocto/4.1: config updates
  linux-yocto/4.4: -rt update patch meta-data to remove ()
  kernel-yocto: streamline patch, configuration and audit phases
  yocto-bsp/yocto-kernel: update to work with the latest kern-tools

 meta/classes/kernel-yocto.bbclass                  | 143 ++++++++-------------
 .../kern-tools/kern-tools-native_git.bb            |   4 +-
 meta/recipes-kernel/linux/linux-yocto-rt_4.1.bb    |   6 +-
 meta/recipes-kernel/linux/linux-yocto-rt_4.4.bb    |   2 +-
 meta/recipes-kernel/linux/linux-yocto-tiny_4.1.bb  |   6 +-
 meta/recipes-kernel/linux/linux-yocto-tiny_4.4.bb  |   2 +-
 meta/recipes-kernel/linux/linux-yocto_4.1.bb       |  20 +--
 meta/recipes-kernel/linux/linux-yocto_4.4.bb       |   2 +-
 scripts/lib/bsp/kernel.py                          |   1 -
 .../linux/files/machine-standard.scc               |   2 +-
 .../linux/files/machine-standard.scc               |   2 +-
 .../linux/files/machine-standard.scc               |   2 +-
 .../linux/files/machine-standard.scc               |   2 +-
 .../linux/files/machine-standard.scc               |   2 +-
 .../linux/files/machine-standard.scc               |  10 +-
 .../linux/files/machine-standard.scc               |   2 +-
 16 files changed, 85 insertions(+), 123 deletions(-)

-- 
2.5.0



             reply	other threads:[~2016-08-15 18:27 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-15 18:26 Bruce Ashfield [this message]
2016-08-15 18:26 ` [PATCH 1/6] linux-yocto/4.1: netfilter: x_tables: fix stable backport Bruce Ashfield
2016-08-15 18:26 ` [PATCH 2/6] linux-yocto/4.1: bump to v4.1.29 Bruce Ashfield
2016-08-18 15:15   ` Richard Purdie
2016-08-18 15:16     ` Bruce Ashfield
2016-08-18 15:20       ` Richard Purdie
2016-08-19 14:57         ` Bruce Ashfield
2016-08-24 11:25           ` Richard Purdie
2016-08-24 13:14             ` Bruce Ashfield
2016-08-15 18:26 ` [PATCH 3/6] linux-yocto/4.1: config updates Bruce Ashfield
2016-08-15 18:26 ` [PATCH 4/6] linux-yocto/4.4: -rt update patch meta-data to remove () Bruce Ashfield
2016-08-15 18:26 ` [PATCH 5/6] kernel-yocto: streamline patch, configuration and audit phases Bruce Ashfield
2016-08-30  9:05   ` André Draszik
2016-08-30 13:05     ` Bruce Ashfield
2016-08-30 14:19       ` André Draszik
2016-08-30 18:35         ` Bruce Ashfield
2016-08-31  8:54           ` André Draszik
2016-08-31 20:17             ` Bruce Ashfield
2016-09-01 16:14               ` André Draszik
2016-09-01 20:21                 ` Bruce Ashfield
2016-09-02  3:18                 ` Bruce Ashfield
2016-09-02  4:37                   ` Bruce Ashfield
2016-08-15 18:27 ` [PATCH 6/6] yocto-bsp/yocto-kernel: update to work with the latest kern-tools Bruce Ashfield
2016-08-16 16:00 ` [PATCH 0/6] kernel-yocto: consolidated pull request Burton, Ross
2016-08-16 16:01   ` Bruce Ashfield
2016-08-16 16:10     ` Burton, Ross
2016-08-16 16:11       ` Bruce Ashfield
2016-08-16 16:15         ` Burton, Ross
2017-06-08 19:21 Bruce Ashfield
2017-07-11 15:04 Bruce Ashfield
2021-06-16 20:48 Bruce Ashfield
2021-07-29  4:49 Bruce Ashfield
2022-04-04 15:19 bruce.ashfield

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.1471281772.git.bruce@zedd.org \
    --to=bruce.ashfield@windriver.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=richard.purdie@linuxfoundation.org \
    /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.