Message ID | 010101746fc98add-45e77496-d2d6-4bc1-a1ce-0692599a9a7a-000000@us-west-2.amazonses.com |
---|---|
State | New |
Headers | show |
Series | cpuidle: governor: export cpuidle governor functions | expand |
Sorry for the delay. On Wed, Sep 9, 2020 at 12:15 AM Lina Iyer <ilina@codeaurora.org> wrote: > > Commit 83788c0caed3 ("cpuidle: remove unused exports") removed > capability of registering cpuidle governors, which was unused at that > time. By exporting the symbol, let's allow platform specific modules to > register cpuidle governors and use cpuidle_governor_latency_req() to get > the QoS for the CPU. Which platform-specific modules may want to do that and why? > Signed-off-by: Lina Iyer <ilina@codeaurora.org> > --- > drivers/cpuidle/governor.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/cpuidle/governor.c b/drivers/cpuidle/governor.c > index 29acaf48e575..0e51ed25665e 100644 > --- a/drivers/cpuidle/governor.c > +++ b/drivers/cpuidle/governor.c > @@ -102,6 +102,7 @@ int cpuidle_register_governor(struct cpuidle_governor *gov) > > return ret; > } > +EXPORT_SYMBOL_GPL(cpuidle_register_governor); > > /** > * cpuidle_governor_latency_req - Compute a latency constraint for CPU > @@ -118,3 +119,4 @@ s64 cpuidle_governor_latency_req(unsigned int cpu) > > return (s64)device_req * NSEC_PER_USEC; > } > +EXPORT_SYMBOL_GPL(cpuidle_governor_latency_req); > -- > The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, > a Linux Foundation Collaborative Project >
Hi Rafael, On Tue, Sep 22 2020 at 10:00 -0600, Rafael J. Wysocki wrote: >Sorry for the delay. > >On Wed, Sep 9, 2020 at 12:15 AM Lina Iyer <ilina@codeaurora.org> wrote: >> >> Commit 83788c0caed3 ("cpuidle: remove unused exports") removed >> capability of registering cpuidle governors, which was unused at that >> time. By exporting the symbol, let's allow platform specific modules to >> register cpuidle governors and use cpuidle_governor_latency_req() to get >> the QoS for the CPU. > >Which platform-specific modules may want to do that and why? > We are planning a custom cpuidle governor for QCOM SoCs. With Android, the idea is to make them loadable modules so they can be in a separate partition. Thanks, Lina >> Signed-off-by: Lina Iyer <ilina@codeaurora.org> >> --- >> drivers/cpuidle/governor.c | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/drivers/cpuidle/governor.c b/drivers/cpuidle/governor.c >> index 29acaf48e575..0e51ed25665e 100644 >> --- a/drivers/cpuidle/governor.c >> +++ b/drivers/cpuidle/governor.c >> @@ -102,6 +102,7 @@ int cpuidle_register_governor(struct cpuidle_governor *gov) >> >> return ret; >> } >> +EXPORT_SYMBOL_GPL(cpuidle_register_governor); >> >> /** >> * cpuidle_governor_latency_req - Compute a latency constraint for CPU >> @@ -118,3 +119,4 @@ s64 cpuidle_governor_latency_req(unsigned int cpu) >> >> return (s64)device_req * NSEC_PER_USEC; >> } >> +EXPORT_SYMBOL_GPL(cpuidle_governor_latency_req); >> -- >> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, >> a Linux Foundation Collaborative Project >>
Hi Lina, On Tue, Sep 22, 2020 at 6:12 PM Lina Iyer <ilina@codeaurora.org> wrote: > > Hi Rafael, > > On Tue, Sep 22 2020 at 10:00 -0600, Rafael J. Wysocki wrote: > >Sorry for the delay. > > > >On Wed, Sep 9, 2020 at 12:15 AM Lina Iyer <ilina@codeaurora.org> wrote: > >> > >> Commit 83788c0caed3 ("cpuidle: remove unused exports") removed > >> capability of registering cpuidle governors, which was unused at that > >> time. By exporting the symbol, let's allow platform specific modules to > >> register cpuidle governors and use cpuidle_governor_latency_req() to get > >> the QoS for the CPU. > > > >Which platform-specific modules may want to do that and why? > > > We are planning a custom cpuidle governor for QCOM SoCs. With Android, > the idea is to make them loadable modules so they can be in a separate > partition. Well, the $subject patch is not applicable without a mainline user requiring this, so it needs to be posted along with that user. Cheers!
Hi Rafael, On 22/09/2020 19:27, Rafael J. Wysocki wrote: > Hi Lina, > > On Tue, Sep 22, 2020 at 6:12 PM Lina Iyer <ilina@codeaurora.org> wrote: >> >> Hi Rafael, >> >> On Tue, Sep 22 2020 at 10:00 -0600, Rafael J. Wysocki wrote: >>> Sorry for the delay. >>> >>> On Wed, Sep 9, 2020 at 12:15 AM Lina Iyer <ilina@codeaurora.org> wrote: >>>> >>>> Commit 83788c0caed3 ("cpuidle: remove unused exports") removed >>>> capability of registering cpuidle governors, which was unused at that >>>> time. By exporting the symbol, let's allow platform specific modules to >>>> register cpuidle governors and use cpuidle_governor_latency_req() to get >>>> the QoS for the CPU. >>> >>> Which platform-specific modules may want to do that and why? >>> >> We are planning a custom cpuidle governor for QCOM SoCs. With Android, >> the idea is to make them loadable modules so they can be in a separate >> partition. > > Well, the $subject patch is not applicable without a mainline user > requiring this, so it needs to be posted along with that user. Putting apart the custom cpuidle governor mentioned above, would it make sense to convert the governors into modules ? It is pointless to have all of them compiled in, especially with distros doing make allmodconfig, no? -- <http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook | <http://twitter.com/#!/linaroorg> Twitter | <http://www.linaro.org/linaro-blog/> Blog
Hi Daniel/Rafael, >> would it make sense to convert the governors into modules i am not aware if this was not pursued further due to any issue. Do you see any concerns to allow existing governors compiled as loadable module? if not i can work on same and post. please do let me know your thoughts on this. i have CCed Saravana and Todd for awareness. Thanks, Maulik On 10/10/2020 1:56 AM, Daniel Lezcano wrote: > Hi Rafael, > > On 22/09/2020 19:27, Rafael J. Wysocki wrote: >> Hi Lina, >> >> On Tue, Sep 22, 2020 at 6:12 PM Lina Iyer <ilina@codeaurora.org> wrote: >>> Hi Rafael, >>> >>> On Tue, Sep 22 2020 at 10:00 -0600, Rafael J. Wysocki wrote: >>>> Sorry for the delay. >>>> >>>> On Wed, Sep 9, 2020 at 12:15 AM Lina Iyer <ilina@codeaurora.org> wrote: >>>>> Commit 83788c0caed3 ("cpuidle: remove unused exports") removed >>>>> capability of registering cpuidle governors, which was unused at that >>>>> time. By exporting the symbol, let's allow platform specific modules to >>>>> register cpuidle governors and use cpuidle_governor_latency_req() to get >>>>> the QoS for the CPU. >>>> Which platform-specific modules may want to do that and why? >>>> >>> We are planning a custom cpuidle governor for QCOM SoCs. With Android, >>> the idea is to make them loadable modules so they can be in a separate >>> partition. >> Well, the $subject patch is not applicable without a mainline user >> requiring this, so it needs to be posted along with that user. > Putting apart the custom cpuidle governor mentioned above, would it make > sense to convert the governors into modules ? It is pointless to have > all of them compiled in, especially with distros doing make > allmodconfig, no? > > -- QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation
On Tue, 17 Aug 2021 at 11:32, Maulik Shah <mkshah@codeaurora.org> wrote: > > Hi Daniel/Rafael, > > >> would it make sense to convert the governors into modules > > i am not aware if this was not pursued further due to any issue. > > Do you see any concerns to allow existing governors compiled as loadable > module? > if not i can work on same and post. please do let me know your thoughts > on this. > > i have CCed Saravana and Todd for awareness. I suggest you re-submit a new patch and put some arguments of why this is useful for us in the commit message. Then we can discuss that instead, rather than this old patch. Kind regards Uffe > > Thanks, > Maulik > > On 10/10/2020 1:56 AM, Daniel Lezcano wrote: > > Hi Rafael, > > > > On 22/09/2020 19:27, Rafael J. Wysocki wrote: > >> Hi Lina, > >> > >> On Tue, Sep 22, 2020 at 6:12 PM Lina Iyer <ilina@codeaurora.org> wrote: > >>> Hi Rafael, > >>> > >>> On Tue, Sep 22 2020 at 10:00 -0600, Rafael J. Wysocki wrote: > >>>> Sorry for the delay. > >>>> > >>>> On Wed, Sep 9, 2020 at 12:15 AM Lina Iyer <ilina@codeaurora.org> wrote: > >>>>> Commit 83788c0caed3 ("cpuidle: remove unused exports") removed > >>>>> capability of registering cpuidle governors, which was unused at that > >>>>> time. By exporting the symbol, let's allow platform specific modules to > >>>>> register cpuidle governors and use cpuidle_governor_latency_req() to get > >>>>> the QoS for the CPU. > >>>> Which platform-specific modules may want to do that and why? > >>>> > >>> We are planning a custom cpuidle governor for QCOM SoCs. With Android, > >>> the idea is to make them loadable modules so they can be in a separate > >>> partition. > >> Well, the $subject patch is not applicable without a mainline user > >> requiring this, so it needs to be posted along with that user. > > Putting apart the custom cpuidle governor mentioned above, would it make > > sense to convert the governors into modules ? It is pointless to have > > all of them compiled in, especially with distros doing make > > allmodconfig, no? > > > > > -- > QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation >
diff --git a/drivers/cpuidle/governor.c b/drivers/cpuidle/governor.c index 29acaf48e575..0e51ed25665e 100644 --- a/drivers/cpuidle/governor.c +++ b/drivers/cpuidle/governor.c @@ -102,6 +102,7 @@ int cpuidle_register_governor(struct cpuidle_governor *gov) return ret; } +EXPORT_SYMBOL_GPL(cpuidle_register_governor); /** * cpuidle_governor_latency_req - Compute a latency constraint for CPU @@ -118,3 +119,4 @@ s64 cpuidle_governor_latency_req(unsigned int cpu) return (s64)device_req * NSEC_PER_USEC; } +EXPORT_SYMBOL_GPL(cpuidle_governor_latency_req);
Commit 83788c0caed3 ("cpuidle: remove unused exports") removed capability of registering cpuidle governors, which was unused at that time. By exporting the symbol, let's allow platform specific modules to register cpuidle governors and use cpuidle_governor_latency_req() to get the QoS for the CPU. Signed-off-by: Lina Iyer <ilina@codeaurora.org> --- drivers/cpuidle/governor.c | 2 ++ 1 file changed, 2 insertions(+)