The patch titled sound: initialize rawmidi substream list has been added to the -mm tree. Its filename is sound-initialize-rawmidi-substream-list.patch See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find out what to do about this ------------------------------------------------------ Subject: sound: initialize rawmidi substream list From: Akinobu Mita <akinobu.mita@xxxxxxxxx> If snd_rawmidi_new() failed to allocate substreams for input (snd_rawmidi_alloc_substreams() failed to populate a &rmidi->streams[SNDRV_RAWMIDI_STREAM_INPUT]), it will try to free rawmidi instance by snd_rawmidi_free(). But it will cause oops because snd_rawmidi_free() tries to free both of substreams list but list for output (&rmidi->streams[SNDRV_RAWMIDI_STREAM_OUTPUT]) is not initialized yet. Cc: Takashi Iwai <tiwai@xxxxxxx> Cc: Jaroslav Kysela <perex@xxxxxxx> Signed-off-by: Akinobu Mita <akinobu.mita@xxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- sound/core/rawmidi.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff -puN sound/core/rawmidi.c~sound-initialize-rawmidi-substream-list sound/core/rawmidi.c --- a/sound/core/rawmidi.c~sound-initialize-rawmidi-substream-list +++ a/sound/core/rawmidi.c @@ -1379,7 +1379,6 @@ static int snd_rawmidi_alloc_substreams( struct snd_rawmidi_substream *substream; int idx; - INIT_LIST_HEAD(&stream->substreams); for (idx = 0; idx < count; idx++) { substream = kzalloc(sizeof(*substream), GFP_KERNEL); if (substream == NULL) { @@ -1434,6 +1433,9 @@ int snd_rawmidi_new(struct snd_card *car rmidi->device = device; mutex_init(&rmidi->open_mutex); init_waitqueue_head(&rmidi->open_wait); + INIT_LIST_HEAD(&rmidi->streams[SNDRV_RAWMIDI_STREAM_INPUT].substreams); + INIT_LIST_HEAD(&rmidi->streams[SNDRV_RAWMIDI_STREAM_OUTPUT].substreams); + if (id != NULL) strlcpy(rmidi->id, id, sizeof(rmidi->id)); if ((err = snd_rawmidi_alloc_substreams(rmidi, _ Patches currently in -mm which might be from akinobu.mita@xxxxxxxxx are origin.patch fix-copy_process-error-check.patch tlclk-fix-platform_device_register_simple-error-check.patch acpi-fix-single-linked-list-manipulation.patch acpi-processor-prevent-loading-module-on-failures.patch sound-initialize-rawmidi-substream-list.patch drm-fix-return-value-check.patch git-input.patch input-make-serio_register_driver-return-error.patch input-check-serio_register_driver-error.patch input-check-whether-serio-dirver-registration-is-completed.patch input-change-to-gfp_kernel-for-serio_register_driver-event-allocation.patch ata-fix-platform_device_register_simple-error-check.patch git-mtd.patch gss_spkm3-fix-error-handling-in-module-init.patch auth_gss-unregister-gss_domain-when-unloading-module.patch auth_gss-unregister-gss_domain-when-unloading-module-fix.patch git-pcmcia.patch git-watchdog.patch paride-return-proper-error-code.patch bit-revese-library.patch crc32-replace-bitreverse-by-bitrev32.patch video-use-bitrev8.patch net-use-bitrev8.patch net-use-bitrev8-tidy.patch isdn-hisax-use-bitrev8.patch atm-ambassador-use-bitrev8.patch isdn-gigaset-use-bitrev8.patch isdn-fix-missing-unregister_capi_driver.patch fault-injection-documentation-and-scripts.patch fault-injection-capabilities-infrastructure.patch fault-injection-capabilities-infrastructure-tidy.patch fault-injection-capabilities-infrastructure-tweaks.patch fault-injection-capability-for-kmalloc.patch fault-injection-capability-for-kmalloc-failslab-remove-__gfp_highmem-filtering.patch fault-injection-capability-for-alloc_pages.patch fault-injection-capability-for-disk-io.patch fault-injection-process-filtering-for-fault-injection-capabilities.patch fault-injection-stacktrace-filtering.patch fault-injection-stacktrace-filtering-reject-failure-if-any-caller-lies-within-specified-range.patch fault-injection-Kconfig-cleanup.patch fault-injection-stacktrace-filtering-kconfig-fix.patch fault-injection-Kconfig-cleanup-config_fault_injection-help-text.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html