summaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2010-02-12 19:12:28 +0100
committerLinus Torvalds <torvalds@linux-foundation.org>2010-02-12 19:12:28 +0100
commite99cc290cae141853bcd901e4c7038fe686cc46d (patch)
treea1562c313f8459790ff7141be707656e1498fe84 /sound
parentMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/anh... (diff)
parentALSA: hda - use WARN_ON_ONCE() for zero-division detection (diff)
downloadlinux-e99cc290cae141853bcd901e4c7038fe686cc46d.tar.xz
linux-e99cc290cae141853bcd901e4c7038fe686cc46d.zip
Merge branch 'fix/hda' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
* 'fix/hda' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ALSA: hda - use WARN_ON_ONCE() for zero-division detection
Diffstat (limited to 'sound')
-rw-r--r--sound/pci/hda/hda_intel.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
index e767c3f395ab..3600e9cc9bc6 100644
--- a/sound/pci/hda/hda_intel.c
+++ b/sound/pci/hda/hda_intel.c
@@ -1893,12 +1893,9 @@ static int azx_position_ok(struct azx *chip, struct azx_dev *azx_dev)
if (!bdl_pos_adj[chip->dev_index])
return 1; /* no delayed ack */
- if (azx_dev->period_bytes == 0) {
- printk(KERN_WARNING
- "hda-intel: Divide by zero was avoided "
- "in azx_dev->period_bytes.\n");
- return 0;
- }
+ if (WARN_ONCE(!azx_dev->period_bytes,
+ "hda-intel: zero azx_dev->period_bytes"))
+ return 0; /* this shouldn't happen! */
if (pos % azx_dev->period_bytes > azx_dev->period_bytes / 2)
return 0; /* NG - it's below the period boundary */
return 1; /* OK, it's fine */