lkml.org 
[lkml]   [2018]   [Mar]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.9 223/241] ALSA: hda - Revert power_save option default value
    Date
    4.9-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Takashi Iwai <tiwai@suse.de>

    commit 40088dc4e1ead7df31728c73f5b51d71da18831d upstream.

    With the commit 1ba8f9d30817 ("ALSA: hda: Add a power_save
    blacklist"), we changed the default value of power_save option to -1
    for processing the power-save blacklist.
    Unfortunately, this seems breaking user-space applications that
    actually read the power_save parameter value via sysfs and judge /
    adjust the power-saving status. They see the value -1 as if the
    power-save is turned off, although the actual value is taken from
    CONFIG_SND_HDA_POWER_SAVE_DEFAULT and it can be a positive.

    So, overall, passing -1 there was no good idea. Let's partially
    revert it -- at least for power_save option default value is restored
    again to CONFIG_SND_HDA_POWER_SAVE_DEFAULT. Meanwhile, in this patch,
    we keep the blacklist behavior and make is adjustable via the new
    option, pm_blacklist.

    Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=199073
    Fixes: 1ba8f9d30817 ("ALSA: hda: Add a power_save blacklist")
    Acked-by: Hans de Goede <hdegoede@redhat.com>
    Cc: <stable@vger.kernel.org>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    sound/pci/hda/hda_intel.c | 9 ++++++---
    1 file changed, 6 insertions(+), 3 deletions(-)

    --- a/sound/pci/hda/hda_intel.c
    +++ b/sound/pci/hda/hda_intel.c
    @@ -180,11 +180,15 @@ static const struct kernel_param_ops par
    };
    #define param_check_xint param_check_int

    -static int power_save = -1;
    +static int power_save = CONFIG_SND_HDA_POWER_SAVE_DEFAULT;
    module_param(power_save, xint, 0644);
    MODULE_PARM_DESC(power_save, "Automatic power-saving timeout "
    "(in second, 0 = disable).");

    +static bool pm_blacklist = true;
    +module_param(pm_blacklist, bool, 0644);
    +MODULE_PARM_DESC(pm_blacklist, "Enable power-management blacklist");
    +
    /* reset the HD-audio controller in power save mode.
    * this may give more power-saving, but will take longer time to
    * wake up.
    @@ -2153,10 +2157,9 @@ static int azx_probe_continue(struct azx

    val = power_save;
    #ifdef CONFIG_PM
    - if (val == -1) {
    + if (pm_blacklist) {
    const struct snd_pci_quirk *q;

    - val = CONFIG_SND_HDA_POWER_SAVE_DEFAULT;
    q = snd_pci_quirk_lookup(chip->pci, power_save_blacklist);
    if (q && val) {
    dev_info(chip->card->dev, "device %04x:%04x is on the power_save blacklist, forcing power_save to 0\n",

    \
     
     \ /
      Last update: 2018-03-19 20:00    [W:4.166 / U:0.136 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site