Skip to content

Commit

Permalink
Merge tag 'driver-core-6.0-rc1' of git://git.kernel.org/pub/scm/linux…
Browse files Browse the repository at this point in the history
…/kernel/git/gregkh/driver-core

Pull driver core / kernfs updates from Greg KH:
 "Here is the set of driver core and kernfs changes for 6.0-rc1.

  The "biggest" thing in here is some scalability improvements for
  kernfs for large systems. Other than that, included in here are:

   - arch topology and cache info changes that have been reviewed and
     discussed a lot.

   - potential error path cleanup fixes

   - deferred driver probe cleanups

   - firmware loader cleanups and tweaks

   - documentation updates

   - other small things

  All of these have been in the linux-next tree for a while with no
  reported problems"

* tag 'driver-core-6.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (63 commits)
  docs: embargoed-hardware-issues: fix invalid AMD contact email
  firmware_loader: Replace kmap() with kmap_local_page()
  sysfs docs: ABI: Fix typo in comment
  kobject: fix Kconfig.debug "its" grammar
  kernfs: Fix typo 'the the' in comment
  docs: driver-api: firmware: add driver firmware guidelines. (v3)
  arch_topology: Fix cache attributes detection in the CPU hotplug path
  ACPI: PPTT: Leave the table mapped for the runtime usage
  cacheinfo: Use atomic allocation for percpu cache attributes
  drivers/base: fix userspace break from using bin_attributes for cpumap and cpulist
  MAINTAINERS: Change mentions of mpm to olivia
  docs: ABI: sysfs-devices-soc: Update Lee Jones' email address
  docs: ABI: sysfs-class-pwm: Update Lee Jones' email address
  Documentation/process: Add embargoed HW contact for LLVM
  Revert "kernfs: Change kernfs_notify_list to llist."
  ACPI: Remove the unused find_acpi_cpu_cache_topology()
  arch_topology: Warn that topology for nested clusters is not supported
  arch_topology: Add support for parsing sockets in /cpu-map
  arch_topology: Set cluster identifier in each core/thread from /cpu-map
  arch_topology: Limit span of cpu_clustergroup_mask()
  ...
  • Loading branch information
torvalds committed Aug 4, 2022
2 parents 228dfe9 + 273aaa2 commit cfeafd9
Show file tree
Hide file tree
Showing 47 changed files with 718 additions and 374 deletions.
2 changes: 1 addition & 1 deletion Documentation/ABI/stable/sysfs-module
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ What: /sys/module/<MODULENAME>/srcversion
Date: Jun 2005
Description:
If the module source has MODULE_VERSION, this file will contain
the checksum of the the source code.
the checksum of the source code.

What: /sys/module/<MODULENAME>/version
Date: Jun 2005
Expand Down
2 changes: 1 addition & 1 deletion Documentation/ABI/testing/sysfs-class-pwm
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ Description:
What: /sys/class/pwm/pwmchip<N>/pwmX/capture
Date: June 2016
KernelVersion: 4.8
Contact: Lee Jones <lee.jones@linaro.org>
Contact: Lee Jones <lee@kernel.org>
Description:
Capture information about a PWM signal. The output format is a
pair unsigned integers (period and duty cycle), separated by a
Expand Down
2 changes: 1 addition & 1 deletion Documentation/ABI/testing/sysfs-class-rtrs-client
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ What: /sys/class/rtrs-client/<session-name>/paths/<src@dst>/hca_name
Date: Feb 2020
KernelVersion: 5.7
Contact: Jack Wang <[email protected]> Danil Kipnis <[email protected]>
Description: RO, Contains the the name of HCA the connection established on.
Description: RO, Contains the name of HCA the connection established on.

What: /sys/class/rtrs-client/<session-name>/paths/<src@dst>/hca_port
Date: Feb 2020
Expand Down
2 changes: 1 addition & 1 deletion Documentation/ABI/testing/sysfs-class-rtrs-server
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ What: /sys/class/rtrs-server/<session-name>/paths/<src@dst>/hca_name
Date: Feb 2020
KernelVersion: 5.7
Contact: Jack Wang <[email protected]> Danil Kipnis <[email protected]>
Description: RO, Contains the the name of HCA the connection established on.
Description: RO, Contains the name of HCA the connection established on.

What: /sys/class/rtrs-server/<session-name>/paths/<src@dst>/hca_port
Date: Feb 2020
Expand Down
2 changes: 1 addition & 1 deletion Documentation/ABI/testing/sysfs-devices-platform-ACPI-TAD
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ Description:

Reads also cause the AC alarm timer status to be reset.

Another way to reset the the status of the AC alarm timer is to
Another way to reset the status of the AC alarm timer is to
write (the number) 0 to this file.

If the status return value indicates that the timer has expired,
Expand Down
2 changes: 1 addition & 1 deletion Documentation/ABI/testing/sysfs-devices-power
Original file line number Diff line number Diff line change
Expand Up @@ -303,5 +303,5 @@ Date: Apr 2010
Contact: Dominik Brodowski <[email protected]>
Description:
Reports the runtime PM children usage count of a device, or
0 if the the children will be ignored.
0 if the children will be ignored.

14 changes: 7 additions & 7 deletions Documentation/ABI/testing/sysfs-devices-soc
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
What: /sys/devices/socX
Date: January 2012
contact: Lee Jones <lee.jones@linaro.org>
contact: Lee Jones <lee@kernel.org>
Description:
The /sys/devices/ directory contains a sub-directory for each
System-on-Chip (SoC) device on a running platform. Information
Expand All @@ -14,14 +14,14 @@ Description:

What: /sys/devices/socX/machine
Date: January 2012
contact: Lee Jones <lee.jones@linaro.org>
contact: Lee Jones <lee@kernel.org>
Description:
Read-only attribute common to all SoCs. Contains the SoC machine
name (e.g. Ux500).

What: /sys/devices/socX/family
Date: January 2012
contact: Lee Jones <lee.jones@linaro.org>
contact: Lee Jones <lee@kernel.org>
Description:
Read-only attribute common to all SoCs. Contains SoC family name
(e.g. DB8500).
Expand Down Expand Up @@ -59,7 +59,7 @@ Description:

What: /sys/devices/socX/soc_id
Date: January 2012
contact: Lee Jones <lee.jones@linaro.org>
contact: Lee Jones <lee@kernel.org>
Description:
Read-only attribute supported by most SoCs. In the case of
ST-Ericsson's chips this contains the SoC serial number.
Expand All @@ -72,21 +72,21 @@ Description:

What: /sys/devices/socX/revision
Date: January 2012
contact: Lee Jones <lee.jones@linaro.org>
contact: Lee Jones <lee@kernel.org>
Description:
Read-only attribute supported by most SoCs. Contains the SoC's
manufacturing revision number.

What: /sys/devices/socX/process
Date: January 2012
contact: Lee Jones <lee.jones@linaro.org>
contact: Lee Jones <lee@kernel.org>
Description:
Read-only attribute supported ST-Ericsson's silicon. Contains the
the process by which the silicon chip was manufactured.

What: /sys/bus/soc
Date: January 2012
contact: Lee Jones <lee.jones@linaro.org>
contact: Lee Jones <lee@kernel.org>
Description:
The /sys/bus/soc/ directory contains the usual sub-folders
expected under most buses. /sys/bus/soc/devices is of particular
Expand Down
7 changes: 1 addition & 6 deletions Documentation/ABI/testing/sysfs-devices-system-cpu
Original file line number Diff line number Diff line change
Expand Up @@ -67,8 +67,7 @@ Description: Discover NUMA node a CPU belongs to
/sys/devices/system/cpu/cpu42/node2 -> ../../node/node2


What: /sys/devices/system/cpu/cpuX/topology/core_id
/sys/devices/system/cpu/cpuX/topology/core_siblings
What: /sys/devices/system/cpu/cpuX/topology/core_siblings
/sys/devices/system/cpu/cpuX/topology/core_siblings_list
/sys/devices/system/cpu/cpuX/topology/physical_package_id
/sys/devices/system/cpu/cpuX/topology/thread_siblings
Expand All @@ -84,10 +83,6 @@ Description: CPU topology files that describe a logical CPU's relationship

Briefly, the files above are:

core_id: the CPU core ID of cpuX. Typically it is the
hardware platform's identifier (rather than the kernel's).
The actual value is architecture and platform dependent.

core_siblings: internal kernel map of cpuX's hardware threads
within the same physical_package_id.

Expand Down
1 change: 1 addition & 0 deletions Documentation/driver-api/firmware/core.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,5 @@ documents these features.
direct-fs-lookup
fallback-mechanisms
lookup-order
firmware-usage-guidelines

44 changes: 44 additions & 0 deletions Documentation/driver-api/firmware/firmware-usage-guidelines.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
===================
Firmware Guidelines
===================

Users switching to a newer kernel should *not* have to install newer
firmware files to keep their hardware working. At the same time updated
firmware files must not cause any regressions for users of older kernel
releases.

Drivers that use firmware from linux-firmware should follow the rules in
this guide. (Where there is limited control of the firmware,
i.e. company doesn't support Linux, firmwares sourced from misc places,
then of course these rules will not apply strictly.)

* Firmware files shall be designed in a way that it allows checking for
firmware ABI version changes. It is recommended that firmware files be
versioned with at least a major/minor version. It is suggested that
the firmware files in linux-firmware be named with some device
specific name, and just the major version. The firmware version should
be stored in the firmware header, or as an exception, as part of the
firmware file name, in order to let the driver detact any non-ABI
fixes/changes. The firmware files in linux-firmware should be
overwritten with the newest compatible major version. Newer major
version firmware shall remain compatible with all kernels that load
that major number.

* If the kernel support for the hardware is normally inactive, or the
hardware isn't available for public consumption, this can
be ignored, until the first kernel release that enables that hardware.
This means no major version bumps without the kernel retaining
backwards compatibility for the older major versions. Minor version
bumps should not introduce new features that newer kernels depend on
non-optionally.

* If a security fix needs lockstep firmware and kernel fixes in order to
be successful, then all supported major versions in the linux-firmware
repo that are required by currently supported stable/LTS kernels,
should be updated with the security fix. The kernel patches should
detect if the firmware is new enough to declare if the security issue
is fixed. All communications around security fixes should point at
both the firmware and kernel fixes. If a security fix requires
deprecating old major versions, then this should only be done as a
last option, and be stated clearly in all communications.

5 changes: 4 additions & 1 deletion Documentation/process/embargoed-hardware-issues.rst
Original file line number Diff line number Diff line change
Expand Up @@ -244,7 +244,7 @@ disclosure of a particular issue, unless requested by a response team or by
an involved disclosed party. The current ambassadors list:

============= ========================================================
AMD Tom Lendacky <tom[email protected]>
AMD Tom Lendacky <thomas[email protected]>
Ampere Darren Hart <[email protected]>
ARM Catalin Marinas <[email protected]>
IBM Power Anton Blanchard <[email protected]>
Expand All @@ -264,6 +264,9 @@ an involved disclosed party. The current ambassadors list:

Amazon
Google Kees Cook <[email protected]>

GCC
LLVM Nick Desaulniers <[email protected]>
============= ========================================================

If you want your organization to be added to the ambassadors list, please
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,7 @@ CVE分配

============= ========================================================
ARM
AMD Tom Lendacky <tom[email protected]>
AMD Tom Lendacky <thomas[email protected]>
IBM
Intel Tony Luck <[email protected]>
Qualcomm Trilok Soni <[email protected]>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,7 @@ CVE分配

============= ========================================================
ARM
AMD Tom Lendacky <tom[email protected]>
AMD Tom Lendacky <thomas[email protected]>
IBM
Intel Tony Luck <[email protected]>
Qualcomm Trilok Soni <[email protected]>
Expand Down
4 changes: 2 additions & 2 deletions MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -7494,7 +7494,7 @@ F: Documentation/admin-guide/media/em28xx*
F: drivers/media/usb/em28xx/

EMBEDDED LINUX
M: Matt Mackall <mpm@selenic.com>
M: Olivia Mackall <olivia@selenic.com>
M: David Woodhouse <[email protected]>
L: [email protected]
S: Maintained
Expand Down Expand Up @@ -8902,7 +8902,7 @@ F: include/trace/events/hwmon*.h
K: (devm_)?hwmon_device_(un)?register(|_with_groups|_with_info)

HARDWARE RANDOM NUMBER GENERATOR CORE
M: Matt Mackall <mpm@selenic.com>
M: Olivia Mackall <olivia@selenic.com>
M: Herbert Xu <[email protected]>
L: [email protected]
S: Odd fixes
Expand Down
14 changes: 0 additions & 14 deletions arch/arm64/kernel/topology.c
Original file line number Diff line number Diff line change
Expand Up @@ -89,8 +89,6 @@ int __init parse_acpi_topology(void)
return 0;

for_each_possible_cpu(cpu) {
int i, cache_id;

topology_id = find_acpi_cpu_topology(cpu, 0);
if (topology_id < 0)
return topology_id;
Expand All @@ -107,18 +105,6 @@ int __init parse_acpi_topology(void)
cpu_topology[cpu].cluster_id = topology_id;
topology_id = find_acpi_cpu_topology_package(cpu);
cpu_topology[cpu].package_id = topology_id;

i = acpi_find_last_cache_level(cpu);

if (i > 0) {
/*
* this is the only part of cpu_topology that has
* a direct relationship with the cache topology
*/
cache_id = find_acpi_cpu_cache_topology(cpu, i);
if (cache_id > 0)
cpu_topology[cpu].llc_id = cache_id;
}
}

return 0;
Expand Down
Loading

0 comments on commit cfeafd9

Please sign in to comment.