From: Takashi Iwai Date: Thu, 6 Nov 2008 23:26:52 +0000 (+0100) Subject: ALSA: hda - Add max allocation check in array allocator X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=b910d9ae5b370cf5bf9d6a71028119861b6ea8a4;p=deliverable%2Flinux.git ALSA: hda - Add max allocation check in array allocator Added a check for max allocation size in snd_array_new() for a debugging purpose. Signed-off-by: Takashi Iwai --- diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c index f13834ba6b1d..6f170b281e85 100644 --- a/sound/pci/hda/hda_codec.c +++ b/sound/pci/hda/hda_codec.c @@ -3399,7 +3399,10 @@ void *snd_array_new(struct snd_array *array) { if (array->used >= array->alloced) { int num = array->alloced + array->alloc_align; - void *nlist = kcalloc(num + 1, array->elem_size, GFP_KERNEL); + void *nlist; + if (snd_BUG_ON(num >= 4096)) + return NULL; + nlist = kcalloc(num + 1, array->elem_size, GFP_KERNEL); if (!nlist) return NULL; if (array->list) {