lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ