Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d6d8bf54 authored by Takashi Iwai's avatar Takashi Iwai
Browse files

ALSA: hda - use WARN_ON_ONCE() for zero-division detection



Replace the zero-division warning message with WARN_ON_ONCE() per the
advice by Linus.  This shouldn't happen, but if it happens, it's
possible that the bug happens often due to buggy IRQs.

Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent fed08d03
Loading
Loading
Loading
Loading
+3 −6
Original line number Diff line number Diff line
@@ -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 */