diff options
author | Mike Travis <travis@sgi.com> | 2013-05-01 15:04:08 -0400 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2013-05-03 05:56:18 -0400 |
commit | 49d9e77e72cf178644b4db08fa211d8b4715ab13 (patch) | |
tree | 779e7fda8be1657fab54f3105510849e370dd337 /sound/pci/hda | |
parent | 9ea6cfbc2a31b87189a99fa8311c7d8d449f6a32 (diff) |
ALSA: hda - Fix system panic when DMA > 40 bits for Nvidia audio controllers
The audio driver mistakenly allows 64 bit addresses to be created for
the audio driver on Nvidia GPUs. Unfortunately, the hardware normally
only supports up to 40 bits of DMA. This can cause system panics as
well as misdirected data when the address is > 40 bits as the upper
part the address is truncated.
Signed-off-by: Mike Travis <travis@sgi.com>
Reviewed-by: Mike Habeck <habeck@sgi.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda')
-rw-r--r-- | sound/pci/hda/hda_intel.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c index 7b213d589ef6..de18722c4873 100644 --- a/sound/pci/hda/hda_intel.c +++ b/sound/pci/hda/hda_intel.c | |||
@@ -615,7 +615,7 @@ enum { | |||
615 | /* quirks for Nvidia */ | 615 | /* quirks for Nvidia */ |
616 | #define AZX_DCAPS_PRESET_NVIDIA \ | 616 | #define AZX_DCAPS_PRESET_NVIDIA \ |
617 | (AZX_DCAPS_NVIDIA_SNOOP | AZX_DCAPS_RIRB_DELAY | AZX_DCAPS_NO_MSI |\ | 617 | (AZX_DCAPS_NVIDIA_SNOOP | AZX_DCAPS_RIRB_DELAY | AZX_DCAPS_NO_MSI |\ |
618 | AZX_DCAPS_ALIGN_BUFSIZE) | 618 | AZX_DCAPS_ALIGN_BUFSIZE | AZX_DCAPS_NO_64BIT) |
619 | 619 | ||
620 | #define AZX_DCAPS_PRESET_CTHDA \ | 620 | #define AZX_DCAPS_PRESET_CTHDA \ |
621 | (AZX_DCAPS_NO_MSI | AZX_DCAPS_POSFIX_LPIB | AZX_DCAPS_4K_BDLE_BOUNDARY) | 621 | (AZX_DCAPS_NO_MSI | AZX_DCAPS_POSFIX_LPIB | AZX_DCAPS_4K_BDLE_BOUNDARY) |