]> git.karo-electronics.de Git - karo-tx-linux.git/commit
ALSA: hda - Fix non-snoop page handling
authorTakashi Iwai <tiwai@suse.de>
Tue, 29 Jan 2013 17:07:22 +0000 (18:07 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 4 Feb 2013 00:27:04 +0000 (18:27 -0600)
commit718a59dc174d0f4ac3c33451f5f1c80882c86198
treef101e344544b07df7d0bbca21498185c3dfa2b51
parent70f89f5122903ab3bea6b327ce1158dca53ae2eb
ALSA: hda - Fix non-snoop page handling

commit 9ddf1aeb2134e72275c97a2c6ff2e3eb04f2f27a upstream.

For non-snoop mode, we fiddle with the page attributes of CORB/RIRB
and the position buffer, but also the ring buffers.  The problem is
that the current code blindly assumes that the buffer is contiguous.
However, the ring buffers may be SG-buffers, thus a wrong vmapped
address is passed there, leading to Oops.

This patch fixes the handling for SG-buffers.

Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=800701

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/pci/hda/hda_intel.c