[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <s5htyttsb9l.wl%tiwai@suse.de>
Date: Sun, 07 Feb 2010 09:25:26 +0100
From: Takashi Iwai <tiwai@...e.de>
To: "Jody@...tech" <jody@...ritech.com>
Cc: linux-kernel@...r.kernel.org
Subject: Re: [PATCH] hda-intel: Avoid divide by zero crash
At Sat, 06 Feb 2010 10:46:26 -0500,
Jody@...tech wrote:
>
> On my AMD780V chipset, hda_intel.c can crash the kernel with a divide by
> zero
> for as-yet unknown reasons. A simple check for zero prevents it, though
> the problem that causes it remains. Since the workaround is harmless and
> won't affect anyone except victims of this bug, it should be safe;
> moreover,
> because this crash can be triggered by a user-mode application, there are
> denial of service implications on the systems affected by the bug without
> the patch.
> Signed-off-by: Jody Bruchon <jody@...ritech.com>
Applied now. Thanks.
Takashi
> --- linux-2.6.33-rc6/sound/pci/hda/hda_intel.c 2010-01-29
> 16:57:50.000000000 -0500
> +++ linux-2.6.33-rc6-fix/sound/pci/hda/hda_intel.c 2010-02-06
> 09:44:10.028348166 -0500
> @@ -1878,6 +1878,12 @@
>
> 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 (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 */
>
> --
> 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/
>
--
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