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]
Message-ID: <s5hljou7ez8.wl%tiwai@suse.de>
Date:	Mon, 18 May 2009 14:49:47 +0200
From:	Takashi Iwai <tiwai@...e.de>
To:	Richard Kennedy <richard@....demon.co.uk>
Cc:	perex@...ex.cz, lkml <linux-kernel@...r.kernel.org>
Subject: Re: regression in 2.6.30-rc6 -- via82xx sound very quiet

At Mon, 18 May 2009 13:46:08 +0100,
Richard Kennedy wrote:
> 
> On Mon, 2009-05-18 at 09:56 +0200, Takashi Iwai wrote:
> > At Mon, 18 May 2009 08:52:34 +0100,
> > Richard Kennedy wrote:
> > > 
> > > On Mon, 2009-05-18 at 08:04 +0200, Takashi Iwai wrote:
> > > > At Sun, 17 May 2009 21:38:03 +0100,
> > > > Richard Kennedy wrote:
> > > > > 
> > > > > On Sun, 2009-05-17 at 19:16 +0200, Takashi Iwai wrote:
> > > > > > At Sun, 17 May 2009 17:47:54 +0100,
> > > > > > Richard Kennedy wrote:
> > > > > > > 
> > > > > > > In the current git 2.6.30-rc6 the sound from my motherboard has become
> > > > > > > extremely quiet, I have to turn my speakers up all the way to hear
> > > > > > > anything at all.
> > > > > > > I'm not too sure when the problem first started but I've just tested
> > > > > > > 2.6.30-rc4 and it works correctly.  
> > > > > > 
> > > > > > Try to correct "DXS Playback Volume" mixer elements.
> > > > > > The dB range of these volumes were fixed recently to the correct
> > > > > > values.  If the old mixer value is restored using the dB value,
> > > > > > it would be restored to a much lower value, which explains your
> > > > > > symptom.
> > > > > > 
> > > > > > Simply set these volumes to the max (i.e. 0dB) and never change unless
> > > > > > you really need them.
> > > > > > 
> > > > > > 
> > > > > > thanks,
> > > > > > 
> > > > > > Takashi
> > > > > 
> > > > > Hi Takashi,
> > > > > 
> > > > > thanks for that. Yes that works.
> > > > 
> > > > Thanks for checking.
> > > > 
> > > > > I didn't even know I had that control, so I guess this could be a common
> > > > > problem.
> > > > 
> > > > Yes, unfortunately, it would hit to many via82xx ac97 chips.
> > > > As the original value was wrong, it can't be corrected so easily from
> > > > the driver side.  Manual corrections seem needed, but just only once.
> > > > 
> > > > 
> > > > Takashi
> > > 
> > > Yes it's easy to do.
> > > But it would be nice if we could give the users a hint as to what's gone
> > > wrong. Would it be ok to add a log message at startup ? 
> > > 
> > > something like "your DXS volume control may need reseting".
> > 
> > Unfortunately this can't be detected by the system because the old
> > stored value is still a valid value, just less than expected.
> > 
> > But yes, we might need to inform this somewhere in a better place.
> > 
> > 
> > Takashi
> 
> What about adding something like this ? 
> 
> I know it's a bit ugly and it will have to be removed at some point, but
> it would at least give the users a clue.

No, this doesn't work.  If you install the system from the scratch, it
works fine as is.  The problem happens only when you inherit an old
asound.state via alsactl (usually via udev).  So, it cannot be checked
by the driver at all.


Takashi

> 
> regards
> Richard
> 
> 
> diff --git a/sound/pci/via82xx.c b/sound/pci/via82xx.c
> index 1ef58c5..e856f0a 100644
> --- a/sound/pci/via82xx.c
> +++ b/sound/pci/via82xx.c
> @@ -2465,8 +2465,10 @@ static int __devinit snd_via82xx_probe(struct pci_dev *pci,
>  			 */
>  			if (dxs_support == VIA_DXS_DISABLE)
>  				chip_type = TYPE_VIA8233A;
> -			else
> +			else {
>  				chip_type = TYPE_VIA8233;
> +				printk (KERN_WARNING "via82xx - 2.6.30 improved DXS support. User may need to reset DXS control\n");
> +			}
>  		}
>  		if (chip_type == TYPE_VIA8233A)
>  			strcpy(card->driver, "VIA8233A");
> 
> 
--
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