[PATCH 4.4 v1 00/17] Backport fixes that depends on SYSTEM_SCHEDULING

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is an alternative to another series[1].

The primary purpose of this series for v4.4-rt is to resolve problem that
WARNING in unpin_current_cpu() happens repeatedly while kernel is booting.
Please see commit message of the last patch (17/17) for more details
about the problem and how it's resolved.

This series consists of the following parts:

1-16: A patch series backported from mainline[2]. Its original purpose
      is to enable earlier might_sleep() and smp_processor_id(), but
      another role here is to introduces SYSTEM_SCHEDULING for 17.
17:   A fix for unpin_current_cpu() WARNING picked up from changes in
      v4.14-rt, which requires SYSTEM_SCHEDULING by the series above.

The commits from the backported series below are adjusted to v4.4-rt.
See comments around "Conflicts" in each commit for details.

ef284f5c Adjusted to handle 82611c14 not in v4.4.
b903dfb2 Ignored. The target code is added by d7b05582, but it's for
         deferred IOMMU support which should not be backported.
ff48cd26 Adjusted to handle cf775444 not in v4.4.

As v4.4-rt have been EOL already, it's not expected that this series
is applied to the branch anymore.
On the other hand, the Civil Infrastructure Platform Project (CIP)
has been maintaining its 4.4 SLTS RT kernel[3][4] based on v4.4-rt,
and needs to fix the problem above by this series.

It is much appreciated if RT experts could take a look at the series
and give feedbacks, especially about whether changes by the backported
series such as adding a new system_state are acceptable in regular
RT kernel maintenance so far and in the future (i.e. mainline based).

[1] https://lore.kernel.org/linux-rt-devel/Z6Nf32YB%2FJ0LMSPw@xxxxxxxxxx/T/
[2] https://lore.kernel.org/all/20170516184231.564888231@xxxxxxxxxxxxx/T/
[3] https://wiki.linuxfoundation.org/civilinfrastructureplatform/start#kernel_maintainership
[4] https://git.kernel.org/pub/scm/linux/kernel/git/cip/linux-cip.git/log/?h=linux-4.4.y-cip-rt

Kazuhiro Hayashi (1):
  mm: slub: allocate_slab() enables IRQ right after scheduler starts

Thomas Gleixner (16):
  init: Pin init task to the boot CPU, initially
  arm: Adjust system_state check
  arm64: Adjust system_state check
  x86/smp: Adjust system_state check
  metag: Adjust system_state check
  powerpc: Adjust system_state check
  ACPI: Adjust system_state check
  mm: Adjust system_state check
  cpufreq/pasemi: Adjust system_state check
  iommu/vt-d: Adjust system_state checks
  async: Adjust system_state checks
  extable: Adjust system_state checks
  printk: Adjust system_state checks
  mm/vmscan: Adjust system_state checks
  init: Introduce SYSTEM_SCHEDULING state
  sched/core: Enable might_sleep() and smp_processor_id() checks early

 arch/arm/kernel/smp.c            |  3 +--
 arch/arm64/kernel/smp.c          |  3 +--
 arch/metag/kernel/smp.c          |  3 +--
 arch/powerpc/kernel/smp.c        |  2 +-
 arch/x86/kernel/smpboot.c        |  2 +-
 drivers/acpi/pci_root.c          |  2 +-
 drivers/base/node.c              |  2 +-
 drivers/cpufreq/pasemi-cpufreq.c |  2 +-
 drivers/iommu/intel-iommu.c      |  4 ++--
 drivers/xen/manage.c             |  1 +
 include/linux/kernel.h           |  6 +++++-
 init/main.c                      | 27 ++++++++++++++++++++++-----
 kernel/async.c                   |  8 ++++----
 kernel/extable.c                 |  2 +-
 kernel/printk/printk.c           |  2 +-
 kernel/sched/core.c              |  4 +++-
 lib/smp_processor_id.c           |  2 +-
 mm/slub.c                        |  2 +-
 mm/vmscan.c                      |  2 +-
 19 files changed, 50 insertions(+), 29 deletions(-)

-- 
2.30.2






[Index of Archives]     [RT Stable]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux