From: John Kacur on 6 Jan 2010 12:00 The following was in my 2.6.33-rc3 dmesg (of course that doesn't mean that the problem didn't exist earlier too) WARNING: at /home/jkacur/rt.linux.git/sound/core/sound_oss.c:96 snd_oss_kernel_minor+0xdf/0x120 [snd]() Hardware name: 2241B48 BUG? (minor < 0 || minor >= 128) Modules linked in: snd_mixer_oss thinkpad_acpi(+) sdhci hwmon i2c_i801 firewire_ohci snd_pcm mmc_core snd_timer cfg80211 firewire_core btusb joydev iTCO_wdt bluetooth ata_generic e1000e i2c_core ppdev snd battery ac iTCO_vendor_support parport_pc ricoh_mmc intel_agp pata_acpi pcspkr parport tpm_tis video wmi output soundcore button tpm rfkill sr_mod tpm_bios snd_page_alloc crc_itu_t cdrom sg ahci libata sd_mod scsi_mod crc_t10dif xfs exportfs uhci_hcd ohci_hcd ehci_hcd [last unloaded: scsi_wait_scan] Pid: 1317, comm: modprobe Not tainted 2.6.33-rc3 #1 Call Trace: [<ffffffffa027bb25>] ? snd_oss_kernel_minor+0xdf/0x120 [snd] [<ffffffff8104338c>] warn_slowpath_common+0x7c/0xa9 [<ffffffff81043410>] warn_slowpath_fmt+0x41/0x43 [<ffffffffa027bb25>] snd_oss_kernel_minor+0xdf/0x120 [snd] [<ffffffffa027bc7e>] snd_register_oss_device+0x2c/0x21a [snd] [<ffffffffa0271e1e>] snd_mixer_oss_notify_handler+0xa5/0x2e5 [snd_mixer_oss] [<ffffffff81375e00>] ? __mutex_unlock_slowpath+0x5c/0x141 [<ffffffff810710d5>] ? trace_hardirqs_on_caller+0x11f/0x14a [<ffffffff8107110d>] ? trace_hardirqs_on+0xd/0xf sdhci-pci 0000:15:00.2: SDHCI controller found [1180:0822] (rev 21) sdhci-pci 0000:15:00.2: PCI INT C -> GSI 18 (level, low) -> IRQ 18 [<ffffffff81375ed3>] ? __mutex_unlock_slowpath+0x12f/0x141 sdhci-pci 0000:15:00.2: Will use DMA mode even though HW doesn't fully claim to support it. Registered led device: mmc0:: mmc0: SDHCI controller on PCI [0000:15:00.2] using DMA [<ffffffffa027628a>] snd_card_register+0x135/0x14b [snd] [<ffffffffa0370c88>] volume_init+0x335/0x3d2 [thinkpad_acpi] [<ffffffffa037289b>] thinkpad_acpi_module_init+0x61f/0xa4f [thinkpad_acpi] [<ffffffffa037227c>] ? thinkpad_acpi_module_init+0x0/0xa4f [thinkpad_acpi] [<ffffffff810001fa>] do_one_initcall+0x5f/0x154 [<ffffffff8107ff34>] sys_init_module+0xd7/0x234 [<ffffffff81002d5b>] system_call_fastpath+0x16/0x1b ---[ end trace a6d53dc318f09cb5 ]--- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: John Kacur on 6 Jan 2010 12:10 On Wed, Jan 6, 2010 at 5:53 PM, John Kacur <jkacur(a)gmail.com> wrote: > The following was in my 2.6.33-rc3 dmesg (of course that doesn't mean > that the problem didn't exist earlier too) > > WARNING: at /home/jkacur/rt.linux.git/sound/core/sound_oss.c:96 > snd_oss_kernel_minor+0xdf/0x120 [snd]() > Hardware name: 2241B48 > BUG? (minor < 0 || minor >= 128) > Modules linked in: snd_mixer_oss thinkpad_acpi(+) sdhci hwmon i2c_i801 > firewire_ohci snd_pcm mmc_core snd_timer cfg80211 firewire_core btusb > joydev iTCO_wdt bluetooth ata_generic e1000e i2c_core ppdev snd > battery ac iTCO_vendor_support parport_pc ricoh_mmc intel_agp > pata_acpi pcspkr parport tpm_tis video wmi output soundcore button tpm > rfkill sr_mod tpm_bios snd_page_alloc crc_itu_t cdrom sg ahci libata > sd_mod scsi_mod crc_t10dif xfs exportfs uhci_hcd ohci_hcd ehci_hcd > [last unloaded: scsi_wait_scan] > Pid: 1317, comm: modprobe Not tainted 2.6.33-rc3 #1 > Call Trace: > �[<ffffffffa027bb25>] ? snd_oss_kernel_minor+0xdf/0x120 [snd] > �[<ffffffff8104338c>] warn_slowpath_common+0x7c/0xa9 > �[<ffffffff81043410>] warn_slowpath_fmt+0x41/0x43 > �[<ffffffffa027bb25>] snd_oss_kernel_minor+0xdf/0x120 [snd] > �[<ffffffffa027bc7e>] snd_register_oss_device+0x2c/0x21a [snd] > �[<ffffffffa0271e1e>] snd_mixer_oss_notify_handler+0xa5/0x2e5 [snd_mixer_oss] > �[<ffffffff81375e00>] ? __mutex_unlock_slowpath+0x5c/0x141 > �[<ffffffff810710d5>] ? trace_hardirqs_on_caller+0x11f/0x14a > �[<ffffffff8107110d>] ? trace_hardirqs_on+0xd/0xf > sdhci-pci 0000:15:00.2: SDHCI controller found [1180:0822] (rev 21) > sdhci-pci 0000:15:00.2: PCI INT C -> GSI 18 (level, low) -> IRQ 18 > �[<ffffffff81375ed3>] ? __mutex_unlock_slowpath+0x12f/0x141 > sdhci-pci 0000:15:00.2: Will use DMA mode even though HW doesn't fully > claim to support it. > Registered led device: mmc0:: > mmc0: SDHCI controller on PCI [0000:15:00.2] using DMA > �[<ffffffffa027628a>] snd_card_register+0x135/0x14b [snd] > �[<ffffffffa0370c88>] volume_init+0x335/0x3d2 [thinkpad_acpi] > �[<ffffffffa037289b>] thinkpad_acpi_module_init+0x61f/0xa4f [thinkpad_acpi] > �[<ffffffffa037227c>] ? thinkpad_acpi_module_init+0x0/0xa4f [thinkpad_acpi] > �[<ffffffff810001fa>] do_one_initcall+0x5f/0x154 > �[<ffffffff8107ff34>] sys_init_module+0xd7/0x234 > �[<ffffffff81002d5b>] system_call_fastpath+0x16/0x1b > ---[ end trace a6d53dc318f09cb5 ]--- > Here is a slightly different trace back of the same problem in case that helps anyone to debug it. Thanks! WARNING: at /home/jkacur/rt.linux.git/sound/core/sound_oss.c:96 snd_oss_kernel_minor+0xdf/0x120 [snd]() Hardware name: 2241B48 BUG? (minor < 0 || minor >= 128) Modules linked in: snd_mixer_oss(+) snd_pcm btusb firewire_ohci sdhci_pci thinkpad_acpi sdhci snd_timer hwmon firewire_core bluetooth e1000e ata_generic mmc_core iTCO_wdt i2c_i801 iTCO_vendor_support ppdev snd tpm_tis i2c_core intel_agp wmi parport_pc parport ricoh_mmc pata_acpi joydev tpm pcspkr video tpm_bios output sr_mod crc_itu_t snd_page_alloc button soundcore cdrom ac battery rfkill sg ahci libata sd_mod scsi_mod crc_t10dif xfs exportfs uhci_hcd ohci_hcd ehci_hcd [last unloaded: scsi_wait_scan] Pid: 1571, comm: modprobe Not tainted 2.6.33-rc3 #1 Call Trace: [<ffffffffa029db25>] ? snd_oss_kernel_minor+0xdf/0x120 [snd] [<ffffffff8104338c>] warn_slowpath_common+0x7c/0xa9 [<ffffffff81043410>] warn_slowpath_fmt+0x41/0x43 [<ffffffffa029db25>] snd_oss_kernel_minor+0xdf/0x120 [snd] [<ffffffffa029dc7e>] snd_register_oss_device+0x2c/0x21a [snd] [<ffffffffa0240e1e>] snd_mixer_oss_notify_handler+0xa5/0x2e5 [snd_mixer_oss] [<ffffffff8137b1e7>] ? sub_preempt_count+0xa3/0xb6 [<ffffffff8137816d>] ? _raw_spin_unlock_irqrestore+0x6b/0x79 [<ffffffff811ba1fe>] ? __up_read+0x7c/0x85 [<ffffffffa024b000>] ? alsa_mixer_oss_init+0x0/0x3e [snd_mixer_oss] [<ffffffffa024b02a>] alsa_mixer_oss_init+0x2a/0x3e [snd_mixer_oss] [<ffffffff810001fa>] do_one_initcall+0x5f/0x154 [<ffffffff8107ff34>] sys_init_module+0xd7/0x234 [<ffffffff81002d5b>] system_call_fastpath+0x16/0x1b cfg80211: Using static regulatory domain info cfg80211: Regulatory domain: 00 (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp) (2402000 KHz - 2472000 KHz @ 40000 KHz), (600 mBi, 2000 mBm) (2457000 KHz - 2482000 KHz @ 20000 KHz), (600 mBi, 2000 mBm) (2474000 KHz - 2494000 KHz @ 20000 KHz), (600 mBi, 2000 mBm) (5170000 KHz - 5250000 KHz @ 40000 KHz), (600 mBi, 2000 mBm) (5735000 KHz - 5835000 KHz @ 40000 KHz), (600 mBi, 2000 mBm) cfg80211: Calling CRDA to update world regulatory domain ---[ end trace bc1eb15b8cb7671c ]--- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: John Kacur on 18 Jan 2010 03:20 On Tue, Jan 12, 2010 at 9:57 AM, Takashi Iwai <tiwai(a)suse.de> wrote: > At Wed, 6 Jan 2010 17:53:24 +0100, > John Kacur wrote: >> >> The following was in my 2.6.33-rc3 dmesg (of course that doesn't mean >> that the problem didn't exist earlier too) >> >> WARNING: at /home/jkacur/rt.linux.git/sound/core/sound_oss.c:96 >> snd_oss_kernel_minor+0xdf/0x120 [snd]() >> Hardware name: 2241B48 >> BUG? (minor < 0 || minor >= 128) >> Modules linked in: snd_mixer_oss thinkpad_acpi(+) sdhci hwmon i2c_i801 >> firewire_ohci snd_pcm mmc_core snd_timer cfg80211 firewire_core btusb >> joydev iTCO_wdt bluetooth ata_generic e1000e i2c_core ppdev snd >> battery ac iTCO_vendor_support parport_pc ricoh_mmc intel_agp >> pata_acpi pcspkr parport tpm_tis video wmi output soundcore button tpm >> rfkill sr_mod tpm_bios snd_page_alloc crc_itu_t cdrom sg ahci libata >> sd_mod scsi_mod crc_t10dif xfs exportfs uhci_hcd ohci_hcd ehci_hcd >> [last unloaded: scsi_wait_scan] >> Pid: 1317, comm: modprobe Not tainted 2.6.33-rc3 #1 >> Call Trace: >> �[<ffffffffa027bb25>] ? snd_oss_kernel_minor+0xdf/0x120 [snd] >> �[<ffffffff8104338c>] warn_slowpath_common+0x7c/0xa9 >> �[<ffffffff81043410>] warn_slowpath_fmt+0x41/0x43 >> �[<ffffffffa027bb25>] snd_oss_kernel_minor+0xdf/0x120 [snd] >> �[<ffffffffa027bc7e>] snd_register_oss_device+0x2c/0x21a [snd] >> �[<ffffffffa0271e1e>] snd_mixer_oss_notify_handler+0xa5/0x2e5 [snd_mixer_oss] >> �[<ffffffff81375e00>] ? __mutex_unlock_slowpath+0x5c/0x141 >> �[<ffffffff810710d5>] ? trace_hardirqs_on_caller+0x11f/0x14a >> �[<ffffffff8107110d>] ? trace_hardirqs_on+0xd/0xf >> sdhci-pci 0000:15:00.2: SDHCI controller found [1180:0822] (rev 21) >> sdhci-pci 0000:15:00.2: PCI INT C -> GSI 18 (level, low) -> IRQ 18 >> �[<ffffffff81375ed3>] ? __mutex_unlock_slowpath+0x12f/0x141 >> sdhci-pci 0000:15:00.2: Will use DMA mode even though HW doesn't fully >> claim to support it. >> Registered led device: mmc0:: >> mmc0: SDHCI controller on PCI [0000:15:00.2] using DMA >> �[<ffffffffa027628a>] snd_card_register+0x135/0x14b [snd] >> �[<ffffffffa0370c88>] volume_init+0x335/0x3d2 [thinkpad_acpi] >> �[<ffffffffa037289b>] thinkpad_acpi_module_init+0x61f/0xa4f [thinkpad_acpi] >> �[<ffffffffa037227c>] ? thinkpad_acpi_module_init+0x0/0xa4f [thinkpad_acpi] >> �[<ffffffff810001fa>] do_one_initcall+0x5f/0x154 >> �[<ffffffff8107ff34>] sys_init_module+0xd7/0x234 >> �[<ffffffff81002d5b>] system_call_fastpath+0x16/0x1b >> ---[ end trace a6d53dc318f09cb5 ]--- > > Looks like the code path from thinkpad-acpi... > > Could you add some printk's in sound/core/sound_oss.c:snd_oss_kernel_minor() > to inspect which values are taken and calculated? > I'm getting a card->number equal to 29, and a dev equal to 0. The case is SNDRV_OSS_DEVICE_TYPE_MIXER: So that does minor = SNDRV_MINOR_OSS(card->number, (dev ? SNDRV_MINOR_OSS_MIXER1 : SNDRV_MINOR_OSS_MIXER)); and according to the formula #define SNDRV_MINOR_OSS(card, dev) (((card) << 4) | (dev)) That works out to 464 which of course is not in the acceptable range between 0 and 128. John -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: John Kacur on 18 Jan 2010 06:40 On Mon, Jan 18, 2010 at 12:28 PM, Takashi Iwai <tiwai(a)suse.de> wrote: > At Mon, 18 Jan 2010 09:15:23 +0100, > John Kacur wrote: >> >> On Tue, Jan 12, 2010 at 9:57 AM, Takashi Iwai <tiwai(a)suse.de> wrote: >> > At Wed, 6 Jan 2010 17:53:24 +0100, >> > John Kacur wrote: >> >> >> >> The following was in my 2.6.33-rc3 dmesg (of course that doesn't mean >> >> that the problem didn't exist earlier too) >> >> >> >> WARNING: at /home/jkacur/rt.linux.git/sound/core/sound_oss.c:96 >> >> snd_oss_kernel_minor+0xdf/0x120 [snd]() >> >> Hardware name: 2241B48 >> >> BUG? (minor < 0 || minor >= 128) >> >> Modules linked in: snd_mixer_oss thinkpad_acpi(+) sdhci hwmon i2c_i801 >> >> firewire_ohci snd_pcm mmc_core snd_timer cfg80211 firewire_core btusb >> >> joydev iTCO_wdt bluetooth ata_generic e1000e i2c_core ppdev snd >> >> battery ac iTCO_vendor_support parport_pc ricoh_mmc intel_agp >> >> pata_acpi pcspkr parport tpm_tis video wmi output soundcore button tpm >> >> rfkill sr_mod tpm_bios snd_page_alloc crc_itu_t cdrom sg ahci libata >> >> sd_mod scsi_mod crc_t10dif xfs exportfs uhci_hcd ohci_hcd ehci_hcd >> >> [last unloaded: scsi_wait_scan] >> >> Pid: 1317, comm: modprobe Not tainted 2.6.33-rc3 #1 >> >> Call Trace: >> >> [<ffffffffa027bb25>] ? snd_oss_kernel_minor+0xdf/0x120 [snd] >> >> [<ffffffff8104338c>] warn_slowpath_common+0x7c/0xa9 >> >> [<ffffffff81043410>] warn_slowpath_fmt+0x41/0x43 >> >> [<ffffffffa027bb25>] snd_oss_kernel_minor+0xdf/0x120 [snd] >> >> [<ffffffffa027bc7e>] snd_register_oss_device+0x2c/0x21a [snd] >> >> [<ffffffffa0271e1e>] snd_mixer_oss_notify_handler+0xa5/0x2e5 [snd_mixer_oss] >> >> [<ffffffff81375e00>] ? __mutex_unlock_slowpath+0x5c/0x141 >> >> [<ffffffff810710d5>] ? trace_hardirqs_on_caller+0x11f/0x14a >> >> [<ffffffff8107110d>] ? trace_hardirqs_on+0xd/0xf >> >> sdhci-pci 0000:15:00.2: SDHCI controller found [1180:0822] (rev 21) >> >> sdhci-pci 0000:15:00.2: PCI INT C -> GSI 18 (level, low) -> IRQ 18 >> >> [<ffffffff81375ed3>] ? __mutex_unlock_slowpath+0x12f/0x141 >> >> sdhci-pci 0000:15:00.2: Will use DMA mode even though HW doesn't fully >> >> claim to support it. >> >> Registered led device: mmc0:: >> >> mmc0: SDHCI controller on PCI [0000:15:00.2] using DMA >> >> [<ffffffffa027628a>] snd_card_register+0x135/0x14b [snd] >> >> [<ffffffffa0370c88>] volume_init+0x335/0x3d2 [thinkpad_acpi] >> >> [<ffffffffa037289b>] thinkpad_acpi_module_init+0x61f/0xa4f [thinkpad_acpi] >> >> [<ffffffffa037227c>] ? thinkpad_acpi_module_init+0x0/0xa4f [thinkpad_acpi] >> >> [<ffffffff810001fa>] do_one_initcall+0x5f/0x154 >> >> [<ffffffff8107ff34>] sys_init_module+0xd7/0x234 >> >> [<ffffffff81002d5b>] system_call_fastpath+0x16/0x1b >> >> ---[ end trace a6d53dc318f09cb5 ]--- >> > >> > Looks like the code path from thinkpad-acpi... >> > >> > Could you add some printk's in sound/core/sound_oss.c:snd_oss_kernel_minor() >> > to inspect which values are taken and calculated? >> > >> >> I'm getting a card->number equal to 29, and a dev equal to 0. > > The card number 29 is very strange. Is it the correct number? > You can see the sound instances in /proc/asound/cards. > >> The case is SNDRV_OSS_DEVICE_TYPE_MIXER: >> So that does minor = SNDRV_MINOR_OSS(card->number, (dev ? >> SNDRV_MINOR_OSS_MIXER1 : SNDRV_MINOR_OSS_MIXER)); >> and according to the formula #define SNDRV_MINOR_OSS(card, >> dev) (((card) << 4) | (dev)) >> That works out to 464 which of course is not in the acceptable range >> between 0 and 128. > > Do you build thinkpad-acpi as a module or built-in? How about the > sound stuff? > > > Takashi > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo(a)vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ > cat /proc/asound/card card0/ card29/ cards [jkacur(a)tycho rt.linux.git]$ cat /proc/asound/cards 0 [Intel ]: HDA-Intel - HDA Intel HDA Intel at 0xfc020000 irq 31 29 [ThinkPadEC ]: ThinkPad EC - ThinkPad Console Audio Control ThinkPad Console Audio Control at EC reg 0x30, fw 7VHT12WW-1.01
From: John Kacur on 18 Jan 2010 09:50 On Mon, 18 Jan 2010, Takashi Iwai wrote: > At Mon, 18 Jan 2010 12:36:38 +0100, > John Kacur wrote: > > > > On Mon, Jan 18, 2010 at 12:28 PM, Takashi Iwai <tiwai(a)suse.de> wrote: > > > At Mon, 18 Jan 2010 09:15:23 +0100, > > > John Kacur wrote: > > >> > > >> On Tue, Jan 12, 2010 at 9:57 AM, Takashi Iwai <tiwai(a)suse.de> wrote: > > >> > At Wed, 6 Jan 2010 17:53:24 +0100, > > >> > John Kacur wrote: > > >> >> > > >> >> The following was in my 2.6.33-rc3 dmesg (of course that doesn't mean > > >> >> that the problem didn't exist earlier too) > > >> >> > > >> >> WARNING: at /home/jkacur/rt.linux.git/sound/core/sound_oss.c:96 > > >> >> snd_oss_kernel_minor+0xdf/0x120 [snd]() > > >> >> Hardware name: 2241B48 > > >> >> BUG? (minor < 0 || minor >= 128) > > >> >> Modules linked in: snd_mixer_oss thinkpad_acpi(+) sdhci hwmon i2c_i801 > > >> >> firewire_ohci snd_pcm mmc_core snd_timer cfg80211 firewire_core btusb > > >> >> joydev iTCO_wdt bluetooth ata_generic e1000e i2c_core ppdev snd > > >> >> battery ac iTCO_vendor_support parport_pc ricoh_mmc intel_agp > > >> >> pata_acpi pcspkr parport tpm_tis video wmi output soundcore button tpm > > >> >> rfkill sr_mod tpm_bios snd_page_alloc crc_itu_t cdrom sg ahci libata > > >> >> sd_mod scsi_mod crc_t10dif xfs exportfs uhci_hcd ohci_hcd ehci_hcd > > >> >> [last unloaded: scsi_wait_scan] > > >> >> Pid: 1317, comm: modprobe Not tainted 2.6.33-rc3 #1 > > >> >> Call Trace: > > >> >> [<ffffffffa027bb25>] ? snd_oss_kernel_minor+0xdf/0x120 [snd] > > >> >> [<ffffffff8104338c>] warn_slowpath_common+0x7c/0xa9 > > >> >> [<ffffffff81043410>] warn_slowpath_fmt+0x41/0x43 > > >> >> [<ffffffffa027bb25>] snd_oss_kernel_minor+0xdf/0x120 [snd] > > >> >> [<ffffffffa027bc7e>] snd_register_oss_device+0x2c/0x21a [snd] > > >> >> [<ffffffffa0271e1e>] snd_mixer_oss_notify_handler+0xa5/0x2e5 [snd_mixer_oss] > > >> >> [<ffffffff81375e00>] ? __mutex_unlock_slowpath+0x5c/0x141 > > >> >> [<ffffffff810710d5>] ? trace_hardirqs_on_caller+0x11f/0x14a > > >> >> [<ffffffff8107110d>] ? trace_hardirqs_on+0xd/0xf > > >> >> sdhci-pci 0000:15:00.2: SDHCI controller found [1180:0822] (rev 21) > > >> >> sdhci-pci 0000:15:00.2: PCI INT C -> GSI 18 (level, low) -> IRQ 18 > > >> >> [<ffffffff81375ed3>] ? __mutex_unlock_slowpath+0x12f/0x141 > > >> >> sdhci-pci 0000:15:00.2: Will use DMA mode even though HW doesn't fully > > >> >> claim to support it. > > >> >> Registered led device: mmc0:: > > >> >> mmc0: SDHCI controller on PCI [0000:15:00.2] using DMA > > >> >> [<ffffffffa027628a>] snd_card_register+0x135/0x14b [snd] > > >> >> [<ffffffffa0370c88>] volume_init+0x335/0x3d2 [thinkpad_acpi] > > >> >> [<ffffffffa037289b>] thinkpad_acpi_module_init+0x61f/0xa4f [thinkpad_acpi] > > >> >> [<ffffffffa037227c>] ? thinkpad_acpi_module_init+0x0/0xa4f [thinkpad_acpi] > > >> >> [<ffffffff810001fa>] do_one_initcall+0x5f/0x154 > > >> >> [<ffffffff8107ff34>] sys_init_module+0xd7/0x234 > > >> >> [<ffffffff81002d5b>] system_call_fastpath+0x16/0x1b > > >> >> ---[ end trace a6d53dc318f09cb5 ]--- > > >> > > > >> > Looks like the code path from thinkpad-acpi... > > >> > > > >> > Could you add some printk's in sound/core/sound_oss.c:snd_oss_kernel_minor() > > >> > to inspect which values are taken and calculated? > > >> > > > >> > > >> I'm getting a card->number equal to 29, and a dev equal to 0. > > > > > > The card number 29 is very strange. Is it the correct number? > > > You can see the sound instances in /proc/asound/cards. > > > > > >> The case is SNDRV_OSS_DEVICE_TYPE_MIXER: > > >> So that does minor = SNDRV_MINOR_OSS(card->number, (dev ? > > >> SNDRV_MINOR_OSS_MIXER1 : SNDRV_MINOR_OSS_MIXER)); > > >> and according to the formula #define SNDRV_MINOR_OSS(card, > > >> dev) (((card) << 4) | (dev)) > > >> That works out to 464 which of course is not in the acceptable range > > >> between 0 and 128. > > > > > > Do you build thinkpad-acpi as a module or built-in? How about the > > > sound stuff? > > > > > > > > > Takashi > > > -- > > > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > > > the body of a message to majordomo(a)vger.kernel.org > > > More majordomo info at http://vger.kernel.org/majordomo-info.html > > > Please read the FAQ at http://www.tux.org/lkml/ > > > > > > > cat /proc/asound/card > > card0/ card29/ cards > > [jkacur(a)tycho rt.linux.git]$ cat /proc/asound/cards > > 0 [Intel ]: HDA-Intel - HDA Intel > > HDA Intel at 0xfc020000 irq 31 > > 29 [ThinkPadEC ]: ThinkPad EC - ThinkPad Console Audio Control > > ThinkPad Console Audio Control at EC reg 0x30, > > fw 7VHT12WW-1.01 > > OK, then the ALSA core driver behavior is correct. But, another > question is why such a strange number is passed. Let me see the > code... > > static int alsa_index = ~((1 << (SNDRV_CARDS - 3)) - 1); /* last three slots */ > > So, this behavior is intentional, too. Okay, it took me a little bit to work it out that with SNDRV_CARDS = 32 the above is - the 29th bit. Kinda cryptic no? Also, it does seem like the code intentionally makes use of that, at first I was concerned you would be turning of a debug message for one use case, but it seems consistent. Even though the code looks obviously okay, I applied your patch, recompiled and booted, and the false message is gone. Acked-by: John Kacur <jkacur(a)redhat.com> Are you going to push that to Linus for 2.6.33? Thank You. > > In short, the warning message is just superfluous. > The patch below fixes the issue. > > > thanks, > > Takashi > > --- > diff --git a/sound/core/sound_oss.c b/sound/core/sound_oss.c > index 7fe1226..0c164e5 100644 > --- a/sound/core/sound_oss.c > +++ b/sound/core/sound_oss.c > @@ -93,7 +93,7 @@ static int snd_oss_kernel_minor(int type, struct snd_card *card, int dev) > default: > return -EINVAL; > } > - if (snd_BUG_ON(minor < 0 || minor >= SNDRV_OSS_MINORS)) > + if (minor < 0 || minor >= SNDRV_OSS_MINORS) > return -EINVAL; > return minor; > } >
|
Pages: 1 Prev: [PATCH 1/1] NET: atlx, fix memory leak Next: enhanced reimplemented of the kfifo API |