From: kbuild test robot <lkp@intel.com>
To: "Bálint Czobor" <czoborbalint@gmail.com>
Cc: kbuild-all@01.org, "Rafael J. Wysocki" <rjw@rjwysocki.net>,
"Viresh Kumar" <viresh.kumar@linaro.org>,
linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org,
"Sam Leffler" <sleffler@chromium.org>,
"Bálint Czobor" <czoborbalint@gmail.com>
Subject: Re: [PATCH 17/70] cpufreq: interactive: take idle notifications only when active
Date: Wed, 28 Oct 2015 04:56:33 +0800 [thread overview]
Message-ID: <201510280429.JglHK9g9%fengguang.wu@intel.com> (raw)
In-Reply-To: <1445967059-6897-17-git-send-email-czoborbalint@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 5657 bytes --]
Hi Sam,
[auto build test ERROR on pm/linux-next -- if it's inappropriate base, please suggest rules for selecting the more suitable base]
url: https://github.com/0day-ci/linux/commits/B-lint-Czobor/cpufreq-interactive-New-interactive-governor/20151028-020715
config: sparc64-allyesconfig (attached as .config)
reproduce:
wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
make.cross ARCH=sparc64
All errors (new ones prefixed by >>):
drivers/cpufreq/cpufreq_interactive.c: In function 'store_hispeed_freq':
drivers/cpufreq/cpufreq_interactive.c:637:2: error: implicit declaration of function 'strict_strtoull' [-Werror=implicit-function-declaration]
ret = strict_strtoull(buf, 0, &val);
^
drivers/cpufreq/cpufreq_interactive.c: In function 'store_go_hispeed_load':
drivers/cpufreq/cpufreq_interactive.c:660:2: error: implicit declaration of function 'strict_strtoul' [-Werror=implicit-function-declaration]
ret = strict_strtoul(buf, 0, &val);
^
drivers/cpufreq/cpufreq_interactive.c: In function 'cpufreq_interactive_idle_notifier':
drivers/cpufreq/cpufreq_interactive.c:827:7: error: 'IDLE_START' undeclared (first use in this function)
case IDLE_START:
^
drivers/cpufreq/cpufreq_interactive.c:827:7: note: each undeclared identifier is reported only once for each function it appears in
drivers/cpufreq/cpufreq_interactive.c:830:7: error: 'IDLE_END' undeclared (first use in this function)
case IDLE_END:
^
drivers/cpufreq/cpufreq_interactive.c: In function 'cpufreq_governor_interactive':
drivers/cpufreq/cpufreq_interactive.c:895:3: error: implicit declaration of function 'idle_notifier_register' [-Werror=implicit-function-declaration]
idle_notifier_register(&cpufreq_interactive_idle_nb);
^
>> drivers/cpufreq/cpufreq_interactive.c:918:3: error: implicit declaration of function 'idle_notifier_unregister' [-Werror=implicit-function-declaration]
idle_notifier_unregister(&cpufreq_interactive_idle_nb);
^
cc1: some warnings being treated as errors
vim +/idle_notifier_unregister +918 drivers/cpufreq/cpufreq_interactive.c
821
822 static int cpufreq_interactive_idle_notifier(struct notifier_block *nb,
823 unsigned long val,
824 void *data)
825 {
826 switch (val) {
> 827 case IDLE_START:
828 cpufreq_interactive_idle_start();
829 break;
830 case IDLE_END:
831 cpufreq_interactive_idle_end();
832 break;
833 }
834
835 return 0;
836 }
837
838 static struct notifier_block cpufreq_interactive_idle_nb = {
839 .notifier_call = cpufreq_interactive_idle_notifier,
840 };
841
842 static int cpufreq_governor_interactive(struct cpufreq_policy *policy,
843 unsigned int event)
844 {
845 int rc;
846 unsigned int j;
847 struct cpufreq_interactive_cpuinfo *pcpu;
848 struct cpufreq_frequency_table *freq_table;
849
850 switch (event) {
851 case CPUFREQ_GOV_START:
852 if (!cpu_online(policy->cpu))
853 return -EINVAL;
854
855 freq_table =
856 cpufreq_frequency_get_table(policy->cpu);
857
858 for_each_cpu(j, policy->cpus) {
859 pcpu = &per_cpu(cpuinfo, j);
860 pcpu->policy = policy;
861 pcpu->target_freq = policy->cur;
862 pcpu->freq_table = freq_table;
863 pcpu->target_set_time_in_idle =
864 get_cpu_idle_time_us(j,
865 &pcpu->target_set_time);
866 pcpu->floor_freq = pcpu->target_freq;
867 pcpu->floor_validate_time =
868 pcpu->target_set_time;
869 pcpu->hispeed_validate_time =
870 pcpu->target_set_time;
871 pcpu->governor_enabled = 1;
872 smp_wmb();
873 }
874
875 if (!hispeed_freq)
876 hispeed_freq = policy->max;
877
878 /*
879 * Do not register the idle hook and create sysfs
880 * entries if we have already done so.
881 */
882 if (atomic_inc_return(&active_count) > 1)
883 return 0;
884
885 rc = sysfs_create_group(cpufreq_global_kobject,
886 &interactive_attr_group);
887 if (rc)
888 return rc;
889
890 rc = input_register_handler(&cpufreq_interactive_input_handler);
891 if (rc)
892 pr_warn("%s: failed to register input handler\n",
893 __func__);
894
895 idle_notifier_register(&cpufreq_interactive_idle_nb);
896 break;
897
898 case CPUFREQ_GOV_STOP:
899 for_each_cpu(j, policy->cpus) {
900 pcpu = &per_cpu(cpuinfo, j);
901 pcpu->governor_enabled = 0;
902 smp_wmb();
903 del_timer_sync(&pcpu->cpu_timer);
904
905 /*
906 * Reset idle exit time since we may cancel the timer
907 * before it can run after the last idle exit time,
908 * to avoid tripping the check in idle exit for a timer
909 * that is trying to run.
910 */
911 pcpu->idle_exit_time = 0;
912 }
913
914 flush_work(&freq_scale_down_work);
915 if (atomic_dec_return(&active_count) > 0)
916 return 0;
917
> 918 idle_notifier_unregister(&cpufreq_interactive_idle_nb);
919 input_unregister_handler(&cpufreq_interactive_input_handler);
920 sysfs_remove_group(cpufreq_global_kobject,
921 &interactive_attr_group);
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/octet-stream, Size: 43764 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: kbuild test robot <lkp@intel.com>
Cc: kbuild-all@01.org, "Rafael J. Wysocki" <rjw@rjwysocki.net>,
"Viresh Kumar" <viresh.kumar@linaro.org>,
linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org,
"Sam Leffler" <sleffler@chromium.org>,
"Bálint Czobor" <czoborbalint@gmail.com>
Subject: Re: [PATCH 17/70] cpufreq: interactive: take idle notifications only when active
Date: Wed, 28 Oct 2015 04:56:33 +0800 [thread overview]
Message-ID: <201510280429.JglHK9g9%fengguang.wu@intel.com> (raw)
In-Reply-To: <1445967059-6897-17-git-send-email-czoborbalint@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 5657 bytes --]
Hi Sam,
[auto build test ERROR on pm/linux-next -- if it's inappropriate base, please suggest rules for selecting the more suitable base]
url: https://github.com/0day-ci/linux/commits/B-lint-Czobor/cpufreq-interactive-New-interactive-governor/20151028-020715
config: sparc64-allyesconfig (attached as .config)
reproduce:
wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
make.cross ARCH=sparc64
All errors (new ones prefixed by >>):
drivers/cpufreq/cpufreq_interactive.c: In function 'store_hispeed_freq':
drivers/cpufreq/cpufreq_interactive.c:637:2: error: implicit declaration of function 'strict_strtoull' [-Werror=implicit-function-declaration]
ret = strict_strtoull(buf, 0, &val);
^
drivers/cpufreq/cpufreq_interactive.c: In function 'store_go_hispeed_load':
drivers/cpufreq/cpufreq_interactive.c:660:2: error: implicit declaration of function 'strict_strtoul' [-Werror=implicit-function-declaration]
ret = strict_strtoul(buf, 0, &val);
^
drivers/cpufreq/cpufreq_interactive.c: In function 'cpufreq_interactive_idle_notifier':
drivers/cpufreq/cpufreq_interactive.c:827:7: error: 'IDLE_START' undeclared (first use in this function)
case IDLE_START:
^
drivers/cpufreq/cpufreq_interactive.c:827:7: note: each undeclared identifier is reported only once for each function it appears in
drivers/cpufreq/cpufreq_interactive.c:830:7: error: 'IDLE_END' undeclared (first use in this function)
case IDLE_END:
^
drivers/cpufreq/cpufreq_interactive.c: In function 'cpufreq_governor_interactive':
drivers/cpufreq/cpufreq_interactive.c:895:3: error: implicit declaration of function 'idle_notifier_register' [-Werror=implicit-function-declaration]
idle_notifier_register(&cpufreq_interactive_idle_nb);
^
>> drivers/cpufreq/cpufreq_interactive.c:918:3: error: implicit declaration of function 'idle_notifier_unregister' [-Werror=implicit-function-declaration]
idle_notifier_unregister(&cpufreq_interactive_idle_nb);
^
cc1: some warnings being treated as errors
vim +/idle_notifier_unregister +918 drivers/cpufreq/cpufreq_interactive.c
821
822 static int cpufreq_interactive_idle_notifier(struct notifier_block *nb,
823 unsigned long val,
824 void *data)
825 {
826 switch (val) {
> 827 case IDLE_START:
828 cpufreq_interactive_idle_start();
829 break;
830 case IDLE_END:
831 cpufreq_interactive_idle_end();
832 break;
833 }
834
835 return 0;
836 }
837
838 static struct notifier_block cpufreq_interactive_idle_nb = {
839 .notifier_call = cpufreq_interactive_idle_notifier,
840 };
841
842 static int cpufreq_governor_interactive(struct cpufreq_policy *policy,
843 unsigned int event)
844 {
845 int rc;
846 unsigned int j;
847 struct cpufreq_interactive_cpuinfo *pcpu;
848 struct cpufreq_frequency_table *freq_table;
849
850 switch (event) {
851 case CPUFREQ_GOV_START:
852 if (!cpu_online(policy->cpu))
853 return -EINVAL;
854
855 freq_table =
856 cpufreq_frequency_get_table(policy->cpu);
857
858 for_each_cpu(j, policy->cpus) {
859 pcpu = &per_cpu(cpuinfo, j);
860 pcpu->policy = policy;
861 pcpu->target_freq = policy->cur;
862 pcpu->freq_table = freq_table;
863 pcpu->target_set_time_in_idle =
864 get_cpu_idle_time_us(j,
865 &pcpu->target_set_time);
866 pcpu->floor_freq = pcpu->target_freq;
867 pcpu->floor_validate_time =
868 pcpu->target_set_time;
869 pcpu->hispeed_validate_time =
870 pcpu->target_set_time;
871 pcpu->governor_enabled = 1;
872 smp_wmb();
873 }
874
875 if (!hispeed_freq)
876 hispeed_freq = policy->max;
877
878 /*
879 * Do not register the idle hook and create sysfs
880 * entries if we have already done so.
881 */
882 if (atomic_inc_return(&active_count) > 1)
883 return 0;
884
885 rc = sysfs_create_group(cpufreq_global_kobject,
886 &interactive_attr_group);
887 if (rc)
888 return rc;
889
890 rc = input_register_handler(&cpufreq_interactive_input_handler);
891 if (rc)
892 pr_warn("%s: failed to register input handler\n",
893 __func__);
894
895 idle_notifier_register(&cpufreq_interactive_idle_nb);
896 break;
897
898 case CPUFREQ_GOV_STOP:
899 for_each_cpu(j, policy->cpus) {
900 pcpu = &per_cpu(cpuinfo, j);
901 pcpu->governor_enabled = 0;
902 smp_wmb();
903 del_timer_sync(&pcpu->cpu_timer);
904
905 /*
906 * Reset idle exit time since we may cancel the timer
907 * before it can run after the last idle exit time,
908 * to avoid tripping the check in idle exit for a timer
909 * that is trying to run.
910 */
911 pcpu->idle_exit_time = 0;
912 }
913
914 flush_work(&freq_scale_down_work);
915 if (atomic_dec_return(&active_count) > 0)
916 return 0;
917
> 918 idle_notifier_unregister(&cpufreq_interactive_idle_nb);
919 input_unregister_handler(&cpufreq_interactive_input_handler);
920 sysfs_remove_group(cpufreq_global_kobject,
921 &interactive_attr_group);
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/octet-stream, Size: 43764 bytes --]
next prev parent reply other threads:[~2015-10-27 20:58 UTC|newest]
Thread overview: 81+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-27 17:29 [PATCH 01/70] cpufreq: interactive: New 'interactive' governor Bálint Czobor
2015-10-27 17:29 ` [PATCH 02/70] cpufreq interactive governor: event tracing Bálint Czobor
2015-10-27 17:29 ` [PATCH 03/70] cpufreq: interactive: apply intermediate load to max speed not current Bálint Czobor
2015-10-27 17:29 ` [PATCH 04/70] cpufreq: interactive: set at least hispeed when above hispeed load Bálint Czobor
2015-10-27 17:29 ` [PATCH 05/70] cpufreq: interactive: don't drop speed if recently at higher load Bálint Czobor
2015-10-27 17:29 ` [PATCH 06/70] cpufreq: interactive: configurable delay before raising above hispeed Bálint Czobor
2015-10-27 17:29 ` [PATCH 07/70] cpufreq: interactive: adjust code and documentation to match Bálint Czobor
2015-10-27 17:29 ` [PATCH 08/70] cpufreq: interactive: base hispeed bump on target freq, not actual Bálint Czobor
2015-10-27 17:29 ` [PATCH 09/70] cpufreq: interactive: Separate speed target revalidate time and initial set time Bálint Czobor
2015-10-27 17:29 ` [PATCH 10/70] cpufreq: interactive: Boost frequency on touchscreen input Bálint Czobor
2015-10-27 17:29 ` [PATCH 11/70] cpufreq: interactive: remove unused target_validate_time_in_idle Bálint Czobor
2015-10-27 17:30 ` [PATCH 12/70] cpufreq: interactive: Add sysfs boost interface for hints from userspace Bálint Czobor
2015-10-27 17:30 ` [PATCH 13/70] cpufreq: interactive: set floor for boosted speed Bálint Czobor
2015-10-27 17:30 ` [PATCH 14/70] cpufreq: interactive: add boost pulse interface Bálint Czobor
2015-10-27 17:30 ` [PATCH 15/70] cpufreq-interactive: Compile fixup Bálint Czobor
2015-10-27 17:30 ` [PATCH 16/70] cpufreq: interactive: restart above_hispeed_delay at each hispeed load Bálint Czobor
2015-10-27 17:30 ` [PATCH 17/70] cpufreq: interactive: take idle notifications only when active Bálint Czobor
2015-10-27 20:56 ` kbuild test robot [this message]
2015-10-27 20:56 ` kbuild test robot
2015-10-27 17:30 ` [PATCH 18/70] cpufreq: interactive: keep freezer happy when not current governor Bálint Czobor
2015-10-27 17:30 ` [PATCH 19/70] cpufreq: interactive: handle speed up and down in the realtime task Bálint Czobor
2015-10-27 17:30 ` [PATCH 20/70] cpufreq: interactive: remove input_boost handling Bálint Czobor
2015-10-27 17:30 ` [PATCH 21/70] cpufreq: interactive: always limit initial speed bump to hispeed Bálint Czobor
2015-10-27 17:30 ` [PATCH 22/70] cpufreq: interactive: run at fraction of hispeed_freq when load is low Bálint Czobor
2015-10-27 17:30 ` [PATCH 23/70] cpufreq: interactive: pin timers to associated CPU Bálint Czobor
2015-10-27 17:30 ` [PATCH 24/70] cpufreq: interactive: use deferrable timer by default Bálint Czobor
2015-10-27 17:30 ` [PATCH 25/70] cpufreq: interactive: kick timer on idle exit past expiry Bálint Czobor
2015-10-27 17:30 ` [PATCH 26/70] cpufreq: interactive: trace actual speed in target speed decisions Bálint Czobor
2015-10-27 17:30 ` [PATCH 27/70] cpufreq: interactive: change speed according to current speed and target load Bálint Czobor
2015-10-27 17:30 ` [PATCH 28/70] cpufreq: interactive: apply above_hispeed_delay to each step above hispeed Bálint Czobor
2015-10-27 17:30 ` [PATCH 29/70] cpufreq: interactive: allow arbitrary speed / target load mappings Bálint Czobor
2015-10-27 17:30 ` [PATCH 30/70] cpufreq: interactive: remove load since last speed change Bálint Czobor
2015-10-27 17:30 ` [PATCH 31/70] cpufreq: interactive: adjust load for changes in speed Bálint Czobor
2015-10-27 17:30 ` [PATCH 32/70] cpufreq: interactive: specify duration of CPU speed boost pulse Bálint Czobor
2015-10-27 17:30 ` [PATCH 33/70] cpufreq: interactive: add timer slack to limit idle at speed > min Bálint Czobor
2015-10-27 17:30 ` [PATCH 34/70] cpufreq: interactive: fix boosting logic Bálint Czobor
2015-10-27 17:30 ` [PATCH 35/70] cpufreq: interactive: fix racy timer stopping Bálint Czobor
2015-10-27 17:30 ` [PATCH 36/70] cpufreq: interactive: fix race on timer restart on governor start Bálint Czobor
2015-10-27 17:30 ` [PATCH 37/70] cpufreq: interactive: default go_hispeed_load 99%, doc updates Bálint Czobor
2015-10-27 17:30 ` [PATCH 38/70] cpufreq: interactive: init default values at compile time Bálint Czobor
2015-10-27 17:30 ` [PATCH 39/70] cpufreq: interactive: don't handle transition notification if not enabled Bálint Czobor
2015-10-27 17:30 ` [PATCH 40/70] cpufreq: interactive: fix deadlock on spinlock in timer Bálint Czobor
2015-10-27 17:30 ` [PATCH 41/70] cpufreq: interactive: fix race on governor start/stop Bálint Czobor
2015-10-27 17:30 ` [PATCH 42/70] cpufreq: interactive: allow arbitrary speed / delay mappings Bálint Czobor
2015-10-27 17:30 ` [PATCH 43/70] cpufreq: interactive: add io_is_busy interface Bálint Czobor
2015-10-27 17:30 ` [PATCH 44/70] cpufreq: interactive: fix crash on error paths in get_tokenized_data Bálint Czobor
2015-10-27 17:30 ` [PATCH 45/70] cpufreq: interactive: base above_hispeed_delay on target freq, not current Bálint Czobor
2015-10-27 17:30 ` [PATCH 46/70] cpufreq: interactive: fix uninitialized spinlock Bálint Czobor
2015-10-27 17:30 ` [PATCH 47/70] cpufreq: interactive: handle errors from cpufreq_frequency_table_target Bálint Czobor
2015-10-27 17:30 ` [PATCH 48/70] cpufreq: interactive: reduce chance of zero time delta on load eval Bálint Czobor
2015-10-27 17:30 ` [PATCH 49/70] cpufreq: interactive: avoid underflow on active time calculation Bálint Czobor
2015-10-27 17:30 ` [PATCH 50/70] cpufreq: interactive: fix race on cpufreq TRANSITION notifier Bálint Czobor
2015-10-27 17:30 ` [PATCH 51/70] cpufreq: interactive: resched timer if max freq raised Bálint Czobor
2015-10-27 17:30 ` [PATCH 52/70] cpufreq: interactive: fix show_target_loads and show_above_hispeed_delay Bálint Czobor
2015-10-27 17:30 ` [PATCH 53/70] cpufreq: interactive: Remove unnecessary cpu_online() check Bálint Czobor
2015-10-27 17:30 ` [PATCH 54/70] cpufreq: interactive: Move definition of cpufreq_gov_interactive downwards Bálint Czobor
2015-10-27 17:30 ` [PATCH 55/70] cpufreq: Interactive: Implement per policy instances of governor Bálint Czobor
2015-10-27 17:30 ` [PATCH 56/70] cpufreq: interactive: delete timers for GOV_START Bálint Czobor
2015-10-27 17:30 ` [PATCH 57/70] cpufreq: interactive: fix compiling warnings Bálint Czobor
2015-10-27 17:30 ` [PATCH 58/70] cpufreq: interactive: fix NULL pointer dereference at sysfs ops Bálint Czobor
2015-10-27 17:30 ` [PATCH 59/70] cpufreq: interactive: Use generic get_cpu_idle_time() from cpufreq.c Bálint Czobor
2015-10-27 17:30 ` [PATCH 60/70] cpufreq: interactive: hold reference on global cpufreq kobject if needed Bálint Czobor
2015-10-27 17:30 ` [PATCH 61/70] cpufreq: interactive: restructure CPUFREQ_GOV_LIMITS Bálint Czobor
2015-10-27 17:30 ` [PATCH 62/70] cpufreq: interactive: turn boost_pulse off on boost off Bálint Czobor
2015-10-27 17:30 ` [PATCH 63/70] cpufreq: interactive: remove compilation error from commit 49cc72365fb7ee87762a7ccc6a32ef68627216c5 Bálint Czobor
2015-10-27 17:30 ` [PATCH 64/70] cpufreq: interactive: prevents the frequency to directly raise above the hispeed_freq from a lower frequency Bálint Czobor
2015-10-27 17:30 ` [PATCH 65/70] cpufreq: interactive: make common_tunables static Bálint Czobor
2015-10-27 17:30 ` [PATCH 66/70] cpufreq: interactive: Fix compile errors in accordance with changes from 3.14 to 3.18 Bálint Czobor
2015-10-28 2:15 ` kbuild test robot
2015-10-28 2:15 ` kbuild test robot
2015-10-27 17:30 ` [PATCH 67/70] cpufreq: interactive: Put global cpufreq kobject on failure Bálint Czobor
2015-10-27 17:30 ` [PATCH 68/70] subsystem: CPU FREQUENCY DRIVERS- Set cpu_load calculation on current frequency Bálint Czobor
2015-10-27 17:30 ` [PATCH 69/70] cpufreq: interactive: Don't set floor_validate_time during boost Bálint Czobor
2015-10-27 17:30 ` [PATCH 70/70] cpufreq: interactive: Round up timer_rate to match jiffy Bálint Czobor
2015-10-27 20:44 ` [PATCH 01/70] cpufreq: interactive: New 'interactive' governor kbuild test robot
2015-10-27 20:44 ` kbuild test robot
2015-10-28 0:59 ` Rafael J. Wysocki
2015-10-28 3:00 ` Viresh Kumar
[not found] ` <CAL6DFdfsDTtkkpLJ7kg9L9rFh+Ho6DC7x9a+F3x9DydvXHfbPQ@mail.gmail.com>
[not found] ` <CAL6DFdeSbzM5go==i8Z_CJ19VrAMWVVWF5NuD+VNMONaPK5zLA@mail.gmail.com>
2015-10-29 1:42 ` Viresh Kumar
2015-11-02 14:02 ` Peter Zijlstra
2015-11-02 18:06 ` Steve Muckle
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201510280429.JglHK9g9%fengguang.wu@intel.com \
--to=lkp@intel.com \
--cc=czoborbalint@gmail.com \
--cc=kbuild-all@01.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=rjw@rjwysocki.net \
--cc=sleffler@chromium.org \
--cc=viresh.kumar@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.