)]}'
{
  "commit": "c2cbdbb1583830b77f169a717407f035d6627793",
  "tree": "f459d8c032609574b6a11971735cd1277dc6fc1b",
  "parents": [
    "c9b58006be7e471a5f55d171cbaa08f4aa8078ea"
  ],
  "author": {
    "name": "Ingo Molnar",
    "email": "mingo@elte.hu",
    "time": "Tue Oct 16 14:42:30 2007 +0200"
  },
  "committer": {
    "name": "Jaroslav Kysela",
    "email": "perex@perex.cz",
    "time": "Tue Oct 16 16:51:26 2007 +0200"
  },
  "message": "[ALSA] fix bootup crash in snd_gus_interrupt()\n\nwhen simulating a storm of fake GUS interrupts (without actually owning\nthis venerable piece of ISA hardware) the driver falls over (crashes) in\ntwo ways:\n1) spinlocks being initialized too late:\nINFO: trying to register non-static key.\nthe code is fine but needs lockdep annotation.\nturning off the locking correctness validator.\n [\u003c401058ca\u003e] show_trace_log_lvl+0x1a/0x30\n [\u003c401064b2\u003e] show_trace+0x12/0x20\n [\u003c401064d6\u003e] dump_stack+0x16/0x20\n [\u003c4014a72b\u003e] __lock_acquire+0xcfb/0x1030\n [\u003c4014aac0\u003e] lock_acquire+0x60/0x80\n [\u003c40721a68\u003e] _spin_lock_irqsave+0x38/0x50\n [\u003c4058fc12\u003e] snd_gf1_i_look8+0x22/0x60\n [\u003c405906fe\u003e] snd_gus_interrupt+0x13e/0x270\n [\u003c401548e8\u003e] handle_IRQ_event+0x28/0x60\n [\u003c40155cc1\u003e] handle_fasteoi_irq+0x71/0xe0\n [\u003c40107238\u003e] do_IRQ+0x48/0xa0\n [\u003c401051fe\u003e] common_interrupt+0x2e/0x40\n [\u003c40156822\u003e] register_handler_proc+0x92/0xf0\n [\u003c401550c2\u003e] setup_irq+0xe2/0x190\n [\u003c40155224\u003e] request_irq+0xb4/0xd0\n [\u003c4058f524\u003e] snd_gus_create+0x124/0x3c0\n [\u003c40aa4087\u003e] snd_gusclassic_probe+0x2a7/0x4b0\n [\u003c403f5eff\u003e] isa_bus_probe+0x1f/0x30\n [\u003c403f1944\u003e] driver_probe_device+0x84/0x190\n [\u003c403f1a58\u003e] __device_attach+0x8/0x10\n [\u003c403f0e63\u003e] bus_for_each_drv+0x53/0x80\n [\u003c403f1b1b\u003e] device_attach+0x8b/0x90\n [\u003c403f0dd8\u003e] bus_attach_device+0x48/0x80\n [\u003c403efdbd\u003e] device_add+0x45d/0x5a0\n [\u003c403eff12\u003e] device_register+0x12/0x20\n [\u003c403f60c3\u003e] isa_register_driver+0xb3/0x140\n [\u003c40aa3dd2\u003e] alsa_card_gusclassic_init+0x12/0x20\n [\u003c40a665c3\u003e] kernel_init+0x133/0x310\n [\u003c401054a7\u003e] kernel_thread_helper+0x7/0x10\n \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n2) callback functions not being filled in yet:\nBUG: unable to handle kernel NULL pointer dereference at virtual address 00000000\n printing eip:\n00000000\n*pde \u003d 00000000\nOops: 0000 [#1]\nSMP DEBUG_PAGEALLOC\nCPU:    0\nEIP:    0060:[\u003c00000000\u003e]    Not tainted VLI\nEFLAGS: 00010002   (2.6.23 #37)\nEIP is at 0x0\neax: 7fe94000   ebx: 7fe94000   ecx: 00000000   edx: 00000226\nesi: 00000000   edi: 00000005   ebp: 7ff87c28   esp: 7ff87bf4\nds: 007b   es: 007b   fs: 00d8  gs: 0000  ss: 0068\nProcess swapper (pid: 1, ti\u003d7ff86000 task\u003d7ff84000 task.ti\u003d7ff86000)\nStack: 40590683 408424a9 408db87c 00000029 40787406 00000064 00000046 ff000000\n       000000ff 00000001 7faefaf0 00000000 00000005 7ff87c40 401548e8 00000000\n       40a52000 7faefaf0 00000005 7ff87c58 40155cc1 40a52030 00000005 00000000\nCall Trace:\n [\u003c401058ca\u003e] show_trace_log_lvl+0x1a/0x30\n [\u003c4010598b\u003e] show_stack_log_lvl+0xab/0xd0\n [\u003c40105b7c\u003e] show_registers+0x1cc/0x2d0\n [\u003c40105d96\u003e] die+0x116/0x240\n [\u003c4011d7bb\u003e] do_page_fault+0x18b/0x670\n [\u003c40721d22\u003e] error_code+0x72/0x80\n [\u003c401548e8\u003e] handle_IRQ_event+0x28/0x60\n [\u003c40155cc1\u003e] handle_fasteoi_irq+0x71/0xe0\n [\u003c40107238\u003e] do_IRQ+0x48/0xa0\n [\u003c401051fe\u003e] common_interrupt+0x2e/0x40\n [\u003c401a344e\u003e] proc_create+0x3e/0x120\n [\u003c401a3733\u003e] proc_mkdir_mode+0x23/0x50\n [\u003c401a376f\u003e] proc_mkdir+0xf/0x20\n [\u003c40156864\u003e] register_handler_proc+0xd4/0xf0\n [\u003c401550c2\u003e] setup_irq+0xe2/0x190\n [\u003c40155224\u003e] request_irq+0xb4/0xd0\n [\u003c4058f524\u003e] snd_gus_create+0x124/0x3c0\n [\u003c40aa4087\u003e] snd_gusclassic_probe+0x2a7/0x4b0\n [\u003c403f5eff\u003e] isa_bus_probe+0x1f/0x30\n [\u003c403f1944\u003e] driver_probe_device+0x84/0x190\n [\u003c403f1a58\u003e] __device_attach+0x8/0x10\n [\u003c403f0e63\u003e] bus_for_each_drv+0x53/0x80\n [\u003c403f1b1b\u003e] device_attach+0x8b/0x90\n [\u003c403f0dd8\u003e] bus_attach_device+0x48/0x80\n [\u003c403efdbd\u003e] device_add+0x45d/0x5a0\n [\u003c403eff12\u003e] device_register+0x12/0x20\n [\u003c403f60c3\u003e] isa_register_driver+0xb3/0x140\n [\u003c40aa3dd2\u003e] alsa_card_gusclassic_init+0x12/0x20\n [\u003c40a665c3\u003e] kernel_init+0x133/0x310\n [\u003c401054a7\u003e] kernel_thread_helper+0x7/0x10\n \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nCode:  Bad EIP value.\nEIP: [\u003c00000000\u003e] 0x0 SS:ESP 0068:7ff87bf4\nKernel panic - not syncing: Fatal exception in interrupt\nwith these things fixed, i get the expected \u0027no such hardware\u0027 result\nfrom the driver initialization:\n Calling initcall 0x40aa3dc0: alsa_card_gusclassic_init+0x0/0x20()\n ALSA sound/isa/gus/gusclassic.c:136: [0x220] check 1 failed - 0xff\n initcall 0x40aa3dc0: alsa_card_gusclassic_init+0x0/0x20() returned 0.\n initcall 0x40aa3dc0 ran for 133 msecs:\n alsa_card_gusclassic_init+0x0/0x20()\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Jaroslav Kysela \u003cperex@perex.cz\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a0430b338d67c5d9a04a88cf7b382d083b44cc91",
      "old_mode": 33188,
      "old_path": "sound/isa/gus/gus_irq.c",
      "new_id": "cd9a6f1c99e6ea08f01fcad7756ce1beabd8dcbb",
      "new_mode": 33188,
      "new_path": "sound/isa/gus/gus_irq.c"
    },
    {
      "type": "modify",
      "old_id": "ada9209a93a6f31d4ffd86b278787e8bb81d47c6",
      "old_mode": 33188,
      "old_path": "sound/isa/gus/gus_main.c",
      "new_id": "b14d5d6d9a3233b60ad233d988719bd5b74f70cd",
      "new_mode": 33188,
      "new_path": "sound/isa/gus/gus_main.c"
    }
  ]
}
