lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Sat, 24 Nov 2012 12:04:26 +0100
From:	Takashi Iwai <tiwai@...e.de>
To:	Markus Trippelsdorf <markus@...ppelsdorf.de>
Cc:	Linus Torvalds <torvalds@...ux-foundation.org>,
	Mark Brown <broonie@...nsource.wolfsonmicro.com>,
	Liam Girdwood <lrg@...com>, linux-kernel@...r.kernel.org
Subject: Re: [GIT PULL] sound fixes for 3.7-rc7

At Sat, 24 Nov 2012 10:46:10 +0100,
Markus Trippelsdorf wrote:
> 
> On 2012.11.23 at 14:23 +0100, Takashi Iwai wrote:
> > Sound fixes for 3.7-rc7
> > 
> > The highlight of this update is the fixes for ASoC kirkwood by Russell.
> > In addition to that, a couple of regression fixes for HD-audio due to
> > the runtime PM support on 3.7, and other driver-specific regression
> > fixes like USB MIDI on non-standard USB audio drivers.
> > 
> > Takashi Iwai (2):
> >       ALSA: hda - Fix recursive suspend/resume call
> 
> This commit causes with !CONFIG_PM:
> 
> ound/pci/hda/hda_codec.c: In function ‘codec_exec_verb’:
> sound/pci/hda/hda_codec.c:231:12: error: ‘struct hda_codec’ has no member named ‘in_pm’
>   if (!codec->in_pm && res && *res == -1 && bus->rirb_error) {
>             ^
> sound/pci/hda/hda_codec.c:241:19: error: ‘struct hda_codec’ has no member named ‘in_pm’
>   if (!err || codec->in_pm)
>                    ^
> make[3]: *** [sound/pci/hda/hda_codec.o] Error 1

Oops sorry.  I fixed now with the patch below.
I'm going to send another pull request for this fix.


thanks,

Takashi

---
From: Takashi Iwai <tiwai@...e.de>
Subject: [PATCH] ALSA: hda - Fix build without CONFIG_PM

I forgot this again...  codec->in_pm is in #ifdef CONFIG_PM

Reported-by: Markus Trippelsdorf <markus@...ppelsdorf.de>
Signed-off-by: Takashi Iwai <tiwai@...e.de>
---
 sound/pci/hda/hda_codec.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c
index cebe2dfd..d010de1 100644
--- a/sound/pci/hda/hda_codec.c
+++ b/sound/pci/hda/hda_codec.c
@@ -95,6 +95,7 @@ int snd_hda_delete_codec_preset(struct hda_codec_preset_list *preset)
 EXPORT_SYMBOL_HDA(snd_hda_delete_codec_preset);
 
 #ifdef CONFIG_PM
+#define codec_in_pm(codec)	((codec)->in_pm)
 static void hda_power_work(struct work_struct *work);
 static void hda_keep_power_on(struct hda_codec *codec);
 #define hda_codec_is_power_on(codec)	((codec)->power_on)
@@ -104,6 +105,7 @@ static inline void hda_call_pm_notify(struct hda_bus *bus, bool power_up)
 		bus->ops.pm_notify(bus, power_up);
 }
 #else
+#define codec_in_pm(codec)	0
 static inline void hda_keep_power_on(struct hda_codec *codec) {}
 #define hda_codec_is_power_on(codec)	1
 #define hda_call_pm_notify(bus, state) {}
@@ -228,7 +230,7 @@ static int codec_exec_verb(struct hda_codec *codec, unsigned int cmd,
 	}
 	mutex_unlock(&bus->cmd_mutex);
 	snd_hda_power_down(codec);
-	if (!codec->in_pm && res && *res == -1 && bus->rirb_error) {
+	if (!codec_in_pm(codec) && res && *res == -1 && bus->rirb_error) {
 		if (bus->response_reset) {
 			snd_printd("hda_codec: resetting BUS due to "
 				   "fatal communication error\n");
@@ -238,7 +240,7 @@ static int codec_exec_verb(struct hda_codec *codec, unsigned int cmd,
 		goto again;
 	}
 	/* clear reset-flag when the communication gets recovered */
-	if (!err || codec->in_pm)
+	if (!err || codec_in_pm(codec))
 		bus->response_reset = 0;
 	return err;
 }
-- 
1.8.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ