diff options
| author | Linux Build Service Account <lnxbuild@localhost> | 2016-06-02 12:12:31 -0600 |
|---|---|---|
| committer | Linux Build Service Account <lnxbuild@localhost> | 2016-06-02 12:12:32 -0600 |
| commit | 739d6d7a4ce26bbd5eeb3115d8ceb88dbb28f17b (patch) | |
| tree | c073841ef54531ab43c543b6902aa4d91b438e78 /kernel | |
| parent | 3ebf81bef3da6dd1f12f70773866e0063ac3f368 (diff) | |
| parent | 9f3090c43d8f662446766e81c4bb78a937fba447 (diff) | |
Promotion of kernel.lnx.4.4-160601.
CRs Change ID Subject
--------------------------------------------------------------------------------------------------------------
1019289 I19bd72aebd9f82596dc04fe4b3179c81ab3c162d ARM: dts: msm: add mnoc_ahb clock for DSI device on msmc
1022210 I81a9dd61d24b7da55d5341c48a1f71d2b4b1978d mm: swap_ratio: bail out if there aren't any other swap
1011965 I10bf7ed20e7d5d29c6e5fff0ed7a8474c96acea5 msm: camera: sensor: Disable IRQ in csid after few frame
982931 I692113c222f278d6c4d4c282b4df0e28b0933556 wil6210: fix race conditions in p2p listen and search
1002185 I38ebb9bbae2d6e1e1311fe438b3c8fc3f65e5692 msm: secure_buffer: Fix possible NULL pointer dereferenc
1021889 I977b04964ac28c18f4ad85094746aa864f03d0c3 icnss: Add IPC logging
1015446 Ice373ce1656f1ab045eefd57dcd700a4c20deedf ARM: dts: msm: Enable the MMSS clock driver on MSMCOBALT
1022125 I02b72e8c16416ea08b143609e9b16196fb3a2879 ARM: dts: msm: add IPA ram mapping for msmcobalt
982931 I619abba9ef6e6fda3ea5fecd5ee87652b8ef37a5 wil6210: pass is_go flag to firmware
1019272 I494af44d5107603b94fb06a282246c091ebd429f ARM: dts: msm: add TEMP_ALARM device for PMIC PMICOBALT
1023508 I3743cefdf2469f05535f73691da0939dcddf6d83 msm: mdss: update licence for external display header to
1022210 Iec767a548e524729c7ed79a92fe4718cdd08ce69 mm: vmscan: fix the page state calculation in too_many_i
1022200 I8b50a06bdae050b3a3c47b80e21d0d2edf18b7c5 mm: zcache: remove __GFP_NO_KSWAPD
1019289 I475b44619b68e731abc8b1a91a214c6cdf8cfc5e msm: mdss: dsi: enable additional clocks for register ac
1019272 Ifaf2980cfc38083f450fa383d9c91777d2297415 ARM: dts: msm: add TEMP_ALARM device for PMIC PMCOBALT
1021086 I7b68202fc6d7958fcf7ff933d7eed7e19c958ab0 coresight-dummy: add dummy source driver support
1022452 I85e7644aa05d8c5249e2d204a61d03b5fb2f9220 spcom: fix modify ion addr
982931 Ief04b007c0507f9240d8f0b02b98fe7712213a0e wil6210: P2P_DEVICE virtual interface support
988871 I8205c2979c857c2f3845ba2dc397d2f9dd1afa3b net: cnss: add dual cnss platform driver support for dua
1019289 I0ba4858015457c971a42233c5a5f3dec9ca25ea6 msm: mdss: dsi: update DSI clamp configuration for msmco
1021169 I11143ca9beae526c80c8b94a81c2369a7c489d11 arm64: defconfig: update config options for msmcortex_de
982931 I3cf69b18f195e5db01a1f5832013342c9f481286 wil6210: clean ioctl debug message
1021312 I1a9830a6f859d7d525247d27d0a143997998d997 msm: ADSPRPC: Validate the SMMU session count
1000343 I73e0402ee72cad8df307ece1134f9e7304125cf6 drivers: dma-removed: Don't free prohibited memmap entri
1019272 I5c9e0bcb5bb7646a720c32af0b15ca5fa2e36b8f defconfig: msmcortex: enable QPNP temperature alarm driv
1022719 Ifa4bcb5685798f48fd020f3d0c9853220b3f5fdc sched: eliminate sched_account_wait_time knob
1020388 I853aba1d2d03945ee49adde7f0ea483cd406ce2b Revert "usb: gadget: gsi: Decrement USB gadget pm usage
1019289 I7e289168c04221e9e272a8c0543d66af0e233450 ARM: dts: msm: add 4k dsc panel for msmcobalt
1012038 I4345d14dc22ddbdc34ff98b7b16719ba760951df ion: msm: add Secure Processor heap id
1004223 I46f2ec5170fb204e9e0535aca1482b5e39e21de3 ARM: dts: msm: Add support for MSM8996pro v1.1
1022447 I7a41df3eebf22de2cc6b14327978923bcdbb7142 spcom: fix lock ION buffer
1003911 I253f4ee2069e190c1115afc421dadd27a7fa87dc fs/buffer.c: Revoke LRU when trying to drop buffers
1018768 If27ecfbb7b080080074bfe142f493fbf8f53f673 thermal: tsens: Update critical temperature threshold va
980233 I1bc6fb87684ee8da6126dc331debf5880adceb4f msm: ipa: support GRO feature on msmcobalt
1020694 I559f5976b56bf8933df2c68fc4e29b2bd0ce1160 clk: qcom: Add MSM8996 Global Clock Control (GCC) driver
1012038 I05434cb559cc397c62d888e1c54c1f209765d92f ARM: dts: msm: add spss ion heap to msmcobalt
1022772 I320427f810fd35b11335685bae95b3c5fb9c8fee Revert "msm: mdss: hdmi: check clk state before power on
1020896 I45a119591efc36fa05ee7009d938e596b015e70c clk: msm: clock: Add the non_local_control setting for v
1021126 I6ad561fe4967042e45190aea2c9b7fcfe05bafdd PM / devfreq: memlat: Prevent deadlock with hotplug in s
1017619 I6461e06f64abe336cabc27a3992d734f1fb745c6 leds: led-class: Retain the latest user brightness reque
1022200 Ia3e08bc14ba61c0a45ed54ba5cd525717a572060 lowmemorykiller: add zcache awareness
1009740 Ie12d5ab272dbd79fe97225864c2360fdde7325a7 clk: msm: mdss: fix dp_link_2x_clk_mux clock ops for DP
977181 I5ad1ab321738772a99920e3fa287bda266cb05ed arm: dma-mapping: fix data types to hold size_t
982931 I139a5e846555e30666f96675400c6db6e1999e05 wil6210: fix no_fw_recovery mode with change_virtual_int
1022719 Ib26a21df9b903baac26c026862b0a41b4a8834f3 sched: eliminate sched_enable_power_aware knob and param
1018808 I2c92b689ae49af85489dbf9a6aef196f4f6abf4b defconfig: msmcortex: Enable performance driver
1014404 Iaaa373db29d8b53e93ae1d3bf455ee066ed90dfd msm: ipa: add support for SMMU fastpath
987560 I0e1b5ff0e9970a40ad9d0619dcb7f8cbae241656 net: cnss: remove redundant and dead code from platform
1018090 I3c6c0b470c7d15802c7cf4cb8ced85548dbb81c7 platform: qpnp-revid: add definitions for pmicobalt vers
1000492 I7bc7562400df0ae08b1aa232efe00b657339fcfb ion: destroy ion handles under client->lock
1020896 Ia633c4dcbab62fc6a4407c5896e36a7bbef48579 clk: msm: clock-local2: Enable sources before force turn
1019035 I5a088230786ef780cca0a3b767ad80e7b0c69f9e NFC: CE transaction failed during system suspend
1022719 Ib74123ebd69dfa3f86cf7335099f50c12a6e93c3 sched: eliminate sched_freq_account_wait_time knob
1022125 If770b9315807e51e46cd94dec6234ef186cf4fcb msm: ipa3: Move IPA RAM mapping to DTS file
1020271 I6bb5f9a01e3f41107d7b5bdf7c19557546573463 msm: ipa3: fix to read hw tables from debugfs
993725 I90a6a560900d6c1c3694cce460ae8f772dc3434e diag: Fix for possible memory corruption
1022200 Ida1f4db17075d1f6f825ef7ce2b3bae4eb799e3f mm: add WasActive page flag
1003890 I3ff1894f0c80580920b1971cda357915665b5054 mm/memblock: disable local irqs while late memblock chan
1018262 I8b65debdc52ded24227483c4db21aaec63e27927 leds: led-class: add support for max_brightness store
990173 Ied2e5a78487b6f6076cd19f32c959a69050e055c net: cnss: add bus bandwidth support for sdio wlan modul
1019086 I2d1ed8aa618c4ba8780f55fcc47add10edea3ba9 defconfig: msm8996: Enable LMH hardware and interface dr
1015446 Ia94606113b112a5e363e342a0ad1d977a48b3d72 clk: msm: clock: Support graphics clocks on MSMCOBALT v2
982931 I561e4ab26c8ac74d6fbcf19492b01751033b64d9 wil6210: add oob_mode module parameter
1019086 Ifb47f300c4e73f7816f96c061ac5c1829bcd5491 defconfig: msm: Enable thermal driver for msm8996
890916 I927c0f6a7db654880d951729996a27310f6628cf iio: adc: Add round robin ADC driver
1019289 I4f9ed290416f95957b0f17424c624530f7a6794d ARM: dts: msm: add needed resources to support DSI clamp
1022322 I20ea0e4ad0537f6e90efbc59fb8d56d691ee3bde staging: ion : Donnot wakeup kswapd in ion system alloc
1019272 If0a02f211243a6c8f9c771f20590c0251726425b ARM: dts: msm: add TEMP_ALARM device for PMIC PM8005
1015627 I581e099db5d2ee81be4345101aa54352b1d9564f wil6210: allow empty WMI commands in debugfs wmi_send
1021612 Ie02f67d00c8fe04bf90ded5d4a6ab85c86cf05ad msm: mdss: fix to enable danger for msmcobalt
1004575 I8ec4de7d9cfa5e9c86d97bd9cb81feddc97dc7b8 msm: camera: Add support for DPCM modes
1013927 Ic9efb8555ec4bdad2c099719de4ed56677b194ca msm: ipa: enable power save to ODU
1015446 I636001ea91e7be1e2adec2ea7cd3d9aadfcc39a2 clk: msm: clock: Support multimedia clocks on MSMCOBALT
1019272 Ic4ad048259eb3a356333e0529d52f39c39fc915f thermal: qpnp-temp-alarm: add support for GEN2 PMIC peri
1015446 Ib92b11c23785e737f91ad09bcbb3d0b849d3a2bf ARM: dts: msm: Add MSMCOBALT v2 specific gfx_stub regula
982931 I847ccd10da574bdc83c7eec8c8315c4e0d207d8b wil6210: p2p initial support
1020931 I3223c1f335e2f0e2b2401a5cd4b961fd5279ac8d arm64: defconfig: update config options for msm_defconfi
1009740 Iea46c5b0482bceb841309175ede42ec3be3e20fd clk: msm: mdss: fix DP register configurations
988871 Ie245ac4ad028b543916c27b015a7ba33e55958a9 defconfig: arm64: update cnss config flag
Change-Id: I2bcb12d66f1ff09aa4dbe7ea408cfe914c094aa4
CRs-Fixed: 1022322, 1019086, 1020896, 1017619, 980233, 1022452, 1022210, 1022125, 1020694, 1000343, 1014404, 1023508, 982931, 1021086, 1003890, 1022772, 990173, 1003911, 1021169, 1021126, 1020271, 1019035, 1020931, 1021612, 1012038, 1018262, 1015446, 1019272, 1018808, 1002185, 1022200, 1013927, 1000492, 1022447, 988871, 993725, 1015627, 1020388, 1004223, 977181, 1021312, 1021889, 1019289, 1011965, 890916, 1018768, 987560, 1004575, 1018090, 1009740, 1022719
Diffstat (limited to 'kernel')
| -rw-r--r-- | kernel/sched/core.c | 52 | ||||
| -rw-r--r-- | kernel/sched/fair.c | 21 | ||||
| -rw-r--r-- | kernel/sysctl.c | 23 |
3 files changed, 13 insertions, 83 deletions
diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 87e93b3f3b4e..0224624ab319 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -891,7 +891,7 @@ int sched_update_freq_max_load(const cpumask_t *cpumask) u32 hfreq; int hpct; - if (!per_cpu_info || !sysctl_sched_enable_power_aware) + if (!per_cpu_info) return 0; spin_lock_irqsave(&freq_max_load_lock, flags); @@ -1649,19 +1649,6 @@ static int __init set_sched_enable_hmp(char *str) early_param("sched_enable_hmp", set_sched_enable_hmp); -static int __init set_sched_enable_power_aware(char *str) -{ - int enable_power_aware = 0; - - get_option(&str, &enable_power_aware); - - sysctl_sched_enable_power_aware = !!enable_power_aware; - - return 0; -} - -early_param("sched_enable_power_aware", set_sched_enable_power_aware); - static inline int got_boost_kick(void) { int cpu = smp_processor_id(); @@ -1763,8 +1750,8 @@ struct cpu_cycle { #if defined(CONFIG_SCHED_HMP) /* - * sched_window_stats_policy, sched_account_wait_time, sched_ravg_hist_size, - * sched_migration_fixup, sched_freq_account_wait_time have a 'sysctl' copy + * sched_window_stats_policy, sched_ravg_hist_size, + * sched_migration_fixup have a 'sysctl' copy * associated with them. This is required for atomic update of those variables * when being modifed via sysctl interface. * @@ -1786,8 +1773,7 @@ static __read_mostly unsigned int sched_window_stats_policy = __read_mostly unsigned int sysctl_sched_window_stats_policy = WINDOW_STATS_MAX_RECENT_AVG; -static __read_mostly unsigned int sched_account_wait_time = 1; -__read_mostly unsigned int sysctl_sched_account_wait_time = 1; +#define SCHED_ACCOUNT_WAIT_TIME 1 __read_mostly unsigned int sysctl_sched_cpu_high_irqload = (10 * NSEC_PER_MSEC); @@ -1800,8 +1786,7 @@ __read_mostly unsigned int sysctl_sched_new_task_windows = 5; static __read_mostly unsigned int sched_migration_fixup = 1; __read_mostly unsigned int sysctl_sched_migration_fixup = 1; -static __read_mostly unsigned int sched_freq_account_wait_time; -__read_mostly unsigned int sysctl_sched_freq_account_wait_time; +#define SCHED_FREQ_ACCOUNT_WAIT_TIME 0 /* * For increase, send notification if @@ -2167,11 +2152,11 @@ static int account_busy_for_cpu_time(struct rq *rq, struct task_struct *p, if (rq->curr == p) return 1; - return p->on_rq ? sched_freq_account_wait_time : 0; + return p->on_rq ? SCHED_FREQ_ACCOUNT_WAIT_TIME : 0; } /* TASK_MIGRATE, PICK_NEXT_TASK left */ - return sched_freq_account_wait_time; + return SCHED_FREQ_ACCOUNT_WAIT_TIME; } static inline int @@ -2392,7 +2377,7 @@ void update_task_pred_demand(struct rq *rq, struct task_struct *p, int event) return; if (event != PUT_PREV_TASK && event != TASK_UPDATE && - (!sched_freq_account_wait_time || + (!SCHED_FREQ_ACCOUNT_WAIT_TIME || (event != TASK_MIGRATE && event != PICK_NEXT_TASK))) return; @@ -2402,7 +2387,7 @@ void update_task_pred_demand(struct rq *rq, struct task_struct *p, int event) * related groups */ if (event == TASK_UPDATE) { - if (!p->on_rq && !sched_freq_account_wait_time) + if (!p->on_rq && !SCHED_FREQ_ACCOUNT_WAIT_TIME) return; } @@ -2794,7 +2779,7 @@ static int account_busy_for_task_demand(struct task_struct *p, int event) * time. Likewise, if wait time is not treated as busy time, then * when a task begins to run or is migrated, it is not running and * is completing a segment of non-busy time. */ - if (event == TASK_WAKE || (!sched_account_wait_time && + if (event == TASK_WAKE || (!SCHED_ACCOUNT_WAIT_TIME && (event == PICK_NEXT_TASK || event == TASK_MIGRATE))) return 0; @@ -3185,20 +3170,17 @@ static void enable_window_stats(void) enum reset_reason_code { WINDOW_CHANGE, POLICY_CHANGE, - ACCOUNT_WAIT_TIME_CHANGE, HIST_SIZE_CHANGE, MIGRATION_FIXUP_CHANGE, - FREQ_ACCOUNT_WAIT_TIME_CHANGE, FREQ_AGGREGATE_CHANGE, }; const char *sched_window_reset_reasons[] = { "WINDOW_CHANGE", "POLICY_CHANGE", - "ACCOUNT_WAIT_TIME_CHANGE", "HIST_SIZE_CHANGE", "MIGRATION_FIXUP_CHANGE", - "FREQ_ACCOUNT_WAIT_TIME_CHANGE"}; +}; /* Called with IRQs enabled */ void reset_all_window_stats(u64 window_start, unsigned int window_size) @@ -3260,11 +3242,6 @@ void reset_all_window_stats(u64 window_start, unsigned int window_size) old = sched_window_stats_policy; new = sysctl_sched_window_stats_policy; sched_window_stats_policy = sysctl_sched_window_stats_policy; - } else if (sched_account_wait_time != sysctl_sched_account_wait_time) { - reason = ACCOUNT_WAIT_TIME_CHANGE; - old = sched_account_wait_time; - new = sysctl_sched_account_wait_time; - sched_account_wait_time = sysctl_sched_account_wait_time; } else if (sched_ravg_hist_size != sysctl_sched_ravg_hist_size) { reason = HIST_SIZE_CHANGE; old = sched_ravg_hist_size; @@ -3277,13 +3254,6 @@ void reset_all_window_stats(u64 window_start, unsigned int window_size) old = sched_migration_fixup; new = sysctl_sched_migration_fixup; sched_migration_fixup = sysctl_sched_migration_fixup; - } else if (sched_freq_account_wait_time != - sysctl_sched_freq_account_wait_time) { - reason = FREQ_ACCOUNT_WAIT_TIME_CHANGE; - old = sched_freq_account_wait_time; - new = sysctl_sched_freq_account_wait_time; - sched_freq_account_wait_time = - sysctl_sched_freq_account_wait_time; } else if (sched_freq_aggregate != sysctl_sched_freq_aggregate) { reason = FREQ_AGGREGATE_CHANGE; diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index a33eddb7b17d..747a30d1988f 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -2706,13 +2706,6 @@ unsigned int __read_mostly sched_enable_hmp = 0; unsigned int __read_mostly sysctl_sched_spill_nr_run = 10; /* - * Control whether or not individual CPU power consumption is used to - * guide task placement. - * This sysctl can be set to a default value using boot command line arguments. - */ -unsigned int __read_mostly sysctl_sched_enable_power_aware = 0; - -/* * Place sync wakee tasks those have less than configured demand to the waker's * cluster. */ @@ -3081,8 +3074,7 @@ unsigned int power_cost(int cpu, u64 demand) struct rq *rq = cpu_rq(cpu); unsigned int pc; - if (!per_cpu_info || !per_cpu_info[cpu].ptable || - !sysctl_sched_enable_power_aware) + if (!per_cpu_info || !per_cpu_info[cpu].ptable) /* When power aware scheduling is not in use, or CPU * power data is not available, just use the CPU * capacity as a rough stand-in for real CPU power @@ -4055,9 +4047,6 @@ static inline int invalid_value_freq_input(unsigned int *data) if (data == &sysctl_sched_migration_fixup) return !(*data == 0 || *data == 1); - if (data == &sysctl_sched_freq_account_wait_time) - return !(*data == 0 || *data == 1); - if (data == &sysctl_sched_freq_aggregate) return !(*data == 0 || *data == 1); @@ -4080,16 +4069,12 @@ static inline int invalid_value(unsigned int *data) if (data == &sysctl_sched_window_stats_policy) return val >= WINDOW_STATS_INVALID_POLICY; - if (data == &sysctl_sched_account_wait_time) - return !(val == 0 || val == 1); - return invalid_value_freq_input(data); } /* * Handle "atomic" update of sysctl_sched_window_stats_policy, - * sysctl_sched_ravg_hist_size, sysctl_sched_account_wait_time and - * sched_freq_legacy_mode variables. + * sysctl_sched_ravg_hist_size and sched_freq_legacy_mode variables. */ int sched_window_update_handler(struct ctl_table *table, int write, void __user *buffer, size_t *lenp, @@ -4324,8 +4309,6 @@ unsigned int cpu_temp(int cpu) #else /* CONFIG_SCHED_HMP */ -#define sysctl_sched_enable_power_aware 0 - struct cpu_select_env; struct sched_cluster; diff --git a/kernel/sysctl.c b/kernel/sysctl.c index 825be75ca1a3..5288dec335fd 100644 --- a/kernel/sysctl.c +++ b/kernel/sysctl.c @@ -324,13 +324,6 @@ static struct ctl_table kern_table[] = { .proc_handler = sched_window_update_handler, }, { - .procname = "sched_freq_account_wait_time", - .data = &sysctl_sched_freq_account_wait_time, - .maxlen = sizeof(unsigned int), - .mode = 0644, - .proc_handler = sched_window_update_handler, - }, - { .procname = "sched_heavy_task", .data = &sysctl_sched_heavy_task_pct, .maxlen = sizeof(unsigned int), @@ -340,13 +333,6 @@ static struct ctl_table kern_table[] = { #endif #ifdef CONFIG_SCHED_HMP { - .procname = "sched_account_wait_time", - .data = &sysctl_sched_account_wait_time, - .maxlen = sizeof(unsigned int), - .mode = 0644, - .proc_handler = sched_window_update_handler, - }, - { .procname = "sched_cpu_high_irqload", .data = &sysctl_sched_cpu_high_irqload, .maxlen = sizeof(unsigned int), @@ -487,15 +473,6 @@ static struct ctl_table kern_table[] = { .mode = 0644, .proc_handler = sched_boost_handler, }, - { - .procname = "sched_enable_power_aware", - .data = &sysctl_sched_enable_power_aware, - .maxlen = sizeof(unsigned int), - .mode = 0644, - .proc_handler = proc_dointvec_minmax, - .extra1 = &zero, - .extra2 = &one, - }, #endif /* CONFIG_SCHED_HMP */ #ifdef CONFIG_SCHED_DEBUG { |
