lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:   Wed, 31 May 2017 17:59:24 +0100
From:   Juri Lelli <juri.lelli@....com>
To:     linux-kernel@...r.kernel.org
Cc:     linux-pm@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
        devicetree@...r.kernel.org, peterz@...radead.org,
        vincent.guittot@...aro.org, robh+dt@...nel.org,
        mark.rutland@....com, linux@....linux.org.uk, sudeep.holla@....com,
        lorenzo.pieralisi@....com, catalin.marinas@....com,
        will.deacon@....com, morten.rasmussen@....com,
        dietmar.eggemann@....com, juri.lelli@....com, broonie@...nel.org,
        gregkh@...uxfoundation.org
Subject: [PATCH v5 0/7] Fix issues and factorize arm/arm64 capacity information code

Hi,

arm and arm64 topology.c share a lot of code related to parsing of capacity
information. This is v5 of a solution [1] (based on Will's, Catalin's and
Mark's off-line suggestions) to move such common code in a single place:
drivers/base/arch_topology.c (by creating such file and conditionally compiling
it for arm and arm64 only).

First 3 patches are actually fixes for the current code.

Patch 4 is the actual refactoring.

Patch 5 removes one of the extern symbols by changing a bit the now common
code.

Patch 6 removes the remaining externs (as required by Russell during v1 review)
by creating a new header file include/linux/arch_topology.h and including that
from arm, arm64 and drivers.

Last patch addresses Greg, Dietmar and Morten's comments to v4 by adding a
'topology_' prefix to interfaces exported by drivers code and used by arch (and
potentially others in the future). It also rename function names to make them
better reflect what the functions really do.

Changes from v4:

 - rebase on top of 4.12-rc3 (3f173bde7e43)
 - addressed Greg, Dietmar and Morten's comment on patch 7/7
 - added Vincent and Greg's Acked-by

The set is based on top of linux/master (4.12-rc3 3f173bde7e43) and it is also
available from:

 git://linux-arm.org/linux-jl.git upstream/default_caps_factorize-v5

Greg, if 7/7 looks now OK to you, could you please take the set so that it will
be ready for 4.13 merge window?

Thanks,

- Juri

[1] v1 - https://marc.info/?l=linux-kernel&m=148483680119355&w=2
    v2 - https://marc.info/?l=linux-kernel&m=148663344018205&w=2
    v3 - http://marc.info/?l=linux-kernel&m=149062080701399&w=2
    v4 - https://marc.info/?l=linux-kernel&m=149269955206646&w=2

Juri Lelli (7):
  Documentation: arm: fix wrong reference number in DT definition
  arm: fix return value of parse_cpu_capacity
  arm: remove wrong CONFIG_PROC_SYSCTL ifdef
  arm, arm64: factorize common cpu capacity default code
  arm,arm64,drivers: reduce scope of cap_parsing_failed
  arm,arm64,drivers: move externs in a new header file
  arm,arm64,drivers: add a prefix to drivers arch_topology interfaces

 Documentation/devicetree/bindings/arm/cpus.txt |   4 +-
 arch/arm/Kconfig                               |   1 +
 arch/arm/kernel/topology.c                     | 221 +---------------------
 arch/arm64/Kconfig                             |   1 +
 arch/arm64/kernel/topology.c                   | 226 +----------------------
 drivers/base/Kconfig                           |   8 +
 drivers/base/Makefile                          |   1 +
 drivers/base/arch_topology.c                   | 243 +++++++++++++++++++++++++
 include/linux/arch_topology.h                  |  17 ++
 9 files changed, 283 insertions(+), 439 deletions(-)
 create mode 100644 drivers/base/arch_topology.c
 create mode 100644 include/linux/arch_topology.h

-- 
2.11.0

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ