|
Bugzilla – Full Text Bug Listing |
| Summary: | Unknown symbols listed when loading snd_hda_core | ||
|---|---|---|---|
| Product: | [openSUSE] openSUSE Tumbleweed | Reporter: | Freek de Kruijf <freek> |
| Component: | Basesystem | Assignee: | dracut maintainers <dracut-maintainers> |
| Status: | RESOLVED FIXED | QA Contact: | E-mail List <qa-bugs> |
| Severity: | Normal | ||
| Priority: | P5 - None | CC: | daniel, freek, tiwai, yast2-maintainers |
| Version: | Current | ||
| Target Milestone: | --- | ||
| Hardware: | Other | ||
| OS: | Other | ||
| Whiteboard: | |||
| Found By: | --- | Services Priority: | |
| Business Priority: | Blocker: | --- | |
| Marketing QA Status: | --- | IT Deployment: | --- |
| Attachments: |
output of dmesg right after boot
output of hwinfo right after boot output of rpa -qa | sort output of lsinitrd dracut-verbose.log dracut-debug.log.gz |
||
It looks like your system is broken :) At least, it means that some modules like snd-pcm are missing on the system. Is this appearing on initrd? If yes, how is the module put into initrd without resolving the full dependency? (In reply to Takashi Iwai from comment #1) > It looks like your system is broken :) > At least, it means that some modules like snd-pcm are missing on the system. > > Is this appearing on initrd? If yes, how is the module put into initrd > without resolving the full dependency? I don't know about initrd. Maybe it is loaded in the boot process. # lsmod | grep pcm snd_pcm 143360 5 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_core snd_timer 36864 2 snd_seq,snd_pcm snd 98304 15 snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_timer,snd_pcm It looks like snd_pcm is loaded. Hrm, the information is too little for further analysis. Does this happen without any KMP? In anyway, please give the full dmesg output after boot, as well as the full hwinfo output. Also, make sure that it's not some side-effect of disk out-of-space or such. Created attachment 793843 [details]
output of dmesg right after boot
output of dmesg right after boot
Created attachment 793844 [details]
output of hwinfo right after boot
output of hwinfo right after boot
(In reply to Takashi Iwai from comment #3) > Hrm, the information is too little for further analysis. > > Does this happen without any KMP? Don't know what KMP is. > In anyway, please give the full dmesg output after boot, as well as the full > hwinfo output. See attachments. > Also, make sure that it's not some side-effect of disk out-of-space or such. System runs smoothly otherwise. / still has 3.8G free out of 20G System does not use btrfs. swap uses 64M out of 8190G (In reply to Freek de Kruijf from comment #6) > (In reply to Takashi Iwai from comment #3) > > Hrm, the information is too little for further analysis. > > > > Does this happen without any KMP? > > Don't know what KMP is. It's "kernel module package". Could you give the output of "rpm -qa | sort"? (Don't paste but attach the text file to Bugzilla). > > In anyway, please give the full dmesg output after boot, as well as the full > > hwinfo output. > > See attachments. > > > Also, make sure that it's not some side-effect of disk out-of-space or such. > > System runs smoothly otherwise. The problem is that initrd contains snd-hda-core module unnecessarily by some reason. This happens when any extra kernel module package is involved with initrd, or some dependency is present, or a bug of dracut. Could you give the output of lsinitrd, too? Created attachment 793892 [details]
output of rpa -qa | sort
output of rpa -qa | sort
Created attachment 793893 [details]
output of lsinitrd
output of lsinitrd
> Could you give the output of "rpm -qa | sort"? (Don't paste but attach the > text file to Bugzilla). See attachment. > Could you give the output of lsinitrd, too? See attachment. Thanks! Judging from your logs, there is no KMP installed, and indeed the initrd contains snd-hda-intel module and co unnecessarily (and insufficiently). If you didn't set anything special, I'd guess that must be a bug of dracut that brings the unwanted module into initrd. Reassigned to dracut maintainer. I cannot reproduce this here, so I need some more help from your end. Please run sudo dracut -f --verbose 1 > dracut-verbose.log 2>&1 sudo dracut -f --debug 1 > dracut-debug.log 2>&1 and attach both files. Then I can see what causes dracut to include the spurious module on your machine. Created attachment 795279 [details]
dracut-verbose.log
Created attachment 795280 [details]
dracut-debug.log.gz
16584-Here is what's happening (lines 16584ff from the debug log): //usr/lib/dracut/modules.d/00systemd/module-setup.sh@173(install): modules_load_get /etc/modules-load.d ... //usr/lib/dracut/modules.d/00systemd/module-setup.sh@144(modules_load_get): [[ -f /etc/modules-load.d/yast.conf ]] //usr/lib/dracut/modules.d/00systemd/module-setup.sh@145(modules_load_get): read _line //usr/lib/dracut/modules.d/00systemd/module-setup.sh@146(modules_load_get): case $_line in //usr/lib/dracut/modules.d/00systemd/module-setup.sh@152(modules_load_get): echo snd-hda-intel //usr/lib/dracut/modules.d/00systemd/module-setup.sh@145(modules_load_get): read _line //usr/lib/dracut/modules.d/00systemd/module-setup.sh@145(modules_load_get): '[' -n '' ']' /usr/lib/dracut/modules.d/00systemd/module-setup.sh@173(install): _mods='sg snd-hda-intel' ... So for some reason, YaST decided it was a good idea to load snd-hda-intel.ko at boot time, and dracut obeyed as its supposed to under systemd regime. I can't explain why YaST does this, so let's ask the maintainers. The YaST issue is tracked in bug 1116849. In this bug, let's track about the incomplete modules in initrd. Preliminary analysis of the problem: This is what dracut runs to effectively determine the dependencies (see for_each_kmod_dep() in /usr/lib/dracut/dracut-init.sh): $ sudo modprobe snd-hda-intel --ignore-install --show-depends insmod /lib/modules/4.12.14-lp150.12.25-default/kernel/sound/soundcore.ko install /sbin/install-snd-module snd $CMDLINE_OPTS insmod /lib/modules/4.12.14-lp150.12.25-default/kernel/sound/core/snd-timer.ko install /sbin/install-snd-module snd-pcm $CMDLINE_OPTS insmod /lib/modules/4.12.14-lp150.12.25-default/kernel/sound/core/snd-hwdep.ko insmod /lib/modules/4.12.14-lp150.12.25-default/kernel/sound/hda/snd-hda-core.ko insmod /lib/modules/4.12.14-lp150.12.25-default/kernel/sound/pci/hda/snd-hda-codec.ko insmod /lib/modules/4.12.14-lp150.12.25-default/kernel/sound/pci/hda/snd-hda-intel.ko Then it discards all lines not starting in insmod, so snd and snd-pcm never get added to initrd because they are using a wrapper script that calls insmod/modprobe immediately rather than neatly printing the dependencies. install-snd-module seems to be SUSE specific belonging to the alsa package and probably specific to SUSE honoring the settings in /etc/sysconfig/sound. This is probably your domain Takashi. Any suggestion how dracut could add snd and snd-pcm short of hardcoding knowledge about install-snd-module into dracut? and what about the logic this script runs? I guess initrd needs to adhere to /etc/sysconfig/sound as well? Thanks, that explains. The reason for the script is to install the OSS emulation and the sequencer modules automatically only if user enables it in /etc/sysconfig/sound. Basically it's for assuring the consistent migration behavior. If this can be implemented in a less-hackish way, I'd love to change this. I guess the problem is that files in /etc/sysconfig usually are supposed to take effect without more action. Otherwise, I would have proposed to either force-load or blacklist the modules, but that needs some script running after editing the file. For this particular bug, maybe not much. I'm going to rethink and cleanup the current sound module loading mechanism, in anyway, but the primary culprit was the superfluous /etc/module-load.d/yast.conf, and this shouldn't happen in normal situations any longer. Ok, feel free to proceed with this bug as you like, but if you want to keep it open, please reassign. If I can lend a hand: any time. Takashi, do you want it for tracking purposes? Otherwise I'd proceed to close. Thanks. Feel free to close. It's a rare case with the persistent old setup, so maybe a one-off kind of things. Closing as fixed as per #c21. |
Below is part of dmesg output showing unknown symbols listed when loading snd_hda_core [ 5.700565] snd_hda_core: Unknown symbol snd_pcm_add_chmap_ctls (err -2) [ 5.718744] ACPI: bus type USB registered [ 5.718771] usbcore: registered new interface driver usbfs [ 5.718781] usbcore: registered new interface driver hub [ 5.718810] usbcore: registered new device driver usb [ 5.719488] snd_hda_core: Unknown symbol snd_sgbuf_get_chunk_size (err -2) [ 5.719614] snd_hda_core: Unknown symbol snd_pcm_format_width (err -2) [ 5.754088] snd_hda_core: Unknown symbol snd_pcm_add_chmap_ctls (err -2) [ 5.758960] snd_hda_core: Unknown symbol snd_sgbuf_get_chunk_size (err -2) [ 5.759085] snd_hda_core: Unknown symbol snd_pcm_format_width (err -2) [ 5.780317] snd_hda_core: Unknown symbol snd_pcm_add_chmap_ctls (err -2) [ 5.784669] snd_hda_core: Unknown symbol snd_sgbuf_get_chunk_size (err -2) [ 5.784884] snd_hda_core: Unknown symbol snd_pcm_format_width (err -2) [ 5.798350] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver [ 5.799080] ehci-pci: EHCI PCI platform driver [ 5.799843] snd_hda_core: Unknown symbol snd_pcm_add_chmap_ctls (err -2) [ 5.799884] snd_hda_core: Unknown symbol snd_sgbuf_get_chunk_size (err -2) [ 5.800422] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver [ 5.800496] snd_hda_core: Unknown symbol snd_pcm_format_width (err -2) This does not seem to have any effect on producing sound. However sound goes via HDMI to speakers in the display and is not using the separate sound hardware on the system board. See below the output of hwinfo --sound # hwinfo --sound 10: PCI 500.1: 0403 Audio device [Created at pci.386] Unique ID: 5yAR.K3+3qP5NfZ8 Parent ID: _Znp.ZJmKoWxd6BF SysFS ID: /devices/pci0000:00/0000:00:02.0/0000:05:00.1 SysFS BusID: 0000:05:00.1 Hardware Class: sound Model: "ATI Cedar HDMI Audio [Radeon HD 5400/6300/7300 Series]" Vendor: pci 0x1002 "ATI Technologies Inc" Device: pci 0xaa68 "Cedar HDMI Audio [Radeon HD 5400/6300/7300 Series]" SubVendor: pci 0x1043 "ASUSTeK Computer Inc." SubDevice: pci 0xaa68 Driver: "snd_hda_intel" Driver Modules: "snd_hda_intel" Memory Range: 0xfe9bc000-0xfe9bffff (rw,non-prefetchable) IRQ: 35 (203 events) Module Alias: "pci:v00001002d0000AA68sv00001043sd0000AA68bc04sc03i00" Driver Info #0: Driver Status: snd_hda_intel is active Driver Activation Cmd: "modprobe snd_hda_intel" Config Status: cfg=no, avail=yes, need=no, active=unknown Attached to: #32 (PCI bridge) 29: PCI 14.2: 0403 Audio device [Created at pci.386] Unique ID: 5Dex.BDUuYMOWyw7 SysFS ID: /devices/pci0000:00/0000:00:14.2 SysFS BusID: 0000:00:14.2 Hardware Class: sound Model: "ATI SBx00 Azalia (Intel HDA)" Vendor: pci 0x1002 "ATI Technologies Inc" Device: pci 0x4383 "SBx00 Azalia (Intel HDA)" SubVendor: pci 0x1002 "ATI Technologies Inc" SubDevice: pci 0x4383 Revision: 0x40 Memory Range: 0xfe6f8000-0xfe6fbfff (rw,non-prefetchable) IRQ: 10 (no events) Module Alias: "pci:v00001002d00004383sv00001002sd00004383bc04sc03i00" Driver Info #0: Driver Status: snd_hda_intel is active Driver Activation Cmd: "modprobe snd_hda_intel" Config Status: cfg=yes, avail=yes, need=no, active=unknown