01 Apr, 2020

3 commits

  • Pull networking updates from David Miller:
    "Highlights:

    1) Fix the iwlwifi regression, from Johannes Berg.

    2) Support BSS coloring and 802.11 encapsulation offloading in
    hardware, from John Crispin.

    3) Fix some potential Spectre issues in qtnfmac, from Sergey
    Matyukevich.

    4) Add TTL decrement action to openvswitch, from Matteo Croce.

    5) Allow paralleization through flow_action setup by not taking the
    RTNL mutex, from Vlad Buslov.

    6) A lot of zero-length array to flexible-array conversions, from
    Gustavo A. R. Silva.

    7) Align XDP statistics names across several drivers for consistency,
    from Lorenzo Bianconi.

    8) Add various pieces of infrastructure for offloading conntrack, and
    make use of it in mlx5 driver, from Paul Blakey.

    9) Allow using listening sockets in BPF sockmap, from Jakub Sitnicki.

    10) Lots of parallelization improvements during configuration changes
    in mlxsw driver, from Ido Schimmel.

    11) Add support to devlink for generic packet traps, which report
    packets dropped during ACL processing. And use them in mlxsw
    driver. From Jiri Pirko.

    12) Support bcmgenet on ACPI, from Jeremy Linton.

    13) Make BPF compatible with RT, from Thomas Gleixnet, Alexei
    Starovoitov, and your's truly.

    14) Support XDP meta-data in virtio_net, from Yuya Kusakabe.

    15) Fix sysfs permissions when network devices change namespaces, from
    Christian Brauner.

    16) Add a flags element to ethtool_ops so that drivers can more simply
    indicate which coalescing parameters they actually support, and
    therefore the generic layer can validate the user's ethtool
    request. Use this in all drivers, from Jakub Kicinski.

    17) Offload FIFO qdisc in mlxsw, from Petr Machata.

    18) Support UDP sockets in sockmap, from Lorenz Bauer.

    19) Fix stretch ACK bugs in several TCP congestion control modules,
    from Pengcheng Yang.

    20) Support virtual functiosn in octeontx2 driver, from Tomasz
    Duszynski.

    21) Add region operations for devlink and use it in ice driver to dump
    NVM contents, from Jacob Keller.

    22) Add support for hw offload of MACSEC, from Antoine Tenart.

    23) Add support for BPF programs that can be attached to LSM hooks,
    from KP Singh.

    24) Support for multiple paths, path managers, and counters in MPTCP.
    From Peter Krystad, Paolo Abeni, Florian Westphal, Davide Caratti,
    and others.

    25) More progress on adding the netlink interface to ethtool, from
    Michal Kubecek"

    * git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (2121 commits)
    net: ipv6: rpl_iptunnel: Fix potential memory leak in rpl_do_srh_inline
    cxgb4/chcr: nic-tls stats in ethtool
    net: dsa: fix oops while probing Marvell DSA switches
    net/bpfilter: remove superfluous testing message
    net: macb: Fix handling of fixed-link node
    net: dsa: ksz: Select KSZ protocol tag
    netdevsim: dev: Fix memory leak in nsim_dev_take_snapshot_write
    net: stmmac: add EHL 2.5Gbps PCI info and PCI ID
    net: stmmac: add EHL PSE0 & PSE1 1Gbps PCI info and PCI ID
    net: stmmac: create dwmac-intel.c to contain all Intel platform
    net: dsa: bcm_sf2: Support specifying VLAN tag egress rule
    net: dsa: bcm_sf2: Add support for matching VLAN TCI
    net: dsa: bcm_sf2: Move writing of CFP_DATA(5) into slicing functions
    net: dsa: bcm_sf2: Check earlier for FLOW_EXT and FLOW_MAC_EXT
    net: dsa: bcm_sf2: Disable learning for ASP port
    net: dsa: b53: Deny enslaving port 7 for 7278 into a bridge
    net: dsa: b53: Prevent tagged VLAN on port 7 for 7278
    net: dsa: b53: Restore VLAN entries upon (re)configuration
    net: dsa: bcm_sf2: Fix overflow checks
    hv_netvsc: Remove unnecessary round_up for recv_completion_cnt
    ...

    Linus Torvalds
     
  • Pull SELinux updates from Paul Moore:
    "We've got twenty SELinux patches for the v5.7 merge window, the
    highlights are below:

    - Deprecate setting /sys/fs/selinux/checkreqprot to 1.

    This flag was originally created to deal with legacy userspace and
    the READ_IMPLIES_EXEC personality flag. We changed the default from
    1 to 0 back in Linux v4.4 and now we are taking the next step of
    deprecating it, at some point in the future we will take the final
    step of rejecting 1.

    - Allow kernfs symlinks to inherit the SELinux label of the parent
    directory. In order to preserve backwards compatibility this is
    protected by the genfs_seclabel_symlinks SELinux policy capability.

    - Optimize how we store filename transitions in the kernel, resulting
    in some significant improvements to policy load times.

    - Do a better job calculating our internal hash table sizes which
    resulted in additional policy load improvements and likely general
    SELinux performance improvements as well.

    - Remove the unused initial SIDs (labels) and improve how we handle
    initial SIDs.

    - Enable per-file labeling for the bpf filesystem.

    - Ensure that we properly label NFS v4.2 filesystems to avoid a
    temporary unlabeled condition.

    - Add some missing XFS quota command types to the SELinux quota
    access controls.

    - Fix a problem where we were not updating the seq_file position
    index correctly in selinuxfs.

    - We consolidate some duplicated code into helper functions.

    - A number of list to array conversions.

    - Update Stephen Smalley's email address in MAINTAINERS"

    * tag 'selinux-pr-20200330' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux:
    selinux: clean up indentation issue with assignment statement
    NFS: Ensure security label is set for root inode
    MAINTAINERS: Update my email address
    selinux: avtab_init() and cond_policydb_init() return void
    selinux: clean up error path in policydb_init()
    selinux: remove unused initial SIDs and improve handling
    selinux: reduce the use of hard-coded hash sizes
    selinux: Add xfs quota command types
    selinux: optimize storage of filename transitions
    selinux: factor out loop body from filename_trans_read()
    security: selinux: allow per-file labeling for bpffs
    selinux: generalize evaluate_cond_node()
    selinux: convert cond_expr to array
    selinux: convert cond_av_list to array
    selinux: convert cond_list to array
    selinux: sel_avc_get_stat_idx should increase position index
    selinux: allow kernfs symlinks to inherit parent directory context
    selinux: simplify evaluate_cond_node()
    Documentation,selinux: deprecate setting checkreqprot to 1
    selinux: move status variables out of selinux_ss

    Linus Torvalds
     
  • Pull x86 vmware updates from Ingo Molnar:
    "The main change in this tree is the addition of 'steal time clock
    support' for VMware guests"

    * 'x86-vmware-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/vmware: Use bool type for vmw_sched_clock
    x86/vmware: Enable steal time accounting
    x86/vmware: Add steal time clock support for VMware guests
    x86/vmware: Remove vmware_sched_clock_setup()
    x86/vmware: Make vmware_select_hypercall() __init

    Linus Torvalds
     

31 Mar, 2020

7 commits

  • Pull x86 splitlock updates from Thomas Gleixner:
    "Support for 'split lock' detection:

    Atomic operations (lock prefixed instructions) which span two cache
    lines have to acquire the global bus lock. This is at least 1k cycles
    slower than an atomic operation within a cache line and disrupts
    performance on other cores. Aside of performance disruption this is a
    unpriviledged form of DoS.

    Some newer CPUs have the capability to raise an #AC trap when such an
    operation is attempted. The detection is by default enabled in warning
    mode which will warn once when a user space application is caught. A
    command line option allows to disable the detection or to select fatal
    mode which will terminate offending applications with SIGBUS"

    * tag 'x86-splitlock-2020-03-30' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/split_lock: Avoid runtime reads of the TEST_CTRL MSR
    x86/split_lock: Rework the initialization flow of split lock detection
    x86/split_lock: Enable split lock detection by kernel

    Linus Torvalds
     
  • Pull scheduler updates from Ingo Molnar:
    "The main changes in this cycle are:

    - Various NUMA scheduling updates: harmonize the load-balancer and
    NUMA placement logic to not work against each other. The intended
    result is better locality, better utilization and fewer migrations.

    - Introduce Thermal Pressure tracking and optimizations, to improve
    task placement on thermally overloaded systems.

    - Implement frequency invariant scheduler accounting on (some) x86
    CPUs. This is done by observing and sampling the 'recent' CPU
    frequency average at ~tick boundaries. The CPU provides this data
    via the APERF/MPERF MSRs. This hopefully makes our capacity
    estimates more precise and keeps tasks on the same CPU better even
    if it might seem overloaded at a lower momentary frequency. (As
    usual, turbo mode is a complication that we resolve by observing
    the maximum frequency and renormalizing to it.)

    - Add asymmetric CPU capacity wakeup scan to improve capacity
    utilization on asymmetric topologies. (big.LITTLE systems)

    - PSI fixes and optimizations.

    - RT scheduling capacity awareness fixes & improvements.

    - Optimize the CONFIG_RT_GROUP_SCHED constraints code.

    - Misc fixes, cleanups and optimizations - see the changelog for
    details"

    * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (62 commits)
    threads: Update PID limit comment according to futex UAPI change
    sched/fair: Fix condition of avg_load calculation
    sched/rt: cpupri_find: Trigger a full search as fallback
    kthread: Do not preempt current task if it is going to call schedule()
    sched/fair: Improve spreading of utilization
    sched: Avoid scale real weight down to zero
    psi: Move PF_MEMSTALL out of task->flags
    MAINTAINERS: Add maintenance information for psi
    psi: Optimize switching tasks inside shared cgroups
    psi: Fix cpu.pressure for cpu.max and competing cgroups
    sched/core: Distribute tasks within affinity masks
    sched/fair: Fix enqueue_task_fair warning
    thermal/cpu-cooling, sched/core: Move the arch_set_thermal_pressure() API to generic scheduler code
    sched/rt: Remove unnecessary push for unfit tasks
    sched/rt: Allow pulling unfitting task
    sched/rt: Optimize cpupri_find() on non-heterogenous systems
    sched/rt: Re-instate old behavior in select_task_rq_rt()
    sched/rt: cpupri_find: Implement fallback mechanism for !fit case
    sched/fair: Fix reordering of enqueue/dequeue_task_fair()
    sched/fair: Fix runnable_avg for throttled cfs
    ...

    Linus Torvalds
     
  • Pull RCU updates from Ingo Molnar:
    "The main changes in this cycle were:

    - Make kfree_rcu() use kfree_bulk() for added performance

    - RCU updates

    - Callback-overload handling updates

    - Tasks-RCU KCSAN and sparse updates

    - Locking torture test and RCU torture test updates

    - Documentation updates

    - Miscellaneous fixes"

    * 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (74 commits)
    rcu: Make rcu_barrier() account for offline no-CBs CPUs
    rcu: Mark rcu_state.gp_seq to detect concurrent writes
    Documentation/memory-barriers: Fix typos
    doc: Add rcutorture scripting to torture.txt
    doc/RCU/rcu: Use https instead of http if possible
    doc/RCU/rcu: Use absolute paths for non-rst files
    doc/RCU/rcu: Use ':ref:' for links to other docs
    doc/RCU/listRCU: Update example function name
    doc/RCU/listRCU: Fix typos in a example code snippets
    doc/RCU/Design: Remove remaining HTML tags in ReST files
    doc: Add some more RCU list patterns in the kernel
    rcutorture: Set KCSAN Kconfig options to detect more data races
    rcutorture: Manually clean up after rcu_barrier() failure
    rcutorture: Make rcu_torture_barrier_cbs() post from corresponding CPU
    rcuperf: Measure memory footprint during kfree_rcu() test
    rcutorture: Annotation lockless accesses to rcu_torture_current
    rcutorture: Add READ_ONCE() to rcu_torture_count and rcu_torture_batch
    rcutorture: Fix stray access to rcu_fwd_cb_nodelay
    rcutorture: Fix rcu_torture_one_read()/rcu_torture_writer() data race
    rcutorture: Make kvm-find-errors.sh abort on bad directory
    ...

    Linus Torvalds
     
  • Pull ACPI updates from Rafael Wysocki:

    - Update the ACPICA code in the kernel to the 20200214 upstream
    release including:

    * Fix to re-enable the sleep button after wakeup (Anchal
    Agarwal).

    * Fixes for mistakes in comments and typos (Bob Moore).

    * ASL-ASL+ converter updates (Erik Kaneda).

    * Type casting cleanups (Sven Barth).

    - Clean up the intialization of the EC driver and eliminate some dead
    code from it (Rafael Wysocki).

    - Clean up the quirk tables in the AC and battery drivers (Hans de
    Goede).

    - Fix the global lock handling on x86 to ignore unspecified bit
    positions in the global lock field (Jan Engelhardt).

    - Add a new "tiny" driver for ACPI button devices exposed by VMs to
    guest kernels to send signals directly to init (Josh Triplett).

    - Add a kernel parameter to disable ACPI BGRT on x86 (Alex Hung).

    - Make the ACPI PCI host bridge and fan drivers use scnprintf() to
    avoid potential buffer overflows (Takashi Iwai).

    - Clean up assorted pieces of code:

    * Reorder "asmlinkage" to make g++ happy (Alexey Dobriyan).

    * Drop unneeded variable initialization (Colin Ian King).

    * Add missing __acquires/__releases annotations (Jules Irenge).

    * Replace list_for_each_safe() with list_for_each_entry_safe()
    (chenqiwu)"

    * tag 'acpi-5.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (31 commits)
    ACPICA: Update version to 20200214
    ACPI: PCI: Use scnprintf() for avoiding potential buffer overflow
    ACPI: fan: Use scnprintf() for avoiding potential buffer overflow
    ACPI: EC: Eliminate EC_FLAGS_QUERY_HANDSHAKE
    ACPI: EC: Do not clear boot_ec_is_ecdt in acpi_ec_add()
    ACPI: EC: Simplify acpi_ec_ecdt_start() and acpi_ec_init()
    ACPI: EC: Consolidate event handler installation code
    acpi/x86: ignore unspecified bit positions in the ACPI global lock field
    acpi/x86: add a kernel parameter to disable ACPI BGRT
    x86/acpi: make "asmlinkage" part first thing in the function definition
    ACPI: list_for_each_safe() -> list_for_each_entry_safe()
    ACPI: video: remove redundant assignments to variable result
    ACPI: OSL: Add missing __acquires/__releases annotations
    ACPI / battery: Cleanup Lenovo Ideapad Miix 320 DMI table entry
    ACPI / AC: Cleanup DMI quirk table
    ACPI: EC: Use fast path in acpi_ec_add() for DSDT boot EC
    ACPI: EC: Simplify acpi_ec_add()
    ACPI: EC: Drop AE_NOT_FOUND special case from ec_install_handlers()
    ACPI: EC: Avoid passing redundant argument to functions
    ACPI: EC: Avoid printing confusing messages in acpi_ec_setup()
    ...

    Linus Torvalds
     
  • Pull power management updates from Rafael Wysocki:
    "These clean up and rework the PM QoS API, address a suspend-to-idle
    wakeup regression on some ACPI-based platforms, clean up and extend a
    few cpuidle drivers, update multiple cpufreq drivers and cpufreq
    documentation, and fix a number of issues in devfreq and several other
    things all over.

    Specifics:

    - Clean up and rework the PM QoS API to simplify the code and reduce
    the size of it (Rafael Wysocki).

    - Fix a suspend-to-idle wakeup regression on Dell XPS13 9370 and
    similar platforms where the USB plug/unplug events are handled by
    the EC (Rafael Wysocki).

    - CLean up the intel_idle and PSCI cpuidle drivers (Rafael Wysocki,
    Ulf Hansson).

    - Extend the haltpoll cpuidle driver so that it can be forced to run
    on some systems where it refused to load (Maciej Szmigiero).

    - Convert several cpufreq documents to the .rst format and move the
    legacy driver documentation into one common file (Mauro Carvalho
    Chehab, Rafael Wysocki).

    - Update several cpufreq drivers:

    * Extend and fix the imx-cpufreq-dt driver (Anson Huang).

    * Improve the -EPROBE_DEFER handling and fix unwanted CPU
    overclocking on i.MX6ULL in imx6q-cpufreq (Anson Huang,
    Christoph Niedermaier).

    * Add support for Krait based SoCs to the qcom driver (Ansuel
    Smith).

    * Add support for OPP_PLUS to ti-cpufreq (Lokesh Vutla).

    * Add platform specific intermediate callbacks support to
    cpufreq-dt and update the imx6q driver (Peng Fan).

    * Simplify and consolidate some pieces of the intel_pstate
    driver and update its documentation (Rafael Wysocki, Alex
    Hung).

    - Fix several devfreq issues:

    * Remove unneeded extern keyword from a devfreq header file and
    use the DEVFREQ_GOV_UPDATE_INTERNAL event name instead of
    DEVFREQ_GOV_INTERNAL (Chanwoo Choi).

    * Fix the handling of dev_pm_qos_remove_request() result
    (Leonard Crestez).

    * Use constant name for userspace governor (Pierre Kuo).

    * Get rid of doc warnings and fix a typo (Christophe JAILLET).

    - Use built-in RCU list checking in some places in the PM core to
    avoid false-positive RCU usage warnings (Madhuparna Bhowmik).

    - Add explicit READ_ONCE()/WRITE_ONCE() annotations to low-level PM
    QoS routines (Qian Cai).

    - Fix removal of wakeup sources to avoid NULL pointer dereferences in
    a corner case (Neeraj Upadhyay).

    - Clean up the handling of hibernate compat ioctls and fix the
    related documentation (Eric Biggers).

    - Update the idle_inject power capping driver to use variable-length
    arrays instead of zero-length arrays (Gustavo Silva).

    - Fix list format in a PM QoS document (Randy Dunlap).

    - Make the cpufreq stats module use scnprintf() to avoid potential
    buffer overflows (Takashi Iwai).

    - Add pm_runtime_get_if_active() to PM-runtime API (Sakari Ailus).

    - Allow no domain-idle-states DT property in generic PM domains (Ulf
    Hansson).

    - Fix a broken y-axis scale in the intel_pstate_tracer utility (Doug
    Smythies)"

    * tag 'pm-5.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (78 commits)
    cpufreq: intel_pstate: Simplify intel_pstate_cpu_init()
    tools/power/x86/intel_pstate_tracer: fix a broken y-axis scale
    ACPI: PM: s2idle: Refine active GPEs check
    ACPICA: Allow acpi_any_gpe_status_set() to skip one GPE
    PM: sleep: wakeup: Skip wakeup_source_sysfs_remove() if device is not there
    PM / devfreq: Get rid of some doc warnings
    PM / devfreq: Fix handling dev_pm_qos_remove_request result
    PM / devfreq: Fix a typo in a comment
    PM / devfreq: Change to DEVFREQ_GOV_UPDATE_INTERVAL event name
    PM / devfreq: Remove unneeded extern keyword
    PM / devfreq: Use constant name of userspace governor
    ACPI: PM: s2idle: Fix comment in acpi_s2idle_prepare_late()
    cpufreq: qcom: Add support for krait based socs
    cpufreq: imx6q-cpufreq: Improve the logic of -EPROBE_DEFER handling
    cpufreq: Use scnprintf() for avoiding potential buffer overflow
    cpuidle: psci: Split psci_dt_cpu_init_idle()
    PM / Domains: Allow no domain-idle-states DT property in genpd when parsing
    PM / hibernate: Remove unnecessary compat ioctl overrides
    PM: hibernate: fix docs for ioctls that return loff_t via pointer
    Documentation: intel_pstate: update links for references
    ...

    Linus Torvalds
     
  • Pull driver core updates from Greg KH:
    "Here is the "big" set of driver core changes for 5.7-rc1.

    Nothing huge in here, just lots of little firmware core changes and
    use of new apis, a libfs fix, a debugfs api change, and some driver
    core deferred probe rework.

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

    * tag 'driver-core-5.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (44 commits)
    Revert "driver core: Set fw_devlink to "permissive" behavior by default"
    driver core: Set fw_devlink to "permissive" behavior by default
    driver core: Replace open-coded list_last_entry()
    driver core: Read atomic counter once in driver_probe_done()
    libfs: fix infoleak in simple_attr_read()
    driver core: Add device links from fwnode only for the primary device
    platform/x86: touchscreen_dmi: Add info for the Chuwi Vi8 Plus tablet
    platform/x86: touchscreen_dmi: Add EFI embedded firmware info support
    Input: icn8505 - Switch to firmware_request_platform for retreiving the fw
    Input: silead - Switch to firmware_request_platform for retreiving the fw
    selftests: firmware: Add firmware_request_platform tests
    test_firmware: add support for firmware_request_platform
    firmware: Add new platform fallback mechanism and firmware_request_platform()
    Revert "drivers: base: power: wakeup.c: Use built-in RCU list checking"
    drivers: base: power: wakeup.c: Use built-in RCU list checking
    component: allow missing unbind callback
    debugfs: remove return value of debugfs_create_file_size()
    debugfs: Check module state before warning in {full/open}_proxy_open()
    firmware: fix a double abort case with fw_load_sysfs_fallback
    arch_topology: Fix putting invalid cpu clk
    ...

    Linus Torvalds
     
  • Pull documentation updates from Jonathan Corbet:
    "This has been a busy cycle for documentation work.

    Highlights include:

    - Lots of RST conversion work by Mauro, Daniel ALmeida, and others.
    Maybe someday we'll get to the end of this stuff...maybe...

    - Some organizational work to bring some order to the core-api
    manual.

    - Various new docs and additions to the existing documentation.

    - Typo fixes, warning fixes, ..."

    * tag 'docs-5.7' of git://git.lwn.net/linux: (123 commits)
    Documentation: x86: exception-tables: document CONFIG_BUILDTIME_TABLE_SORT
    MAINTAINERS: adjust to filesystem doc ReST conversion
    docs: deprecated.rst: Add BUG()-family
    doc: zh_CN: add translation for virtiofs
    doc: zh_CN: index files in filesystems subdirectory
    docs: locking: Drop :c:func: throughout
    docs: locking: Add 'need' to hardirq section
    docs: conf.py: avoid thousands of duplicate label warning on Sphinx
    docs: prevent warnings due to autosectionlabel
    docs: fix reference to core-api/namespaces.rst
    docs: fix pointers to io-mapping.rst and io_ordering.rst files
    Documentation: Better document the softlockup_panic sysctl
    docs: hw-vuln: tsx_async_abort.rst: get rid of an unused ref
    docs: perf: imx-ddr.rst: get rid of a warning
    docs: filesystems: fuse.rst: supress a Sphinx warning
    docs: translations: it: avoid duplicate refs at programming-language.rst
    docs: driver.rst: supress two ReSt warnings
    docs: trace: events.rst: convert some new stuff to ReST format
    Documentation: Add io_ordering.rst to driver-api manual
    Documentation: Add io-mapping.rst to driver-api manual
    ...

    Linus Torvalds
     

30 Mar, 2020

3 commits

  • * pm-devfreq:
    PM / devfreq: Get rid of some doc warnings
    PM / devfreq: Fix handling dev_pm_qos_remove_request result
    PM / devfreq: Fix a typo in a comment
    PM / devfreq: Change to DEVFREQ_GOV_UPDATE_INTERVAL event name
    PM / devfreq: Remove unneeded extern keyword
    PM / devfreq: Use constant name of userspace governor

    * powercap:
    powercap: idle_inject: Replace zero-length array with flexible-array member

    * pm-docs:
    docs: cpu-freq: convert cpufreq-stats.txt to ReST
    docs: cpu-freq: convert cpu-drivers.txt to ReST
    docs: cpu-freq: convert core.txt to ReST
    docs: cpu-freq: convert index.txt to ReST
    docs: cpufreq: fix a broken reference
    Documentation: cpufreq: Move legacy driver documentation

    Rafael J. Wysocki
     
  • * pm-cpufreq:
    cpufreq: intel_pstate: Simplify intel_pstate_cpu_init()
    cpufreq: qcom: Add support for krait based socs
    cpufreq: imx6q-cpufreq: Improve the logic of -EPROBE_DEFER handling
    cpufreq: Use scnprintf() for avoiding potential buffer overflow
    Documentation: intel_pstate: update links for references
    cpufreq: intel_pstate: Consolidate policy verification
    cpufreq: dt: Allow platform specific intermediate callbacks
    cpufreq: imx-cpufreq-dt: Correct i.MX8MP's market segment fuse location
    cpufreq: imx6q: read OCOTP through nvmem for imx6q
    cpufreq: imx6q: fix error handling
    cpufreq: imx-cpufreq-dt: Add "cpu-supply" property check
    cpufreq: ti-cpufreq: Add support for OPP_PLUS
    cpufreq: imx6q: Fixes unwanted cpu overclocking on i.MX6ULL

    Rafael J. Wysocki
     
  • * pm-qos: (30 commits)
    PM: QoS: annotate data races in pm_qos_*_value()
    Documentation: power: fix pm_qos_interface.rst format warning
    PM: QoS: Make CPU latency QoS depend on CONFIG_CPU_IDLE
    Documentation: PM: QoS: Update to reflect previous code changes
    PM: QoS: Update file information comments
    PM: QoS: Drop PM_QOS_CPU_DMA_LATENCY and rename related functions
    sound: Call cpu_latency_qos_*() instead of pm_qos_*()
    drivers: usb: Call cpu_latency_qos_*() instead of pm_qos_*()
    drivers: tty: Call cpu_latency_qos_*() instead of pm_qos_*()
    drivers: spi: Call cpu_latency_qos_*() instead of pm_qos_*()
    drivers: net: Call cpu_latency_qos_*() instead of pm_qos_*()
    drivers: mmc: Call cpu_latency_qos_*() instead of pm_qos_*()
    drivers: media: Call cpu_latency_qos_*() instead of pm_qos_*()
    drivers: hsi: Call cpu_latency_qos_*() instead of pm_qos_*()
    drm: i915: Call cpu_latency_qos_*() instead of pm_qos_*()
    x86: platform: iosf_mbi: Call cpu_latency_qos_*() instead of pm_qos_*()
    cpuidle: Call cpu_latency_qos_limit() instead of pm_qos_request()
    PM: QoS: Add CPU latency QoS API wrappers
    PM: QoS: Adjust pm_qos_request() signature and reorder pm_qos.h
    PM: QoS: Simplify definitions of CPU latency QoS trace events
    ...

    Rafael J. Wysocki
     

25 Mar, 2020

1 commit

  • Currently io_ticks is approximated by adding one at each start and end of
    requests if jiffies counter has changed. This works perfectly for requests
    shorter than a jiffy or if one of requests starts/ends at each jiffy.

    If disk executes just one request at a time and they are longer than two
    jiffies then only first and last jiffies will be accounted.

    Fix is simple: at the end of request add up into io_ticks jiffies passed
    since last update rather than just one jiffy.

    Example: common HDD executes random read 4k requests around 12ms.

    fio --name=test --filename=/dev/sdb --rw=randread --direct=1 --runtime=30 &
    iostat -x 10 sdb

    Note changes of iostat's "%util" 8,43% -> 99,99% before/after patch:

    Before:

    Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
    sdb 0,00 0,00 82,60 0,00 330,40 0,00 8,00 0,96 12,09 12,09 0,00 1,02 8,43

    After:

    Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
    sdb 0,00 0,00 82,50 0,00 330,00 0,00 8,00 1,00 12,10 12,10 0,00 12,12 99,99

    Now io_ticks does not loose time between start and end of requests, but
    for queue-depth > 1 some I/O time between adjacent starts might be lost.

    For load estimation "%util" is not as useful as average queue length,
    but it clearly shows how often disk queue is completely empty.

    Fixes: 5b18b5a73760 ("block: delete part_round_stats and switch to less precise counting")
    Signed-off-by: Konstantin Khlebnikov
    Reviewed-by: Ming Lei
    Signed-off-by: Jens Axboe

    Konstantin Khlebnikov
     

24 Mar, 2020

2 commits

  • …k/linux-rcu into core/rcu

    Pull RCU changes from Paul E. McKenney:

    - Make kfree_rcu() use kfree_bulk() for added performance
    - RCU updates
    - Callback-overload handling updates
    - Tasks-RCU KCSAN and sparse updates
    - Locking torture test and RCU torture test updates
    - Documentation updates
    - Miscellaneous fixes

    Signed-off-by: Ingo Molnar <mingo@kernel.org>

    Ingo Molnar
     
  • Set paravirt_steal_rq_enabled if steal clock present.
    paravirt_steal_rq_enabled is used in sched/core.c to adjust task
    progress by offsetting stolen time. Use 'no-steal-acc' off switch (share
    same name with KVM) to disable steal time accounting.

    Signed-off-by: Alexey Makhalov
    Signed-off-by: Borislav Petkov
    Reviewed-by: Thomas Hellstrom
    Reviewed-by: Thomas Gleixner
    Link: https://lkml.kernel.org/r/20200323195707.31242-5-amakhalov@vmware.com

    Alexey Makhalov
     

22 Mar, 2020

1 commit

  • …'locktorture.2020.02.20a', 'ovld.2020.02.20a', 'rcu-tasks.2020.02.20a', 'srcu.2020.02.20a' and 'torture.2020.02.20a' into HEAD

    doc.2020.02.27a: Documentation updates.
    fixes.2020.03.21a: Miscellaneous fixes.
    kfree_rcu.2020.02.20a: Updates to kfree_rcu().
    locktorture.2020.02.20a: Lock torture-test updates.
    ovld.2020.02.20a: Updates to callback-overload handling.
    rcu-tasks.2020.02.20a: RCU-tasks updates.
    srcu.2020.02.20a: SRCU updates.
    torture.2020.02.20a: Torture-test updates.

    Paul E. McKenney
     

14 Mar, 2020

3 commits

  • URLs for presentation and Intel Software Developer’s Manual are updated
    as they were using "http" which are gradually replaced by "https".

    Signed-off-by: Alex Hung
    Signed-off-by: Rafael J. Wysocki

    Alex Hung
     
  • BGRT is for displaying seamless OEM logo from booting to login screen;
    however, this mechanism does not always work well on all configurations
    and the OEM logo can be displayed multiple times. This looks worse than
    without BGRT enabled.

    This patch adds a kernel parameter to disable BGRT in boot time. This is
    easier than re-compiling a kernel with CONFIG_ACPI_BGRT disabled.

    Signed-off-by: Alex Hung
    Signed-off-by: Rafael J. Wysocki

    Alex Hung
     
  • Daniel Borkmann says:

    ====================
    pull-request: bpf-next 2020-03-13

    The following pull-request contains BPF updates for your *net-next* tree.

    We've added 86 non-merge commits during the last 12 day(s) which contain
    a total of 107 files changed, 5771 insertions(+), 1700 deletions(-).

    The main changes are:

    1) Add modify_return attach type which allows to attach to a function via
    BPF trampoline and is run after the fentry and before the fexit programs
    and can pass a return code to the original caller, from KP Singh.

    2) Generalize BPF's kallsyms handling and add BPF trampoline and dispatcher
    objects to be visible in /proc/kallsyms so they can be annotated in
    stack traces, from Jiri Olsa.

    3) Extend BPF sockmap to allow for UDP next to existing TCP support in order
    in order to enable this for BPF based socket dispatch, from Lorenz Bauer.

    4) Introduce a new bpftool 'prog profile' command which attaches to existing
    BPF programs via fentry and fexit hooks and reads out hardware counters
    during that period, from Song Liu. Example usage:

    bpftool prog profile id 337 duration 3 cycles instructions llc_misses

    4228 run_cnt
    3403698 cycles (84.08%)
    3525294 instructions # 1.04 insn per cycle (84.05%)
    13 llc_misses # 3.69 LLC misses per million isns (83.50%)

    5) Batch of improvements to libbpf, bpftool and BPF selftests. Also addition
    of a new bpf_link abstraction to keep in particular BPF tracing programs
    attached even when the applicaion owning them exits, from Andrii Nakryiko.

    6) New bpf_get_current_pid_tgid() helper for tracing to perform PID filtering
    and which returns the PID as seen by the init namespace, from Carlos Neira.

    7) Refactor of RISC-V JIT code to move out common pieces and addition of a
    new RV32G BPF JIT compiler, from Luke Nelson.

    8) Add gso_size context member to __sk_buff in order to be able to know whether
    a given skb is GSO or not, from Willem de Bruijn.

    9) Add a new bpf_xdp_output() helper which reuses XDP's existing perf RB output
    implementation but can be called from tracepoint programs, from Eelco Chaudron.
    ====================

    Signed-off-by: David S. Miller

    David S. Miller
     

11 Mar, 2020

4 commits

  • Commit 9c44bc03fff4 ("softlockup: allow panic on lockup") added the
    softlockup_panic sysctl, but didn't add information about it to the file
    Documentation/admin-guide/sysctl/kernel.rst (which in that time certainly
    wasn't rst and had other name!).

    This patch just adds the respective documentation and references it from
    the corresponding entry in Documentation/admin-guide/kernel-parameters.txt.

    This patch was strongly based on Scott Wood's commit d22881dc13b6
    ("Documentation: Better document the hardlockup_panic sysctl").

    Reviewed-by: Kees Cook
    Signed-off-by: Guilherme G. Piccoli
    Link: https://lore.kernel.org/r/20200310183649.23163-1-gpiccoli@canonical.com
    Signed-off-by: Jonathan Corbet

    Guilherme G. Piccoli
     
  • The virt_mechanism reference there points to a section
    called elsewhere (Virtualization mitigation). Also, it is
    not used anywere.

    Besides that, it conflicts with a label with the same name
    inside:

    Documentation/admin-guide/hw-vuln/mds.rst

    Perhaps added due to some cut-and-paste?

    Anyway, as this is not used, let's just get rid of it.

    Signed-off-by: Mauro Carvalho Chehab
    Link: https://lore.kernel.org/r/681c8e2916bf4943ac2277f181668bfbc5fdbc01.1583250595.git.mchehab+huawei@kernel.org
    Signed-off-by: Jonathan Corbet

    Mauro Carvalho Chehab
     
  • Documentation/admin-guide/perf/imx-ddr.rst:47: WARNING: Unexpected indentation.

    Signed-off-by: Mauro Carvalho Chehab
    Link: https://lore.kernel.org/r/b27b54bd4f847032fd33313d6497ff320c0f3d78.1583250595.git.mchehab+huawei@kernel.org
    Signed-off-by: Jonathan Corbet

    Mauro Carvalho Chehab
     
  • Trim the title a bit, since it's relatively long. Add `binfmt_misc` to
    make it easier to search for the feature by its common name.

    Signed-off-by: Jonathan Neuschäfer
    Link: https://lore.kernel.org/r/20200308210935.7273-1-j.neuschaefer@gmx.net
    Signed-off-by: Jonathan Corbet

    Jonathan Neuschäfer
     

09 Mar, 2020

1 commit


06 Mar, 2020

2 commits

  • Thermal pressure follows pelt signals which means the decay period for
    thermal pressure is the default pelt decay period. Depending on SoC
    characteristics and thermal activity, it might be beneficial to decay
    thermal pressure slower, but still in-tune with the pelt signals. One way
    to achieve this is to provide a command line parameter to set a decay
    shift parameter to an integer between 0 and 10.

    Signed-off-by: Thara Gopinath
    Signed-off-by: Peter Zijlstra (Intel)
    Signed-off-by: Ingo Molnar
    Link: https://lkml.kernel.org/r/20200222005213.3873-10-thara.gopinath@linaro.org

    Thara Gopinath
     
  • * acpi-doc:
    Documentation/admin-guide/acpi: fix fan_performance_states.rst warnings

    Rafael J. Wysocki
     

05 Mar, 2020

3 commits

  • Update filter.txt and admin-guide to mention the BPF JIT for RV32G.

    Co-developed-by: Xi Wang
    Signed-off-by: Xi Wang
    Signed-off-by: Luke Nelson
    Signed-off-by: Daniel Borkmann
    Reviewed-by: Björn Töpel
    Acked-by: Björn Töpel
    Link: https://lore.kernel.org/bpf/20200305050207.4159-4-luke.r.nels@gmail.com

    Luke Nelson
     
  • With the addition of fw_devlink kernel commandline option, of_devlink is
    redundant and not useful anymore. So, delete it.

    Acked-by: Rob Herring
    Signed-off-by: Saravana Kannan
    Link: https://lore.kernel.org/r/20200222014038.180923-6-saravanak@google.com
    Signed-off-by: Greg Kroah-Hartman

    Saravana Kannan
     
  • fwnode_operations.add_links allows creating device links from
    information provided by firmware.

    fwnode_operations.add_links is currently implemented only by
    OF/devicetree code and a specific case of efi. However, there's nothing
    preventing ACPI or other firmware types from implementing it.

    The OF implementation is currently controlled by a kernel commandline
    parameter called of_devlink.

    Since this feature is generic isn't limited to OF, add a generic
    fw_devlink kernel commandline parameter to control this feature across
    firmware types.

    Signed-off-by: Saravana Kannan
    Link: https://lore.kernel.org/r/20200222014038.180923-3-saravanak@google.com
    Signed-off-by: Greg Kroah-Hartman

    Saravana Kannan
     

03 Mar, 2020

8 commits


02 Mar, 2020

1 commit

  • There are three legacy driver documents in Documentation/cpu-freq/
    that were added years ago and converting them each to the .rst
    format is rather pointless, even though there is some value in
    preserving them. However, if they are preserved, they need to go
    into the admin-guide part of cpufreq documentation where they belong
    (at least to a certain extent).

    To preserve them with minimum amount of changes and put them into the
    right place, and make it possible to process them into HTML (and other
    formats) along with the rest of the documentation, move them each
    as a "literal text" block into a separate section of a single .rst
    "wrapper" file under Documentation/admin-guide/pm/.

    While at it, repair the PCC specification URL in one of them.

    Signed-off-by: Rafael J. Wysocki

    Rafael J. Wysocki
     

29 Feb, 2020

1 commit

  • Pull ACPI fixes from Rafael Wysocki:
    "Fix a couple of configuration issues in the ACPI watchdog (WDAT)
    driver (Mika Westerberg) and make it possible to disable that driver
    at boot time in case it still does not work as expected (Jean
    Delvare)"

    * tag 'acpi-5.6-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
    ACPI: watchdog: Set default timeout in probe
    ACPI: watchdog: Fix gas->access_width usage
    ACPICA: Introduce ACPI_ACCESS_BYTE_WIDTH() macro
    ACPI: watchdog: Allow disabling WDAT at boot

    Linus Torvalds