OpenCloudOS-Kernel/drivers/net/ethernet/sfc
Linus Torvalds 1fe43114ea More power management updates for 4.17-rc1
- Rework the idle loop in order to prevent CPUs from spending too
    much time in shallow idle states by making it stop the scheduler
    tick before putting the CPU into an idle state only if the idle
    duration predicted by the idle governor is long enough.  That
    required the code to be reordered to invoke the idle governor
    before stopping the tick, among other things (Rafael Wysocki,
    Frederic Weisbecker, Arnd Bergmann).
 
  - Add the missing description of the residency sysfs attribute to
    the cpuidle documentation (Prashanth Prakash).
 
  - Finalize the cpufreq cleanup moving frequency table validation
    from drivers to the core (Viresh Kumar).
 
  - Fix a clock leak regression in the armada-37xx cpufreq driver
    (Gregory Clement).
 
  - Fix the initialization of the CPU performance data structures
    for shared policies in the CPPC cpufreq driver (Shunyong Yang).
 
  - Clean up the ti-cpufreq, intel_pstate and CPPC cpufreq drivers
    a bit (Viresh Kumar, Rafael Wysocki).
 
  - Mark the expected switch fall-throughs in the PM QoS core (Gustavo
    Silva).
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABCAAGBQJazfv7AAoJEILEb/54YlRx/kYP+gPOX5O5cFF22Y2xvDHPMWjm
 D/3Nc2aRo+5DuHHECSIJ3ZVQzVoamN5zQ1KbsBRV0bJgwim4fw4M199Jr/0I2nES
 1pkByuxLrAtwb83uX3uBIQnwgKOAwRftOTeVaFaMoXgIbyUqK7ZFkGq0xQTnKqor
 6+J+78O7wMaIZ0YXQP98BC6g96vs/f+ICrh7qqY85r4NtO/thTA1IKevBmlFeIWR
 yVhEYgwSFBaWehKK8KgbshmBBEk3qzDOYfwZF/JprPhiN/6madgHgYjHC8Seok5c
 QUUTRlyO1ULTQe4JulyJUKobx7HE9u/FXC0RjbBiKPnYR4tb9Hd8OpajPRZo96AT
 8IQCdzL2Iw/ZyQsmQZsWeO1HwPTwVlF/TO2gf6VdQtH221izuHG025p8/RcZe6zb
 fTTFhh6/tmBvmOlbKMwxaLbGbwcj/5W5GvQXlXAtaElLobwwNEcEyVfF4jo4Zx/U
 DQc7agaAps67lcgFAqNDy0PoU6bxV7yoiAIlTJHO9uyPkDNyIfb0ZPlmdIi3xYZd
 tUD7C+VBezrNCkw7JWL1xXLFfJ5X7K6x5bi9I7TBj1l928Hak0dwzs7KlcNBtF1Y
 SwnJsNa3kxunGsPajya8dy5gdO0aFeB9Bse0G429+ugk2IJO/Q9M9nQUArJiC9Xl
 Gw1bw5Ynv6lx+r5EqxHa
 =Pnk4
 -----END PGP SIGNATURE-----

Merge tag 'pm-4.17-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

Pull more power management updates from Rafael Wysocki:
 "These include one big-ticket item which is the rework of the idle loop
  in order to prevent CPUs from spending too much time in shallow idle
  states. It reduces idle power on some systems by 10% or more and may
  improve performance of workloads in which the idle loop overhead
  matters. This has been in the works for several weeks and it has been
  tested and reviewed quite thoroughly.

  Also included are changes that finalize the cpufreq cleanup moving
  frequency table validation from drivers to the core, a few fixes and
  cleanups of cpufreq drivers, a cpuidle documentation update and a PM
  QoS core update to mark the expected switch fall-throughs in it.

  Specifics:

   - Rework the idle loop in order to prevent CPUs from spending too
     much time in shallow idle states by making it stop the scheduler
     tick before putting the CPU into an idle state only if the idle
     duration predicted by the idle governor is long enough.

     That required the code to be reordered to invoke the idle governor
     before stopping the tick, among other things (Rafael Wysocki,
     Frederic Weisbecker, Arnd Bergmann).

   - Add the missing description of the residency sysfs attribute to the
     cpuidle documentation (Prashanth Prakash).

   - Finalize the cpufreq cleanup moving frequency table validation from
     drivers to the core (Viresh Kumar).

   - Fix a clock leak regression in the armada-37xx cpufreq driver
     (Gregory Clement).

   - Fix the initialization of the CPU performance data structures for
     shared policies in the CPPC cpufreq driver (Shunyong Yang).

   - Clean up the ti-cpufreq, intel_pstate and CPPC cpufreq drivers a
     bit (Viresh Kumar, Rafael Wysocki).

   - Mark the expected switch fall-throughs in the PM QoS core (Gustavo
     Silva)"

* tag 'pm-4.17-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (23 commits)
  tick-sched: avoid a maybe-uninitialized warning
  cpufreq: Drop cpufreq_table_validate_and_show()
  cpufreq: SCMI: Don't validate the frequency table twice
  cpufreq: CPPC: Initialize shared perf capabilities of CPUs
  cpufreq: armada-37xx: Fix clock leak
  cpufreq: CPPC: Don't set transition_latency
  cpufreq: ti-cpufreq: Use builtin_platform_driver()
  cpufreq: intel_pstate: Do not include debugfs.h
  PM / QoS: mark expected switch fall-throughs
  cpuidle: Add definition of residency to sysfs documentation
  time: hrtimer: Use timerqueue_iterate_next() to get to the next timer
  nohz: Avoid duplication of code related to got_idle_tick
  nohz: Gather tick_sched booleans under a common flag field
  cpuidle: menu: Avoid selecting shallow states with stopped tick
  cpuidle: menu: Refine idle state selection for running tick
  sched: idle: Select idle state before stopping the tick
  time: hrtimer: Introduce hrtimer_next_event_without()
  time: tick-sched: Split tick_nohz_stop_sched_tick()
  cpuidle: Return nohz hint from cpuidle_select()
  jiffies: Introduce USER_TICK_USEC and redefine TICK_USEC
  ...
2018-04-11 17:03:20 -07:00
..
falcon MTD changes: 2018-04-06 12:15:41 -07:00
Kconfig ethernet: sfc: Add Kconfig entry for vendor Solarflare 2016-12-20 14:19:38 -05:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
bitfield.h sfc: process RX event inner checksum flags 2017-02-09 16:47:53 -05:00
ef10.c sfc: remove ctpio_dmabuf_start from stats 2018-04-04 12:07:22 -04:00
ef10_regs.h sfc: update EF10 register definitions 2017-12-18 13:07:50 -05:00
ef10_sriov.c sfc: remove duplicate up_write on VF filter_sem 2017-06-20 15:40:00 -04:00
ef10_sriov.h sfc: support ndo_get_phys_port_id even when !CONFIG_SFC_SRIOV 2017-01-10 14:16:17 -05:00
efx.c sfc: protect list of RSS contexts under a mutex 2018-03-27 13:33:20 -04:00
efx.h sfc: protect list of RSS contexts under a mutex 2018-03-27 13:33:20 -04:00
enum.h sfc: remove RESET_TYPE_RX_RECOVERY 2016-12-01 15:39:38 -05:00
ethtool.c sfc: fix flow type handling for RSS filters 2018-03-27 13:33:20 -04:00
farch.c sfc: use a semaphore to lock farch filters too 2018-03-27 13:33:19 -04:00
farch_regs.h
filter.h sfc: support RSS spreading of ethtool ntuple filters 2018-03-08 21:54:52 -05:00
io.h sfc: support VI strides other than 8k 2017-12-18 13:07:49 -05:00
mcdi.c jiffies: Introduce USER_TICK_USEC and redefine TICK_USEC 2018-04-06 09:28:50 +02:00
mcdi.h sfc: support VI strides other than 8k 2017-12-18 13:07:49 -05:00
mcdi_mon.c ethernet: Use octal not symbolic permissions 2018-03-26 12:07:49 -04:00
mcdi_pcol.h sfc: update MCDI protocol headers 2018-03-14 13:12:14 -04:00
mcdi_port.c sfc: support FEC configuration through ethtool 2018-03-14 13:12:15 -04:00
mtd.c mtd: Stop updating erase_info->state and calling mtd_erase_callback() 2018-03-21 09:50:56 +01:00
net_driver.h sfc: protect list of RSS contexts under a mutex 2018-03-27 13:33:20 -04:00
nic.c sfc: work around TRIGGER_INTERRUPT command not working on SFC9140 2016-08-26 21:43:52 -07:00
nic.h sfc: remove ctpio_dmabuf_start from stats 2018-04-04 12:07:22 -04:00
ptp.c sfc: mark some unexported symbols as static 2018-01-28 21:59:18 -05:00
rx.c sfc: replace asynchronous filter operations 2018-03-27 13:33:19 -04:00
selftest.c networking: make skb_put & friends return void pointers 2017-06-16 11:48:39 -04:00
selftest.h sfc: work around TRIGGER_INTERRUPT command not working on SFC9140 2016-08-26 21:43:52 -07:00
siena.c sfc: replace asynchronous filter operations 2018-03-27 13:33:19 -04:00
siena_sriov.c sfc: save old MAC address in case sriov_mac_address_changed fails 2015-05-21 18:43:53 -04:00
siena_sriov.h sfc: save old MAC address in case sriov_mac_address_changed fails 2015-05-21 18:43:53 -04:00
sriov.c sfc: support ndo_get_phys_port_id even when !CONFIG_SFC_SRIOV 2017-01-10 14:16:17 -05:00
sriov.h sfc: support ndo_get_phys_port_id even when !CONFIG_SFC_SRIOV 2017-01-10 14:16:17 -05:00
tx.c sfc: on 8000 series use TX queues for TX timestamps 2018-01-25 16:05:14 -05:00
tx.h sfc: Firmware-Assisted TSO version 2 2016-11-18 11:55:38 -05:00
tx_tso.c sfc: remove EFX_BUG_ON_PARANOID, use EFX_WARN_ON_[ONCE_]PARANOID instead 2016-12-03 16:11:00 -05:00
vfdi.h
workarounds.h sfc: tx ring can only have 2048 entries for all EF10 NICs 2017-04-25 11:19:21 -04:00